Rendere RoleRightsSyncService completamente self-healing su ogni boot

FeatureSecurityService
Spegnimento
20 aprile 2026 alle ore 20:23 UTC
Autore
Kamo
Impegno
3609afb

Aggiungere o rimuovere un RoleRightType non deve mai più richiedere la corsa KamoInitializerService. syncAll() ora esegue tre fasi su ogni startup: 1. I vincoli di guarigione — abbassare ogni vincolo CHECK su ogni porta destra tavolo e garantire i due vincoli unici upsert-required esistono. Hibernate cuoce valori enum in vincoli CHECK a TABELLA CREATA il tempo e non li aggiorna mai, e @UniqueConstraint solo prende effetto su TABELLA CREATA, così entrambi alla deriva ogni volta che gli enum si evolvono. @Enumerated già applica valori validi allo strato Java. 2. Eliminare i diritti orfani — DELETE DOVE right type NON IN (attuale enum) attraverso tutti e sei i tavoli portanti: # Org role rights # member rights, member rights applied, job title rights, dept rights. Maniglie sia ORDINAL int che STRING enum-name storage. 3. Inserire i diritti mancanti — invariati; si basa sui vincoli unici assicurata nella fase 1. Idempotent — sicuro da rifare. Aggiunta / rimozione dei valori di enum richiede ora Riavvia solo il SecurityService.

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo