[
https://issues.apache.org/jira/browse/HBASE-14882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15695409#comment-15695409
]
Xiang Li commented on HBASE-14882:
----------------------------------
Hi [~anoop.hbase], thanks for the explanation!
2 more questions...
(1) In KeyValue, you define FIXED_OVERHEAD, as (from line 88)
{code}
public static final long FIXED_OVERHEAD = ClassSize.OBJECT + // the KeyValue
object itself
ClassSize.REFERENCE + // pointer to "bytes"
2 * Bytes.SIZEOF_INT + // offset, length
Bytes.SIZEOF_LONG;// memstoreTS <-- here
{code}
For the last line, "Bytes.SIZEOF_LONG;// memstoreTS", does it count the size
for seqId ? memstoreTS = seqId = MVCC version?
(2) In ExtendedCell, why does the following write() not have a input as
withTags?
{code}
void write(ByteBuffer buf, int offset);
{code}
While
{code} int write(OutputStream out, boolean withTags) {code}
and
{code} int getSerializedSize(boolean withTags) {code}
both allow user to specify whether he/she would like to serialize tags.
> Provide a Put API that adds the provided family, qualifier, value without
> copying
> ---------------------------------------------------------------------------------
>
> Key: HBASE-14882
> URL: https://issues.apache.org/jira/browse/HBASE-14882
> Project: HBase
> Issue Type: Improvement
> Affects Versions: 1.2.0
> Reporter: Jerry He
> Assignee: Xiang Li
> Fix For: 2.0.0
>
> Attachments: HBASE-14882.master.000.patch,
> HBASE-14882.master.001.patch, HBASE-14882.master.002.patch,
> HBASE-14882.master.003.patch
>
>
> In the Put API, we have addImmutable()
> {code}
> /**
> * See {@link #addColumn(byte[], byte[], byte[])}. This version expects
> * that the underlying arrays won't change. It's intended
> * for usage internal HBase to and for advanced client applications.
> */
> public Put addImmutable(byte [] family, byte [] qualifier, byte [] value)
> {code}
> But in the implementation, the family, qualifier and value are still being
> copied locally to create kv.
> Hopefully we should provide an API that truly uses immutable family,
> qualifier and value.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)