home.social

#expire_on_commit — Public Fediverse posts

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

fetched live
  1. Предзагрузил пачкой — получил N² запросов. Как expire_on_commit превращает оптимизацию в квадрат

    Бывают ошибки, которые не видит ни ревью, ни тесты: код отрабатывает правильно, прогон зелёный, а запросов к базе он делает в сто раз больше прежнего. Я убрал из фонового планировщика классический N+1 — самым что ни на есть учебным способом — и чуть не выкатил в прод версию, где нагрузка росла как квадрат числа пользователей. Разбираемся с замерами в руках: при чём тут expire_on_commit, почему предзагрузка пачкой сама по себе ни в чём не виновата и как одна строка превращает цикл в N².

    habr.com/ru/articles/1065546/

    #sqlalchemy #orm #postgresql #python #n+1 #оптимизация #производительность #expire_on_commit #профилирование