Tweak sorting so that nulls appear at the front of a descending sort

Tom Lane <tgl@sss.pgh.pa.us>

Commit: 5433b4838006ffa4da80e5cdf64452bccd2aabdc
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2001-06-02T19:01:53Z
Releases: 7.2.1
Tweak sorting so that nulls appear at the front of a descending sort
(vs. at the end of a normal sort).  This ensures that explicit sorts
yield the same ordering as a btree index scan.  To be really sure that
that equivalence holds, we use the btree entries in pg_amop to decide
whether we are looking at a '<' or '>' operator.  For a sort operator
that has no btree association, we put the nulls at the front if the
operator is named '>' ... pretty grotty, but it does the right thing in
simple ASC and DESC cases, and at least there's no possibility of getting
a different answer depending on the plan type chosen.

Files

PathChange+/−
src/backend/commands/analyze.c modified +6 −21
src/backend/utils/sort/tuplesort.c modified +126 −105
src/include/utils/tuplesort.h modified +12 −1