Обсуждение: [COMMITTERS] pgsql: Fix some problems in check_new_partition_bound().

Поиск
Список
Период
Сортировка

[COMMITTERS] pgsql: Fix some problems in check_new_partition_bound().

От
Robert Haas
Дата:
Fix some problems in check_new_partition_bound().

Account for the fact that the highest bound less than or equal to the
upper bound might be either the lower or the upper bound of the
overlapping partition, depending on whether the proposed partition
completely contains the existing partition or merely overlaps it.

Also, we need not continue searching for even greater bound in
partition_bound_bsearch() once we find the first bound that is *equal*
to the probe, because we don't have duplicate datums.  That spends
cycles needlessly.

Amit Langote, per a report from Amul Sul.  Cosmetic changes by me.

Discussion: http://postgr.es/m/CAAJ_b94XgbqVoXMyxxs63CaqWoMS1o2gpHiU0F7yGnJBnvDc_A%40mail.gmail.com

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/8a8afe2f54c27dbb47df3853803158c5205d41ce

Modified Files
--------------
src/backend/catalog/partition.c            | 64 +++++++++++++++++++++++-------
src/test/regress/expected/create_table.out | 10 ++++-
src/test/regress/sql/create_table.sql      |  4 ++
3 files changed, 62 insertions(+), 16 deletions(-)