Como mencioné en mi tercera actualización, JPA estaba "obteniendo 50 ID" de la secuencia por adelantado y contándolos en la memoria para mayor eficiencia.
Este comportamiento está especificado por javax.persistence.SequenceGenerator.allocationSize
que por defecto es 50.
Esto no es nada intuitivo para mí, u otros , ya que se supone que mi secuencia de base de datos de Oracle define este comportamiento y 50 no es un valor predeterminado estándar allí.
La solución rápida y sucia fue especificar allocationSize=1
:
@SequenceGenerator(name = "generator", sequenceName = "MY_SEQ",
allocationSize = 1)
Ahora la secuencia de Oracle se incrementa para cada inserción.