Sounds like somewhere in the code the entity manager is being modified to manual flush mode.
I would like check if any code uses flush mode manual, the setting in components.xml and all pages.xml to check to ensure nobody has done a begin conversation with manual flush mode.
Are you dependent on any jars with components that might modify the flush mode?
Hmm I don't think it's possible since we have the same code in development and production environment.
In JPA 1.0 and 2.0 there are two flush modes (AUTO and COMMIT). MANUAL flush mode is a Hibernate extension.
If you need to write em.flush() to synchronize PC changes with db, then most likely you have MANUAL flush mode enabled somehow...