By default, Hibernate caching is disabled by these parameters:
<property name="hibernate.cache.use_second_level_cache" value="false"/>
<property name="hibernate.cache.use_query_cache" value="false"/>
The Hibernate caching parameters are well described in Hibernate documentation. There is no forced injection of eXo cache provider any more. This can be configured via standard hibernate properties (in xml) like any other hibernate settings.
Also, it is possible to configure size of eXoCache instances via cache service configuration. Every region (eXoCache instance) created by RegionFactory has its own prefix depending on its type. All prefixes are:
So, names of eXoCache instances will look like "ExoCacheRegionFactory-Entity-org.exoplatform.services.organization.impl.GroupImpl". Details about Cache service configuration can be found in eXo Cache section.
Hibernate's second level cache is disabled by default. In case you want to turn it on, you must explicitly set the "hibernate.cache.use_second_level_cache" property to "true".
If you use DB2, you can get an error of SQLCODE=-668, SQLSTATE=57016, SQLERRMC=7 type when Hibernate tries to migrate the table structure. To workaround this issue, you only need to call the reorg table exo_user command.