Восстановите @Lazy, который останавливает контекст в зависимости от себя

FixSecurityService
Порезанный
4 сентября 2026 г. в 22:39 UTC
Автор
Kamo
Обещать
fe3e433

Каждый модуль службы безопасности, построенный с 4bd25e7, не запускается: Зависимости некоторых бобов в контексте применения образуют цикл: ─ ─ ─ ─ [править]LogTranslationListener (поле ... .self) ─ ─ ─ ─ ─ CommitLogTranslationListener впрыскивает сам себя так, что перевод CommitLog() вызванный через прокси-сервер Spring — метод @Async/@Transactional Этот метод () обходит прокси, а аннотация ничего не делает. Что сделало это На поле был @Lazy. Это все еще в файле, и это все. ловушка: 4bd25e7 вставила поле SingletonTaskRunner между аннотацией и Поле, которое он охранял, поэтому Лэйзи связался с новым соседом. Ничего не было Удаленный, дифф читался как чистое дополнение, а самоинъекция незаметно становилась страстно. Он хорошо спрятался. Старый контейнер продолжал обслуживать трафик, пока оба новых ReplicaSets CrashLooped, так что сервис выглядел здоровым и просто устаревшим — вот как он выглядит. «Не отвечает», потому что конечная точка, которую он называет, существует только в изображении, которое Не мог начать. Ничего не поймали и ничего не могли. ApplicationContextStartsTest является Охраняйте именно этот режим отказа и @Disabled, пока не появится Redis для Это, и CI здесь управляет люксом с -DskipTests, так что красное дерево строит и развертывается. Таким образом, исправление приходит со статическим рэтчетом. СамоинъекцияLazyRatchetTest читает Источник и утверждение, что каждое поле, тип которого является его собственным классом объявлений, имеет @Lazy DIRECTLY above it — adjacency, not mere presence, since "file contains «Лень где-то» была правдой на протяжении всего отключения. Не работает на баге и проходит по фиксации, и она громко не срабатывает, если она когда-либо перестает находить самоинъекции Во всяком случае, вместо того, чтобы свободно проходить путь SecurityServiceApplicationTests Несколько месяцев. (Написано сначала как один регекс, охватывающий аннотации, которые отступили в StackOverflowError — сбой, который выглядит точно как обнаружение Прочитай. Теперь он соответствует линии за раз. Полный комплект: 2130 тестов, 0 отказов.

Все изменения

Как вы видите судоходство?

Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.

Начните бесплатно навсегдаПосмотреть цены