Package io.ebean.config.dbplatform
Class SequenceBatchIdGenerator
java.lang.Object
io.ebean.config.dbplatform.SequenceIdGenerator
io.ebean.config.dbplatform.SequenceBatchIdGenerator
- All Implemented Interfaces:
PlatformIdGenerator
- Direct Known Subclasses:
DB2SequenceIdGenerator,H2SequenceIdGenerator,OracleSequenceIdGenerator,PostgresSequenceIdGenerator
Database sequence based IdGenerator using Sequence Step 1 but batch fetch many sequence values.
-
Field Summary
Fields inherited from interface io.ebean.config.dbplatform.PlatformIdGenerator
AUTO_UUID -
Constructor Summary
ConstructorsConstructorDescriptionSequenceBatchIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) Construct where batchSize is the sequence step size. -
Method Summary
Modifier and TypeMethodDescriptionvoidpreAllocateIds(int requestSize) If allocateSize is large load some sequences in a background thread.Methods inherited from class io.ebean.config.dbplatform.SequenceIdGenerator
getName, getSql, isDbSequence, nextId
-
Constructor Details
-
SequenceBatchIdGenerator
public SequenceBatchIdGenerator(BackgroundExecutor be, DataSource ds, String seqName, int batchSize) Construct where batchSize is the sequence step size.
-
-
Method Details
-
preAllocateIds
If allocateSize is large load some sequences in a background thread.For example, when inserting a bean with a cascade on a OneToMany with many beans Ebean can call this to ensure .
- Specified by:
preAllocateIdsin interfacePlatformIdGenerator- Overrides:
preAllocateIdsin classSequenceIdGenerator
-