This is a regression from H4.
1. EntityVerifyVersionProcess#doBeforeTransactionCompletion throws OptimisticLockException
2. ActionQueue.BeforeTransactionCompletionProcessQueue#beforeTransactionCompletion re-throws it
3. JtaTransactionCoordinatorImpl#beforeCompletion calls physicalTransactionDelegate.markRollbackOnly()
There is nothing in the log and the exception is gone. All you get is a rolled back transaction.
(I've noticed this new behavior in other cases as well but at least with a SQLExceptionHelperManagerUtilSpringSpringSpringFactory thing logging e.g. a ConstraintViolationException. Logging and throwing exceptions is problematic in production, of course.)