[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-12 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15567992#comment-15567992
 ] 

Hudson commented on HBASE-16784:


FAILURE: Integrated in Jenkins build HBase-Trunk_matrix #1771 (See 
[https://builds.apache.org/job/HBase-Trunk_matrix/1771/])
HBASE-16784  Make use of ExtendedCell#write(OutputStream os) for the 
(ramkrishna: rev b76b75142df215db8a8b144cf3e7ff00327e9800)
* (edit) hbase-common/src/main/java/org/apache/hadoop/hbase/KeyValueUtil.java
* (edit) 
hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/NoneEncoder.java


> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-16784.patch, HBASE-16784_1.patch, 
> HBASE-16784_2.patch, HBASE-16784_3.patch
>
>
> Initially this I was thinking we need to add an interface to represent the 
> fact that the key is contiguous. But since Extendedcell is added 
> encapsulating all the internal interfaces and adds a write(OutputStream , 
> boolean) and tries to exploit the fact that the Cell is in KV serialized 
> format. Hence we can make use of it in HFileWriter#append() code in case of 
> No encoding case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-11 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15565934#comment-15565934
 ] 

Anoop Sam John commented on HBASE-16784:


V3 patch LGTM

> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-16784.patch, HBASE-16784_1.patch, 
> HBASE-16784_2.patch, HBASE-16784_3.patch
>
>
> Initially this I was thinking we need to add an interface to represent the 
> fact that the key is contiguous. But since Extendedcell is added 
> encapsulating all the internal interfaces and adds a write(OutputStream , 
> boolean) and tries to exploit the fact that the Cell is in KV serialized 
> format. Hence we can make use of it in HFileWriter#append() code in case of 
> No encoding case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-07 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15556031#comment-15556031
 ] 

Hadoop QA commented on HBASE-16784:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 42m 39s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s 
{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 5m 
5s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 23s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
26s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
13s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 
50s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 21s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
22s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 20s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 20s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
20s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
9s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
32m 52s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} |
| {color:green}+1{color} | {color:green} hbaseprotoc {color} | {color:green} 0m 
10s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 
42s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 16s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 49s 
{color} | {color:green} hbase-common in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
8s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 87m 28s {color} 
| {color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.12.0 Server=1.12.0 Image:yetus/hbase:7bda515 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12832153/HBASE-16784_3.patch |
| JIRA Issue | HBASE-16784 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux 7d4a3e5c16db 3.13.0-96-generic #143-Ubuntu SMP Mon Aug 29 
20:15:20 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh
 |
| git revision | master / bc9a972 |
| Default Java | 1.8.0_101 |
| findbugs | v3.0.0 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/3876/testReport/ |
| modules | C: hbase-common U: hbase-common |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/3876/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
> 

[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-07 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15554992#comment-15554992
 ] 

Anoop Sam John commented on HBASE-16784:


bq.return ((ExtendedCell)cell).getSerializedSize(withTags);
The write(OS, boolean) method already return the #bytes writter.



> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-16784.patch, HBASE-16784_1.patch
>
>
> Initially this I was thinking we need to add an interface to represent the 
> fact that the key is contiguous. But since Extendedcell is added 
> encapsulating all the internal interfaces and adds a write(OutputStream , 
> boolean) and tries to exploit the fact that the Cell is in KV serialized 
> format. Hence we can make use of it in HFileWriter#append() code in case of 
> No encoding case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-07 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15554916#comment-15554916
 ] 

Hadoop QA commented on HBASE-16784:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 15s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s 
{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 
26s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 17s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
21s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
10s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 
39s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 17s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
18s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 16s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 16s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
21s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
10s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
26m 57s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} |
| {color:green}+1{color} | {color:green} hbaseprotoc {color} | {color:green} 0m 
8s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 
39s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 14s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 40s 
{color} | {color:green} hbase-common in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
7s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 36m 35s {color} 
| {color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.11.2 Server=1.11.2 Image:yetus/hbase:7bda515 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12832122/HBASE-16784_1.patch |
| JIRA Issue | HBASE-16784 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux 73df8a7099f7 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed 
Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build@2/component/dev-support/hbase-personality.sh
 |
| git revision | master / 96d34f2 |
| Default Java | 1.8.0_101 |
| findbugs | v3.0.0 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/3874/testReport/ |
| modules | C: hbase-common U: hbase-common |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/3874/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Version

[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-06 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15552683#comment-15552683
 ] 

Hadoop QA commented on HBASE-16784:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 14s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s 
{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 
8s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 14s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
20s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
9s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 
35s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 14s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
15s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 15s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 15s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
20s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
9s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
27m 52s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} |
| {color:green}+1{color} | {color:green} hbaseprotoc {color} | {color:green} 0m 
9s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 
45s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 15s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 45s 
{color} | {color:green} hbase-common in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
7s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 37m 4s {color} | 
{color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.11.2 Server=1.11.2 Image:yetus/hbase:7bda515 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12831999/HBASE-16784.patch |
| JIRA Issue | HBASE-16784 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux bb0adb37f972 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 
20:42:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh
 |
| git revision | master / 7a38509 |
| Default Java | 1.8.0_101 |
| findbugs | v3.0.0 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/3859/testReport/ |
| modules | C: hbase-common U: hbase-common |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/3859/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>   

[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-06 Thread ramkrishna.s.vasudevan (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15552658#comment-15552658
 ] 

ramkrishna.s.vasudevan commented on HBASE-16784:


I need to see whether the tag len always has to be written even if it is 0. But 
that is another topic. May be we should.

> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-16784.patch
>
>
> Initially this I was thinking we need to add an interface to represent the 
> fact that the key is contiguous. But since Extendedcell is added 
> encapsulating all the internal interfaces and adds a write(OutputStream , 
> boolean) and tries to exploit the fact that the Cell is in KV serialized 
> format. Hence we can make use of it in HFileWriter#append() code in case of 
> No encoding case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-06 Thread ramkrishna.s.vasudevan (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15552655#comment-15552655
 ] 

ramkrishna.s.vasudevan commented on HBASE-16784:


There are so many doing the same thing!!! 
bq.and passing encodingCtx.getHFileContext().isIncludesTags() boolean.
This can we do?  Because in hfilewriter case we write the tag len even if it is 
0 if isIncludeTags is true.


> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-16784.patch
>
>
> Initially this I was thinking we need to add an interface to represent the 
> fact that the key is contiguous. But since Extendedcell is added 
> encapsulating all the internal interfaces and adds a write(OutputStream , 
> boolean) and tries to exploit the fact that the Cell is in KV serialized 
> format. Hence we can make use of it in HFileWriter#append() code in case of 
> No encoding case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HBASE-16784) Make use of ExtendedCell#write(OutputStream os) for the default HFileWriter#append()

2016-10-06 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-16784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15552641#comment-15552641
 ] 

Anoop Sam John commented on HBASE-16784:


{code}
int klength = KeyValueUtil.keyLength(cell);
int vlength = cell.getValueLength();

out.writeInt(klength);
out.writeInt(vlength);
CellUtil.writeFlatKey(cell, out);
CellUtil.writeValue(out, cell, vlength);
int size = klength + vlength + KeyValue.KEYVALUE_INFRASTRUCTURE_SIZE;
// Write the additional tag into the stream
if (encodingCtx.getHFileContext().isIncludesTags()) {
  int tagsLength = cell.getTagsLength();
  out.writeShort(tagsLength);
  if (tagsLength > 0) {
CellUtil.writeTags(out, cell, tagsLength);
  }
  size += tagsLength + KeyValue.TAGS_LENGTH_SIZE;
}
{code}
All these can be replaced with calling KVUtil#oswrite(final Cell cell, final 
OutputStream out, final boolean withTags) and passing 
encodingCtx.getHFileContext().isIncludesTags() boolean.
Now this KVUtil method is not returning the #bytes written.  We can change 
that. The ExtendedCell API do return that.  So this will avoid many length 
parsing.

> Make use of ExtendedCell#write(OutputStream os) for the default 
> HFileWriter#append()
> 
>
> Key: HBASE-16784
> URL: https://issues.apache.org/jira/browse/HBASE-16784
> Project: HBase
>  Issue Type: Improvement
>Affects Versions: 2.0.0
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-16784.patch
>
>
> Initially this I was thinking we need to add an interface to represent the 
> fact that the key is contiguous. But since Extendedcell is added 
> encapsulating all the internal interfaces and adds a write(OutputStream , 
> boolean) and tries to exploit the fact that the Cell is in KV serialized 
> format. Hence we can make use of it in HFileWriter#append() code in case of 
> No encoding case.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)