Skip site navigation (1) Skip section navigation (2)

pgsql: Teach tuplestore.c to throw away data before the "mark" point

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Teach tuplestore.c to throw away data before the "mark" point
Date: 2007-05-21 17:57:35
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-committers
Log Message:
Teach tuplestore.c to throw away data before the "mark" point when the caller
is using mark/restore but not rewind or backward-scan capability.  Insert a
materialize plan node between a mergejoin and its inner child if the inner
child is a sort that is expected to spill to disk.  The materialize shields
the sort from the need to do mark/restore and thereby allows it to perform
its final merge pass on-the-fly; while the materialize itself is normally
cheap since it won't spill to disk unless the number of tuples with equal
key values exceeds work_mem.

Greg Stark, with some kibitzing from Tom Lane.

Modified Files:
        nodeMaterial.c (r1.58 -> r1.59)
        nodeMergejoin.c (r1.87 -> r1.88)
        costsize.c (r1.182 -> r1.183)
        createplan.c (r1.230 -> r1.231)
        tuplestore.c (r1.30 -> r1.31)
        execnodes.h (r1.174 -> r1.175)
        cost.h (r1.86 -> r1.87)
        tuplestore.h (r1.20 -> r1.21)


pgsql-committers by date

Next:From: Tom LaneDate: 2007-05-22 01:40:33
Subject: pgsql: Fix best_inner_indexscan to return both the cheapest-total-cost
Previous:From: Peter EisentrautDate: 2007-05-21 17:10:30
Subject: pgsql: XPath fixes: - Function renamed to "xpath".

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group