Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Data Model Questions

Transactions And InnoDB


3 Posts   1370 Views


13 July 2010 at 10:53pm Forum Moderator, 1796 Posts


I am about to update all my DataObjects with the following...

static $create_table_options = array('MySQLDatabase' => 'ENGINE=InnoDB');

(After reading...

This is because I need to run scripts on my database and the best way of doing that is with transactions in the first place... i.e.

use test;
SELECT count(*) FROM dummy;
INSERT INTO dummy (ClassName) VALUES ('Dummy');
SELECT count(*) FROM dummy;

Is there any disadvantage to change the table types to 'InnoDB'? Will I lose any silver stripe functionality?



13 July 2010 at 11:22pm Community Member, 78 Posts


The main feature you'll lose is full text search. If that is an issue for you, but you also can't do without transactions, you could consider using the sphinx module, which interfaces SilverStripe to sphinx search. Takes a little configuration, but works well once up and running.



13 July 2010 at 11:52pm Forum Moderator, 1796 Posts

Hi Mark,

Thanks for that. I am unsure what full text search is - would I have something in my config to enable it?

As long as I can still use the basic search - which I have customised to add in some data objects in Page.php to add in some dynamic pages based on data I am happy.

function results($data, $form){

I've just looked at your sphinx module and it looks very nice - I was going to add searching PDFs soon, but this will do that and much more!

Thanks again,