diff --git a/src/main/java/com/alipay/oceanbase/rpc/protocol/payload/impl/execute/query/ObTableQuery.java b/src/main/java/com/alipay/oceanbase/rpc/protocol/payload/impl/execute/query/ObTableQuery.java index e7526dcd3..56bdd2d69 100644 --- a/src/main/java/com/alipay/oceanbase/rpc/protocol/payload/impl/execute/query/ObTableQuery.java +++ b/src/main/java/com/alipay/oceanbase/rpc/protocol/payload/impl/execute/query/ObTableQuery.java @@ -178,7 +178,7 @@ public byte[] encode() { idx += len; } - if (isHbaseQuery) { + if (isHbaseQuery && obKVParams != null) { len = (int) obKVParams.getPayloadSize(); System.arraycopy(obKVParams.encode(), 0, bytes, idx, len); idx += len; @@ -277,9 +277,13 @@ public long getPayloadContentSize() { if (isHbaseQuery) { contentSize += hTableFilter.getPayloadSize(); + } else { + contentSize += HTABLE_DUMMY_BYTES.length; + } + if (isHbaseQuery && obKVParams != null) { contentSize += obKVParams.getPayloadSize(); } else { - contentSize += 2 * HTABLE_DUMMY_BYTES.length; + contentSize += HTABLE_DUMMY_BYTES.length; } contentSize += Serialization.getNeedBytes(scanRangeColumns.size()); for (String scanRangeColumn : scanRangeColumns) {