home.social

#advisory_lock — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #advisory_lock, aggregated by home.social.

  1. Postgres advisory locks на Neon ломаются от TCP-сброса. История четырёх фиксов retry-логики

    Расскажу про четыре production-инцидента на одном куске кода за десять дней. В каждом я думал, что разобрался. Закончилось тем, что я выкинул pg_advisory_lock из retry-пути и поставил FOR UPDATE SKIP LOCKED . Day-generation лок остался advisory-ным, но утечка там не критична - почему именно, разберу в конце. Полезно, если у вас Postgres на Neon (или Supabase, или Aiven serverless) и где-то по коду есть session-scoped advisory locks для координации задач между репликами.

    habr.com/ru/articles/1031236/

    #postgresql #advisory_lock #neon #serverless #retry #идемпотентность #distributed_lock

  2. Postgres advisory locks на Neon ломаются от TCP-сброса. История четырёх фиксов retry-логики

    Расскажу про четыре production-инцидента на одном куске кода за десять дней. В каждом я думал, что разобрался. Закончилось тем, что я выкинул pg_advisory_lock из retry-пути и поставил FOR UPDATE SKIP LOCKED . Day-generation лок остался advisory-ным, но утечка там не критична - почему именно, разберу в конце. Полезно, если у вас Postgres на Neon (или Supabase, или Aiven serverless) и где-то по коду есть session-scoped advisory locks для координации задач между репликами.

    habr.com/ru/articles/1031236/

    #postgresql #advisory_lock #neon #serverless #retry #идемпотентность #distributed_lock

  3. Postgres advisory locks на Neon ломаются от TCP-сброса. История четырёх фиксов retry-логики

    Расскажу про четыре production-инцидента на одном куске кода за десять дней. В каждом я думал, что разобрался. Закончилось тем, что я выкинул pg_advisory_lock из retry-пути и поставил FOR UPDATE SKIP LOCKED . Day-generation лок остался advisory-ным, но утечка там не критична - почему именно, разберу в конце. Полезно, если у вас Postgres на Neon (или Supabase, или Aiven serverless) и где-то по коду есть session-scoped advisory locks для координации задач между репликами.

    habr.com/ru/articles/1031236/

    #postgresql #advisory_lock #neon #serverless #retry #идемпотентность #distributed_lock

  4. Postgres advisory locks на Neon ломаются от TCP-сброса. История четырёх фиксов retry-логики

    Расскажу про четыре production-инцидента на одном куске кода за десять дней. В каждом я думал, что разобрался. Закончилось тем, что я выкинул pg_advisory_lock из retry-пути и поставил FOR UPDATE SKIP LOCKED . Day-generation лок остался advisory-ным, но утечка там не критична - почему именно, разберу в конце. Полезно, если у вас Postgres на Neon (или Supabase, или Aiven serverless) и где-то по коду есть session-scoped advisory locks для координации задач между репликами.

    habr.com/ru/articles/1031236/

    #postgresql #advisory_lock #neon #serverless #retry #идемпотентность #distributed_lock

  5. Как я распилил 1,1 ТБ default-партиции и не уронил прод

    Мы забыли вовремя создать партиции, и все новые данные полетели в events_default_partition . Default дорос до ~1.1 ТБ, а простое «ATTACH PARTITION» требовало часов сканирования и долгой блокировки. В статье — почему «быстрые» рецепты оказываются медленными, как я перенёс данные в нужные диапазоны, и как мы уложили критическую блокировку в 44 с . Default-партиция — это не озеро Байкал. Если туда всё сливать, экосистема потом мстит. 44 секунды блокировки: план операции

    habr.com/ru/articles/977528/

    #партиционирование_PostgreSQL #ATTACH_PARTITION #plpgsql #автоматизация_обслуживания_БД #explain_analyze #downtime #advisory_lock #CHECK_constraint #partitioning #database_migrations