It would appear that JDBC batching, when using Optimistic locking and Hibernate Versioning cannot work.
If you look at AbstractEntityPersister.isBatchable it evaluates 3 terms to determine is JDBC batching (addBatch/executeBatch) should be used, true on any of the 3 terms enables batching
The first term is presumably is that pessimistic locking is being used.
The third term indicated that versioning can be used as hibernate.jdbc.batch_versioned_data has been set to true indicating that the driver return correct row counts for executeBatch.
I presume the second term "should" return true if the entity is versioned and hibernate versioning is being used, it does not.
UNLESS the intention was to explicitly disable batching if Hibernate Versioning is being used.
All Hibernate versions, all environments