TGViewer
msavin | Backend & PHP msavin | Backend & PHP @msavin_php · 794 subscribers
Post #52 1.51K
Хотите на собесе рассказать как ускорили запрос в 60 раз?

Недавно впервые споткнулся об JIT в Postgresql:

Был обычный SELECT по партиционированной таблице на ~390млн строк, причем WHERE по индексам
Но на боевой базе жесть как тормозил
Конечно запустил EXPLAIN ANALYZE, а там JIT занимает 16 секунд (!) из 16.2
Видимо из-за фильтров/кастов/количества партиций планировщик насчитал огромную стоимость запроса, хотя на практике это не подтвердилось

Решается это супер просто - достаточно перед запросом прописать SET jit = off;
После этого запрос стал выполнятся за ~250ms

Кстати, можете интерактивно поизучать план этого запроса вот здесь (но я выкинул из плана 388 партиций из 390)
  • 🔥 21
  • 👍 5
More from @msavin_php
  1. Jul 3, 2026Я писал кучу всяких библиотек и утилит, но только одна "стрельнула" и на днях пробила 100к…
  2. Jun 8, 2026Выложил видос, где разбираю чужой тех на предмет ошибок, а не прохожу собес самолично. Как…
  3. Apr 8, 2026Неочевидное поведение variadic + named arguments Вот люблю пхп и ненавижу одновременно - п…
  4. Apr 7, 2026Новое видео про распределенные транзакции, saga pattern, tcc, 2pc, eventual & strong consi…
  5. Mar 27, 2026Зарелизил наконец-то ролик про кэш в сисдизе Если упустил что-то важное, дайте знать 🙂
  6. Feb 13, 2026Есть относительно популярный вопрос на собесах - про множественное наследование в пхп Тут…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →