Class MySQLIdentityColumnMaxValueIncrementer

All Implemented Interfaces:
InitializingBean, DataFieldMaxValueIncrementer

public class MySQLIdentityColumnMaxValueIncrementer extends AbstractIdentityColumnMaxValueIncrementer
DataFieldMaxValueIncrementer that increments the maximum counter value of an auto-increment column of a given MySQL table.

The sequence is kept in a table. The storage engine used by the sequence table must be InnoDB in MySQL 8.0 or later since the current maximum auto-increment counter is required to be persisted across restarts of the database server.

Example:

 create table tab_sequence (`id` bigint unsigned primary key auto_increment);

If cacheSize is set, the intermediate values are served without querying the database. If the server or your application is stopped or crashes or a transaction is rolled back, the unused values will never be served. The maximum hole size in numbering is consequently the value of cacheSize.

Since:
6.1.2
Author:
Henning Pƶttker