pgsql: Improve tuplesort.c to support variable merge order.

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Improve tuplesort.c to support variable merge order.
Date: 2006-02-19 05:54:06
Message-ID: 20060219055406.CBCC29DCBA0@postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Improve tuplesort.c to support variable merge order. The original coding
with fixed merge order (fixed number of "tapes") was based on obsolete
assumptions, namely that tape drives are expensive. Since our "tapes"
are really just a couple of buffers, we can have a lot of them given
adequate workspace. This allows reduction of the number of merge passes
with consequent savings of I/O during large sorts.

Simon Riggs with some rework by Tom Lane

Modified Files:
--------------
pgsql/src/backend/optimizer/path:
costsize.c (r1.153 -> r1.154)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/costsize.c.diff?r1=1.153&r2=1.154)
pgsql/src/backend/utils/sort:
tuplesort.c (r1.57 -> r1.58)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/sort/tuplesort.c.diff?r1=1.57&r2=1.58)
pgsql/src/include/utils:
tuplesort.h (r1.17 -> r1.18)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/tuplesort.h.diff?r1=1.17&r2=1.18)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2006-02-19 05:58:36 pgsql: Modify logtape.c so that the initial LogicalTapeSetCreate call
Previous Message Neil Conway 2006-02-19 00:04:28 pgsql: Add TABLESPACE and ON COMMIT clauses to CREATE TABLE AS.