<div> </div><div> </div><div>26.11.2019, 16:02, "Andrei Zhidenkov" <andrei(dot)zhidenkov(at)n26(dot)com>:</div><blockquote><div style="word-wrap:break-word">How many tables do you have in your query? If too many, in your case “Genetic Query Optiomiation” might be used (<a href="https://www.postgresql.org/docs/10/geqo-pg-intro.html">https://www.postgresql.org/docs/10/geqo-pg-intro.html</a>).<div> <blockquote><div>On 26. Nov 2019, at 03:19, Игорь Выскорко <<a href="mailto:vyskorko(dot)igor(at)yandex(dot)ru">vyskorko(dot)igor(at)yandex(dot)ru</a>> wrote:</div> <div><div>Hi all!<br />I'm confused by planner choice: seqscan but not index scan when index scan cost is much cheaper.<br />1st plan: <a href="https://explain.depesz.com/s/Cti#l8">https://explain.depesz.com/s/Cti#l8</a><br />2nd plan (with "set enable_seqscan = off"): <a href="https://explain.depesz.com/s/qn0I#l8">https://explain.depesz.com/s/qn0I#l8</a><br /><br />Look at 8th row: this nested loop decided to join the second node by using seqscan (1st plan) when index is available (2nd plan). Index scan is much cheaper (0.430 over 257.760).<br /><br />What am I missing?<br /><br />And thanks for any reply!<br /> </div></div></blockquote></div></div></blockquote><div> </div><div>Hm... about 12 tables.<br />I tried to disable geqo (set geqo = off;) plan didn't change. But thanks for your try )<br /><br />Version I'm using (if matter):<br />select version();</div><div>PostgreSQL 9.6.1 on x86_64-pc-linux-gnu, compiled by gcc (Debian 4.9.2-10) 4.9.2, 64-bit</div>