From 8c5bdce48b2a4523191fca6697c56e45266cbcec Mon Sep 17 00:00:00 2001 From: obdev Date: Sat, 10 Feb 2024 03:13:31 +0000 Subject: [PATCH] revert adjust compact row format --- src/sql/engine/basic/ob_compact_row.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/sql/engine/basic/ob_compact_row.h b/src/sql/engine/basic/ob_compact_row.h index 98cacc59f6..a3f35c33ed 100644 --- a/src/sql/engine/basic/ob_compact_row.h +++ b/src/sql/engine/basic/ob_compact_row.h @@ -33,6 +33,15 @@ struct RowHeader { public: static const int64_t OFFSET_LEN = 4; uint32_t row_size_; + union { + struct { + //TODO shengle support dynamic offset len, no use now, now only use int32_t + uint32_t offset_len_ : 3; + uint32_t has_null_ : 1; + uint32_t reserved_ : 28; + }; + uint32_t flag_; + }; }; struct RowMeta { @@ -181,6 +190,7 @@ struct ObCompactRow inline void set_null(const RowMeta &meta, const int64_t col_idx) { nulls()->set(col_idx); + header_.has_null_ = true; if (meta.fixed_expr_reordered()) { const int32_t idx = meta.project_idx(col_idx); if (idx < meta.fixed_cnt_) {