postgresql/src/backend
David Rowley 456fa635a9 Teach planner about more monotonic window functions
9d9c02ccd introduced runConditions for window functions to allow
monotonic window function evaluation to be made more efficient when the
window function value went beyond some value that it would never go back
from due to its monotonic nature.  That commit added prosupport functions
to inform the planner that row_number(), rank(), dense_rank() and some
forms of count(*) were monotonic.  Here we add support for ntile(),
cume_dist() and percent_rank().

Reviewed-by: Melanie Plageman
Discussion: https://postgr.es/m/CAApHDvqR+VqB8s+xR-24bzJbU8xyFrBszJ17qKgECf7cWxLCaA@mail.gmail.com
2023-01-27 16:08:41 +13:00
..
access Revert "Add eager and lazy freezing strategies to VACUUM." 2023-01-25 22:22:27 -08:00
backup Improve TimestampDifferenceMilliseconds to cope with overflow sanely. 2023-01-26 17:09:12 -05:00
bootstrap Update copyright for 2023 2023-01-02 15:00:37 -05:00
catalog Allow REPLICA IDENTITY to be set on an index that's not (yet) valid. 2023-01-21 13:10:29 -05:00
commands Revert "Add eager and lazy freezing strategies to VACUUM." 2023-01-25 22:22:27 -08:00
executor Remove redundant grouping and DISTINCT columns. 2023-01-18 12:37:57 -05:00
foreign Update copyright for 2023 2023-01-02 15:00:37 -05:00
jit Fix typos in comments, code and documentation 2023-01-03 16:26:14 +09:00
lib Fix ILIST_DEBUG build 2023-01-18 10:26:15 -08:00
libpq Support the same patterns for pg-user in pg_ident.conf as in pg_hba.conf 2023-01-20 11:21:55 +09:00
main Update copyright for 2023 2023-01-02 15:00:37 -05:00
nodes Move queryjumble.c code to src/backend/nodes/ 2023-01-21 11:48:37 +09:00
optimizer Allow parallel aggregate on string_agg and array_agg 2023-01-23 17:35:01 +13:00
parser Allow parallel aggregate on string_agg and array_agg 2023-01-23 17:35:01 +13:00
partitioning Update copyright for 2023 2023-01-02 15:00:37 -05:00
po Update copyright for 2023 2023-01-02 15:00:37 -05:00
port Update copyright for 2023 2023-01-02 15:00:37 -05:00
postmaster Improve TimestampDifferenceMilliseconds to cope with overflow sanely. 2023-01-26 17:09:12 -05:00
regex Update copyright for 2023 2023-01-02 15:00:37 -05:00
replication Improve TimestampDifferenceMilliseconds to cope with overflow sanely. 2023-01-26 17:09:12 -05:00
rewrite Get rid of the "new" and "old" entries in a view's rangetable. 2023-01-18 13:23:57 -05:00
snowball Update copyright for 2023 2023-01-02 15:00:37 -05:00
statistics Update copyright for 2023 2023-01-02 15:00:37 -05:00
storage Avoid type cheats for invalid dsa_handles and dshash_table_handles. 2023-01-25 11:48:38 -05:00
tcop Use WaitEventSet API for postmaster's event loop. 2023-01-12 16:32:20 +13:00
tsearch Fix ts_headline() to handle ORs and phrase queries more honestly. 2023-01-19 16:21:44 -05:00
utils Teach planner about more monotonic window functions 2023-01-27 16:08:41 +13:00
.gitignore
Makefile Don't install postmaster symlink anymore 2023-01-26 11:33:01 +01:00
common.mk Blind attempt to fix LLVM dependency in the backend 2022-09-15 10:53:48 +07:00
meson.build Update copyright for 2023 2023-01-02 15:00:37 -05:00
nls.mk NLS: Put list of available languages into LINGUAS files 2022-07-13 08:19:17 +02:00