pgsql: Extend the set of frame options supported for window functions.

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Extend the set of frame options supported for window functions.
Date: 2010-02-12 17:33:21
Message-ID: 20100212173321.55F977541C5@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Extend the set of frame options supported for window functions.

This patch allows the frame to start from CURRENT ROW (in either RANGE or
ROWS mode), and it also adds support for ROWS n PRECEDING and ROWS n FOLLOWING
start and end points. (RANGE value PRECEDING/FOLLOWING isn't there yet ---
the grammar works, but that's all.)

Hitoshi Harada, reviewed by Pavel Stehule

Modified Files:
--------------
pgsql/doc/src/sgml:
func.sgml (r1.501 -> r1.502)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/func.sgml?r1=1.501&r2=1.502)
syntax.sgml (r1.141 -> r1.142)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/syntax.sgml?r1=1.141&r2=1.142)
pgsql/doc/src/sgml/ref:
select.sgml (r1.128 -> r1.129)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/select.sgml?r1=1.128&r2=1.129)
pgsql/src/backend/executor:
nodeAgg.c (r1.172 -> r1.173)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeAgg.c?r1=1.172&r2=1.173)
nodeWindowAgg.c (r1.9 -> r1.10)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeWindowAgg.c?r1=1.9&r2=1.10)
pgsql/src/backend/nodes:
copyfuncs.c (r1.460 -> r1.461)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c?r1=1.460&r2=1.461)
equalfuncs.c (r1.381 -> r1.382)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/equalfuncs.c?r1=1.381&r2=1.382)
nodeFuncs.c (r1.45 -> r1.46)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/nodeFuncs.c?r1=1.45&r2=1.46)
outfuncs.c (r1.381 -> r1.382)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.381&r2=1.382)
readfuncs.c (r1.230 -> r1.231)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/readfuncs.c?r1=1.230&r2=1.231)
pgsql/src/backend/optimizer/plan:
createplan.c (r1.270 -> r1.271)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/createplan.c?r1=1.270&r2=1.271)
planner.c (r1.264 -> r1.265)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/planner.c?r1=1.264&r2=1.265)
setrefs.c (r1.157 -> r1.158)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/setrefs.c?r1=1.157&r2=1.158)
subselect.c (r1.158 -> r1.159)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/subselect.c?r1=1.158&r2=1.159)
pgsql/src/backend/parser:
gram.y (r2.707 -> r2.708)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/gram.y?r1=2.707&r2=2.708)
parse_agg.c (r1.90 -> r1.91)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_agg.c?r1=1.90&r2=1.91)
parse_clause.c (r1.196 -> r1.197)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_clause.c?r1=1.196&r2=1.197)
pgsql/src/backend/utils/adt:
ruleutils.c (r1.320 -> r1.321)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c?r1=1.320&r2=1.321)
pgsql/src/include/catalog:
catversion.h (r1.583 -> r1.584)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h?r1=1.583&r2=1.584)
pgsql/src/include/nodes:
execnodes.h (r1.217 -> r1.218)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/execnodes.h?r1=1.217&r2=1.218)
parsenodes.h (r1.428 -> r1.429)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h?r1=1.428&r2=1.429)
plannodes.h (r1.115 -> r1.116)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/plannodes.h?r1=1.115&r2=1.116)
pgsql/src/include/optimizer:
planmain.h (r1.124 -> r1.125)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/planmain.h?r1=1.124&r2=1.125)
pgsql/src/include/parser:
kwlist.h (r1.11 -> r1.12)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/kwlist.h?r1=1.11&r2=1.12)
pgsql/src/test/regress/expected:
window.out (r1.4 -> r1.5)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/window.out?r1=1.4&r2=1.5)
pgsql/src/test/regress:
parallel_schedule (r1.60 -> r1.61)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/parallel_schedule?r1=1.60&r2=1.61)
serial_schedule (r1.55 -> r1.56)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/serial_schedule?r1=1.55&r2=1.56)
pgsql/src/test/regress/sql:
window.sql (r1.4 -> r1.5)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/window.sql?r1=1.4&r2=1.5)

Browse pgsql-committers by date

  From Date Subject
Next Message Greg Stark 2010-02-12 17:47:49 Re: [COMMITTERS] pgsql: Make standby server continuously retry restoring the next WAL
Previous Message Dimitri Fontaine 2010-02-12 17:25:02 Re: Re: [COMMITTERS] pgsql: Make standby server continuously retry restoring the next WAL