Zrzuć zamrożone podłużne CHECK, które zawiodły każdą nową wartość enum

FixInitializerService
Szycy
22 sierpnia 2026 23:17 UTC
Autor
Kamo
Pochęt się
b31fb30

imgs_assoc_id_check dozwolony assoc_id 0..13. ImageAssocType.PICTURE_FRAME jest Porządek 14, więc naruszono go w każdej ramie obrazu. Hibernacja pisze CHECK (kola między 0 i N) dla ’Enumerated(ORDINAL) Kolumna, gdy TYLekuje tabelę i nigdy więcej go nie aktualizuje, więc N jest Rozmiar enum w dniu, w którym stół został wykonany. Dostarcz wartość i każdą wstawkę Przenoszenie nowego zwyczaju narusza ograniczenie, którego nikt nie pamięta. Awaria jest niezwykle nieprzezroczysta, ponieważ ImageService.uploadDocument jest Przekładnia: naruszenie przewraca całą metodę z powrotem, biorąc wiersz Img Już z nim pisał. Więc nie ma nieudanego rzędu, nie ma częściowego Stan, a nic w bazie danych nie wskazuje na przyczynę – tylko generyczny Błąd. Rozpoznanie go oznaczało wykluczenie bramy MIME, wydłużenia białej listy, Limity wieloczęściowe i najpierw łańcuch proxy. imgs_client_mime_check pozwolił na 0..35 przeciwko ImageMimeType, który ma Dokładnie 36 wartości. Pełna. Następny typ MIME, który każdy dodany byłby zepsuty Każdego przesłania na platformę, a nie jedna funkcja, więc jest tu upuszczana Również, wraz ze starszym ręcznie pisanym check_client_mime (przykład 99) i czek sig_template_status, który jest jednakowy pełny pod numerem 0..2. Upuszczany, a nie poszerzony, co jest tym, co ;) Robi już dla tabel praw i z tego samego powodu: wymusza prawidłowe wartości w Javie, więc sprawdzanie bazy danych jest zbędne, oraz Poszerzenie tylko przesuwa bombę, a nie ją rozładowuje. Już stosuje się do produkcji.

Wszystkie zmiany

Jak to, co widzisz żeglugę?

Każda z tych aktualizacji automatycznie ląduje w miejscu pracy. Zacznij za darmo i obserwuj, jak rośnie tydzień po tygodniu.

Start Free ForeverZobacz ceny