Currently hibernate core suspends the currently running application transaction and starts another transaction when the available unique identifiers are exhausted.
To improve on performance at the managable cost of application execution when concurrent changes to sequences occur make the work occur in the currently running transaction. This will reduce the total number of transactions necessary by the system.
All environments. Any data-store.