diff --git a/pkg/container/vector/vector.go b/pkg/container/vector/vector.go index c17cb36f41230290cc2445d6a950b0976ec2a980..fb1a90decdefc04d3f021e863262a2f4f6ac12c9 100644 --- a/pkg/container/vector/vector.go +++ b/pkg/container/vector/vector.go @@ -2752,7 +2752,12 @@ func UnionNull(v, _ *Vector, m *mheap.Mheap) error { } case types.T_char, types.T_varchar, types.T_json, types.T_blob: vs := v.Col.(*types.Bytes) - vs.Offsets = append(vs.Offsets, 0) + n := len(vs.Offsets) + if n > 0 { + vs.Offsets = append(vs.Offsets, vs.Offsets[n-1]) + } else { + vs.Offsets = append(vs.Offsets, 0) + } vs.Lengths = append(vs.Lengths, 0) v.Col = vs case types.T_date: diff --git a/test/cases/prepare/prepare_all.sql b/test/cases/prepare/prepare_all.sql index 135af44d4c3858332f06b19d032879630d92971e..a137e11da3658082b7a1b9c2de1f280454c53822 100644 --- a/test/cases/prepare/prepare_all.sql +++ b/test/cases/prepare/prepare_all.sql @@ -438,9 +438,7 @@ execute s4 using @a2_val; execute s5 using @min; execute s6 using @min; --- @bvt:issue#4528 execute s7 using @a2_val; --- @bvt:issue execute s8 using @min; execute s9 using @min;