Spring Boot - H2 database - inkrementowane ID o 30 po zatrzymaniu aplikacji

0

Witam
Od pewnego czasu zauważyłem dziwną przypadłość zwiększającego się ID w bazie danych H2. Po zatrzymaniu aplikacji i ręcznym insertowaniu w zakładce Database (Intellij IDEA Ultimate) - wstawione wiersze dostają ID od 33, a wcześnie w bazie dodane były tylko 3 rekordy. Po ponownym włączeniu aplikacji, jej zamknięciu i ponownym ręcznym dodaniu rekordu ID są zwiększone do 65 i tak o ok. 32 więcej co restart (bez wstawiania niczego podczas działania aplikacji). O co tu chodzi?
Id w encji ustawione jako: @Id i @GeneratedValue(strategy = GenerationType.IDENTITY). Nie ma nigdzie ustawianych żadnych sekwencji. Czysta aplikacja, bez żadnej logiki.

edit: zauważyłem, że pierwszym "nowym" ID jest wartość dokładnie o 32 większa od pierwszej "poprzedniej" wartości ID

1

Hibernate, aby ograniczyć odpytania bazy i sekwencji, generuje sobie na start N idków i trzyma w pamięci na czarna godzinę.

0
Charles_Ray napisał(a):

Hibernate, aby ograniczyć odpytania bazy i sekwencji, generuje sobie na start N idków i trzyma w pamięci na czarna godzinę.

W takim razie dla innych baz danych powinno być podobnie, a nie tylko dla H2?

0
Charles_Ray napisał(a):

A sprawdzałeś na innych bazach? Więcej detali tutaj:
https://vladmihalcea.com/the-hilo-algorithm/
https://docs.oracle.com/cd/B28359_01/server.111/b28310/views002.htm#ADMIN11801

Na innych bazach nie miałem podobnego problemu. Dzięki za odpowiedź.

1 użytkowników online, w tym zalogowanych: 0, gości: 1