Como mencionei na minha terceira atualização, o JPA estava "buscando 50 ids" da sequência antecipadamente e contando-os na memória para eficiência.
Esse comportamento é especificado por
javax.persistence.SequenceGenerator.allocationSize
cujo padrão é 50. Isso não é nada intuitivo para mim, ou outros , já que minha sequência de banco de dados Oracle deve definir esse comportamento e 50 não é um padrão padrão lá.
A solução rápida e suja foi especificar
allocationSize=1
:@SequenceGenerator(name = "generator", sequenceName = "MY_SEQ",
allocationSize = 1)
Agora a sequência Oracle é incrementada para cada inserção.