diff --git a/src/common/backend/nodes/outfuncs.cpp b/src/common/backend/nodes/outfuncs.cpp index c1766e7a7d53f3a84d0bc86504bbb03c014e6c9b..2aa1023ce00c996f165aff21c4e4fd90e6355f74 100755 --- a/src/common/backend/nodes/outfuncs.cpp +++ b/src/common/backend/nodes/outfuncs.cpp @@ -1238,7 +1238,9 @@ static void _outExecNodes(StringInfo str, ExecNodes* node) WRITE_NODE_FIELD(primarynodelist); WRITE_NODE_FIELD(nodeList); _outDistribution(str, &node->distribution); - WRITE_CHAR_FIELD(baselocatortype); + if (node->baselocatortype != '\0') { + WRITE_CHAR_FIELD(baselocatortype); + } WRITE_NODE_FIELD(en_expr); WRITE_OID_FIELD(en_relid); diff --git a/src/common/backend/nodes/readfuncs.cpp b/src/common/backend/nodes/readfuncs.cpp index 61e3f876c6f25a4e474f87a9cf9440ae26ae1291..790c858651cea5ffa50369cc42e64bf27fd608c3 100755 --- a/src/common/backend/nodes/readfuncs.cpp +++ b/src/common/backend/nodes/readfuncs.cpp @@ -3921,7 +3921,9 @@ static ExecNodes* _readExecNodes(void) READ_NODE_FIELD(nodeList); Distribution* distribution = _readDistribution(); ng_set_distribution(&local_node->distribution, distribution); - READ_CHAR_FIELD(baselocatortype); + IF_EXIST(baselocatortype) { + READ_CHAR_FIELD(baselocatortype); + } READ_NODE_FIELD(en_expr); READ_OID_FIELD(en_relid);