From 046d5ce64d13e0bb2a65d5638540ccdac8e13b77 Mon Sep 17 00:00:00 2001 From: cc_db_dev Date: Thu, 25 Jan 2024 10:28:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dget=5Fvalid=5Fcollation?= =?UTF-8?q?=E4=B8=AD=E7=9A=84=E8=B0=83=E7=94=A8=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 根据get_valid_collation中的逻辑,location应使用exprLocation赋值 原来错误地使用了exprCollation --- src/common/backend/parser/parse_collate.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common/backend/parser/parse_collate.cpp b/src/common/backend/parser/parse_collate.cpp index 392c21969..8f154aca9 100644 --- a/src/common/backend/parser/parse_collate.cpp +++ b/src/common/backend/parser/parse_collate.cpp @@ -143,7 +143,7 @@ FORCE_INLINE static void get_valid_collation(Oid& collation, CollateStrength& st collation = (context.derivation == DERIVATION_SYSCONST) ? UTF8_GENERAL_CI_COLLATION_OID : GetCollationConnection(); strength = COLLATE_IMPLICIT; - location = exprCollation(node); + location = exprLocation(node); derivation = (context.derivation == DERIVATION_IGNORABLE) ? DERIVATION_COERCIBLE : context.derivation; } else { /* @@ -154,7 +154,7 @@ FORCE_INLINE static void get_valid_collation(Oid& collation, CollateStrength& st */ collation = typcollation; strength = COLLATE_IMPLICIT; - location = exprCollation(node); + location = exprLocation(node); derivation = context.derivation; } } else {