I have an idea for what I think may be a very simple optimization for postgres to make. I would like to try my hand at implementing it, but the last time I tried I apparently started off in the wrong direction.
In the following query, the sort step is completely unnecessary. The order is already guaranteed by the index: test=# create table test (a integer,b integer); CREATE TABLE test=# create index test_i on test(a,b); CREATE INDEX test=# explain select * from test where a=1 order by b; QUERY PLAN ------------------------------------------------------------------------- Sort (cost=5.95..5.96 rows=6 width=8) Sort Key: b -> Index Scan using test_i on test (cost=0.00..5.87 rows=6 width=8) Index Cond: (a = 1) (4 rows) At what point in the process would it make sense to check for this? Where should I be looking in the code? -- greg ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])