diff options
author | Alexander Korotkov <akorotkov@postgresql.org> | 2020-12-29 23:35:26 +0300 |
---|---|---|
committer | Alexander Korotkov <akorotkov@postgresql.org> | 2020-12-29 23:35:26 +0300 |
commit | a5b81b6f0006ea0b502780ce7f73d295a225842c (patch) | |
tree | aa59780410492ad0515a0b1a5b959a9d9d8d3225 /src/backend | |
parent | 1b3433e25f81d6fc4f231887ab965e1ea1bcb47e (diff) | |
download | postgresql-a5b81b6f0006ea0b502780ce7f73d295a225842c.tar.gz postgresql-a5b81b6f0006ea0b502780ce7f73d295a225842c.zip |
Fix bugs in comparison functions for multirange_bsearch_match()
Two functions multirange_range_overlaps_bsearch_comparison() and
multirange_range_contains_bsearch_comparison() contain bugs of returning -1
instead of 1. This commit fixes these bugs and adds corresponding regression
tests.
Diffstat (limited to 'src/backend')
-rw-r--r-- | src/backend/utils/adt/multirangetypes.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/utils/adt/multirangetypes.c b/src/backend/utils/adt/multirangetypes.c index 06316ba6b65..46f661fee49 100644 --- a/src/backend/utils/adt/multirangetypes.c +++ b/src/backend/utils/adt/multirangetypes.c @@ -1660,7 +1660,7 @@ multirange_range_contains_bsearch_comparison(TypeCacheEntry *typcache, if (range_cmp_bounds(typcache, keyUpper, lower) < 0) return -1; if (range_cmp_bounds(typcache, keyLower, upper) > 0) - return -1; + return 1; /* * At this point we found overlapping range. But we have to check if it @@ -1825,7 +1825,7 @@ multirange_range_overlaps_bsearch_comparison(TypeCacheEntry *typcache, if (range_cmp_bounds(typcache, keyUpper, lower) < 0) return -1; if (range_cmp_bounds(typcache, keyLower, upper) > 0) - return -1; + return 1; *match = true; return 0; |