From 8ad487ba67b17d5a5aa03cd4c57ae71255814d69 Mon Sep 17 00:00:00 2001 From: Remy Vaartjes Date: Mon, 16 Feb 2026 14:45:37 +0100 Subject: [PATCH 1/3] Remove MyISAM requirement from docs Remove MyISAM requirement from docs. This is no longer needed with newer versions of InnoDB --- .../12_Search/02_FulltextSearch.md | 26 ------------------- 1 file changed, 26 deletions(-) diff --git a/en/02_Developer_Guides/12_Search/02_FulltextSearch.md b/en/02_Developer_Guides/12_Search/02_FulltextSearch.md index 1115c5107..dcea55536 100644 --- a/en/02_Developer_Guides/12_Search/02_FulltextSearch.md +++ b/en/02_Developer_Guides/12_Search/02_FulltextSearch.md @@ -10,28 +10,6 @@ Fulltext search allows advanced search criteria for searching words within a tex Fulltext search can be achieved using the built-in [MySQLDatabase](api:SilverStripe\ORM\Connect\MySQLDatabase) class a more powerful wrapper for Fulltext search is provided through a module. -## Adding fulltext support to `MySQLDatabase` - -The [MySQLDatabase](api:SilverStripe\ORM\Connect\MySQLDatabase) class defaults to creating tables using the InnoDB storage engine. As Fulltext search in MySQL -requires the MyISAM storage engine, any DataObject you wish to use with Fulltext search must be changed to use MyISAM -storage engine. - -You can do so by adding this static variable to your class definition: - -```php -namespace App\Model; - -use SilverStripe\ORM\Connect\MySQLSchemaManager; -use SilverStripe\ORM\DataObject; - -class MyDataObject extends DataObject -{ - private static $create_table_options = [ - MySQLSchemaManager::ID => 'ENGINE=MyISAM', - ]; -} -``` - The [FulltextSearchable](api:SilverStripe\ORM\Search\FulltextSearchable) extension will add the correct `Fulltext` indexes to the data model. > [!CAUTION] @@ -65,10 +43,6 @@ class SearchableDataObject extends DataObject 'columns' => ['Title', 'Content'], ], ]; - - private static $create_table_options = [ - MySQLSchemaManager::ID => 'ENGINE=MyISAM', - ]; } ``` From 746c4d2f05fc7f70470f3352bfee178d8c8a8bd7 Mon Sep 17 00:00:00 2001 From: Remy Vaartjes Date: Wed, 18 Feb 2026 10:13:32 +0100 Subject: [PATCH 2/3] Fixes CI-lint --- en/02_Developer_Guides/12_Search/02_FulltextSearch.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/en/02_Developer_Guides/12_Search/02_FulltextSearch.md b/en/02_Developer_Guides/12_Search/02_FulltextSearch.md index dcea55536..40a76dc72 100644 --- a/en/02_Developer_Guides/12_Search/02_FulltextSearch.md +++ b/en/02_Developer_Guides/12_Search/02_FulltextSearch.md @@ -17,7 +17,7 @@ The [FulltextSearchable](api:SilverStripe\ORM\Search\FulltextSearchable) extensi > records and cannot easily be adapted to include custom `DataObject` instances. To include your custom objects in the > default site search, have a look at those extensions and modify as required. -### Fulltext filter +## Fulltext filter Silverstripe CMS provides a [FulltextFilter](api:SilverStripe\ORM\Filters\FulltextFilter) which you can use to perform custom fulltext searches on [DataList](api:SilverStripe\ORM\DataList)s. @@ -49,7 +49,7 @@ class SearchableDataObject extends DataObject Performing the search: ```php -use App\Model\SearchableDataOBject; +use App\Model\SearchableDataObject; SearchableDataObject::get()->filter('SearchFields:Fulltext', 'search term'); ``` From c3af6a55353c0dc4385931ea903ff71209846248 Mon Sep 17 00:00:00 2001 From: Remy Vaartjes Date: Wed, 18 Feb 2026 10:15:42 +0100 Subject: [PATCH 3/3] Fixes CI-lint --- en/02_Developer_Guides/12_Search/02_FulltextSearch.md | 1 - 1 file changed, 1 deletion(-) diff --git a/en/02_Developer_Guides/12_Search/02_FulltextSearch.md b/en/02_Developer_Guides/12_Search/02_FulltextSearch.md index 40a76dc72..8890a92c4 100644 --- a/en/02_Developer_Guides/12_Search/02_FulltextSearch.md +++ b/en/02_Developer_Guides/12_Search/02_FulltextSearch.md @@ -27,7 +27,6 @@ Example DataObject: ```php namespace App\Model; -use SilverStripe\ORM\Connect\MySQLSchemaManager; use SilverStripe\ORM\DataObject; class SearchableDataObject extends DataObject