There is no auto-commit in MyISAM tables, because MyISAM doesn't support transactions at all! All transaction statements are ignored by this storage engine. That is why rollback does nothing. InnoDB has more advantages to MyISAM than transaction support. It also does row locking (MyISAM has only table locking) on read/write operations so it is faster when there is a lot of concurent read and write operations. The problem is that it needs more RAM and a lot of hosting providers turn off InnoDB storage engine in their MySQL servers (on shared hosting plans) to minimize memory usage.
Anyway, checking with 'validate' => 'only' before the main saveAll is the best idea :), because it is DB independent. On 15 Cze, 19:28, francky06l <[EMAIL PROTECTED]> wrote: > I do not know if it's a bug, I do have transactional calls as well but > I use innoDb type table. It seems that the select is triggering an > auto-commit on ISAM. I am not sure actually, but try setting your > table as innoDb and check if you get the same result. > Maybe you could also try to validate all instead of first, I am also > doing something like this in 2 steps, first is to call saveAll with > validate => only and then call saveAll (for specific purpose). > hth > > On Jun 15, 3:49 pm, Jaime <[EMAIL PROTECTED]> wrote: > > > Thanks francky06l, > > > But "atomic" is set to true by default (according to the > > documentation), and I have already traced the DB calls, as you can > > read above. The ROLLBACK is being called, but it's not affecting the > > INSERT operation, because a SELECT is being made after. > > > Is that a bug? --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "CakePHP" group. To post to this group, send email to cake-php@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cake-php?hl=en -~----------~----~----~----~------~----~------~--~---