"Sergey E. Koposov" <math@sai.msu.ru> writes:
> I want to descibe some strange behaviour of the postgres planner.
It's not strange exactly: the mechanism for OR indexscan and the
mechanism for nestloop join indexscan are separate and don't talk
to each other. So you don't get to have a join inner indexscan that
involves an OR condition.
I have some vague ideas about replacing orindxpath.c entirely, once
we have some infrastructure for doing OR indexscans via bitmap union.
But it's not just around the corner.
In the meantime you might try expressing your query as a UNION.
regards, tom lane