Thread: pgsql: Refactor jsonpath's compareDatetime()
Refactor jsonpath's compareDatetime() This commit refactors come ridiculous coding in compareDatetime(). Also, it provides correct cross-datatype comparison even when one of values overflows during cast. That eliminates dilemma on whether we should suppress overflow errors during cast. Reported-by: Tom Lane Discussion: https://postgr.es/m/32308.1569455803%40sss.pgh.pa.us Discussion: https://postgr.es/m/a5629d0c-8162-7559-16aa-0c8390d6ba5f%40postgrespro.ru Author: Nikita Glukhov, Alexander Korotkov Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/52ad1e659967896ed153185328ffe806d69abcb6 Modified Files -------------- src/backend/utils/adt/date.c | 40 ++-- src/backend/utils/adt/jsonpath_exec.c | 262 +++++++++++++++++---------- src/backend/utils/adt/timestamp.c | 31 ++-- src/include/utils/date.h | 4 +- src/include/utils/timestamp.h | 4 +- src/test/regress/expected/jsonb_jsonpath.out | 37 ++-- src/test/regress/sql/jsonb_jsonpath.sql | 3 + 7 files changed, 237 insertions(+), 144 deletions(-)