two table join with order by on both tables attributes - Mailing list pgsql-performance

From Evgeniy Shishkin
Subject two table join with order by on both tables attributes
Date
Msg-id 8501437C-8756-47B8-8691-CFD97717ACBB@gmail.com
Whole thread Raw
Responses Re: two table join with order by on both tables attributes
List pgsql-performance
Hello,

suppose you have two very simple tables with fk dependency, by which we join them
and another attribute for sorting

like this
select * from users join  notifications on users.id=notifications.user_id ORDER BY users.priority desc
,notifications.prioritydesc limit 10; 

Very typical web query.

No matter which composite indexes i try, postgresql can not make efficient nested loop plan using indexes.
It chooses all sorts of seq scans and hash joins or merge join and always a sort node and then a limit 10.

Neither plan provides acceptable performance. And tables tend to grow =\

Can anybody suggest something or explain this behavior?

pgsql-performance by date:

Previous
From: Kevin Grittner
Date:
Subject: Re: Query performing very bad and sometimes good
Next
From: David G Johnston
Date:
Subject: Re: two table join with order by on both tables attributes