Es posible que desee intentar usar un Batcher personalizado configurando la propiedad hibernate.jdbc.factory_class. Asegurarse de que hibernate no verifique el recuento de actualizaciones de las operaciones por lotes podría solucionar su problema, puede lograrlo haciendo que su Batcher personalizado amplíe la clase BatchingBatcher y luego anulando el método doExecuteBatch(...) para que se vea así:
@Override
protected void doExecuteBatch(PreparedStatement ps) throws SQLException, HibernateException {
if ( batchSize == 0 ) {
log.debug( "no batched statements to execute" );
}
else {
if ( log.isDebugEnabled() ) {
log.debug( "Executing batch size: " + batchSize );
}
try {
// checkRowCounts( ps.executeBatch(), ps );
ps.executeBatch();
}
catch (RuntimeException re) {
log.error( "Exception executing batch: ", re );
throw re;
}
finally {
batchSize = 0;
}
}
}
Tenga en cuenta que el nuevo método no verifica los resultados de ejecutar las declaraciones preparadas. Tenga en cuenta que hacer este cambio podría afectar a Hibernate de alguna manera inesperada (o tal vez no).