Abbina la spazzata enum-whitelist CHECK al rendering YugabyteDB

FixInitializerService
Spegnimento
14 agosto 2026 alle ore 17:06 UTC
Autore
Kamo
Impegno
2aef5d6

dropStaleEnumWhitelistChecks() ha cercato '% IN (%', che è come CockroachDB memorizzato un @Enumerated (EnumType.STRING) whitelist. PostgreSQL e YugabyteDB normalizzare il vincolo identico a '(col)::text = ANY ((ARRAY[...])::text[])', così dal taglio la spazzata ha abbinato le righe ZERO durante il successo di registrazione — 495 whitelists live congelati a qualsiasi valore esistesse quando il loro tavolo è stato fatto. Il guasto si allontana da qui. TimecardEventType.PUNCH VOIDED è stato aggiunto dopo che hr timecard audit event è stato creato, in modo che l'inserto di audit di ogni vuoto ha fallito la stante CHECK con SQLState 23514; perché quell'inserto arrotolato dentro un nido @Transactional il tx è andato rollback-solo e il chiamante ha visto un opaco UnexpectedRollbackException, surfacing in timecard editor come "editore vuoto fallito" con nulla realmente salvato. Verificato contro il database live: il predicato allargato corrisponde a 495 stanti Le liste bianche (incluse le liste bianche) CHECKs invarianti scritti a mano questo corridore dichiara — quelli tutti portano AND/OR/ È NULL e rimanere esclusi. '=' deliberatamente non è un'esclusione; il rendering ne contiene uno.

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