diff --git a/src/gausskernel/dbmind/kernel/index_advisor.cpp b/src/gausskernel/dbmind/kernel/index_advisor.cpp index 61f9d5659..6e09ce67d 100644 --- a/src/gausskernel/dbmind/kernel/index_advisor.cpp +++ b/src/gausskernel/dbmind/kernel/index_advisor.cpp @@ -1011,9 +1011,10 @@ void parse_field_expr(List *field, List *op, List *lfield_values) index->index_name = index_name; index->cardinality = cardinality; index->op = op_type; - index->field_expr = field_expr.data; + index->field_expr = pstrdup(field_expr.data); add_index_from_field(table_name, index); } + pfree_ext(field_expr.data); } inline uint4 tuple_to_uint(List *tuples)