- Expediere
- 20 aprilie 2026 la 20:59 UTC
- Autor
- Kamo
- Comite
- ea4a85b
Hibernate @Enumerated (EnumType.ORDINAL) scrie/citește declarația-indexul Enum. Atunci când o valoare de tip RolRight este eliminată (de exemplu, MANAGE USERS, id=19), fiecare intrare ulterioară se schimbă ordinal în jos de unul în timp ce getId() rămâne pus crearea unei divergențe tăcute. În această bază de coduri SQL upsert brut *************** a scris mereu getId (), asa ca dupa MANAGE USERS a fost eliminat + noi drepturi adăugate DB deţine acum valorile de dreapta tip (ex. 136) care depășesc RolRightType. values () length, care cauzează hibernare ArrayIndexOutOfBoundsException on reading and crash startup. Introduceți RolRightTypeIdConverter - Nu. Integer>) că excursii rotunde prin getId(). Se aplică la toate cele cinci tabele din dreapta mapate ORDINAL: - OrgRoleRight - Dreapta Membru - JobTitlRight - Department Right - Drepturile Membrilor Aplicate Id-urile necunoscute se convertesc înapoi în nul aşa că ************* le poate curăţa pe următoarea cizmă mai degrabă decât crashing. Date privind coloana deja se potrivește getId() (asta este ceea ce introduceIfAbsent scrie), astfel încât nici o migrare este necesar .