Obviously, there is plenty out there about MyISAM vs InnoDB engine selection, but I couldn’t find anything specific to JPA2.
Is it possible to use a MyISAM engine together with java persistence API, and still have transaction support? Or does it rely on the RDBMS to provide rollback / commit functionality?
Are there other (non-obvious) factors that need to be considered? What about @Cascade?
I found this posting, which makes a pretty good case for using transactional RDBMS backends.
I managed to reproduce the behaviour:
With MyISAM, the entity will remain created. With InnoDB, the entity is created, but then rolled back. So even though I haven’t been able to find something official, I am convinced that a transactional backend is required if one expects container-provided transactions to work.