Расскажу про четыре production-инцидента на одном куске кода за десять дней. В каждом я думал, что разобрался. Закончилось тем, что я выкинул pg_advisory_lock из retry-пути и поставил FOR UPDATE SKIP LOCKED. Day-generation лок остался advisory-ным, но утечка там не критична - почему именно, разберу в конце. Полезно, если у вас Postgres на Neon (или Supabase, или Aiven serverless) и где-то по коду есть session-scoped advisory locks для координации задач между репликами. Читать далее
Тумба под раковину BelBagno Neon 60 NEON-600-2C-SO-RS подвесная. Характеристики: Цвет: Rovere Scuro (темный дуб). Материал корпуса и фасада: ЛДСП. Покрытие корпуса и фасада: ламинат матовый. Габариты корпуса тумбы (ШхВхГ): 570х555х350 мм. Система хранения: два выдвижных ящика. Оснащение: механизм доводчика. Монтаж: подвесной. В комплекте поставки: Тумба под раковину. Тумба под раковину BelBagno Neon 60 NEON-600-2C-SO-RS подвесная […]
Привет, Хабр!PostgreSQL умеет блокировать строки (SELECT ... FOR UPDATE) и таблицы (LOCK TABLE). Об этом знают все. Но есть третий тип блокировок, который решает задачи, с которыми row-level и table-level locks не справляются: advisory locks. Консультативные блокировки — механизм, где PostgreSQL предоставляет инфраструктуру
История об особенностях использования механизмов retry, которые дает spring-kafka из коробки и проблемах с производительностью.Есть нужно сделать асинхронный retry сообщений на топике, который бы не блокировал основной поток сообщений «легко и быстро» — вам сюда????(А потом после «легко и быстро» несколько дней дебажить ????) Читать далее