[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-21 Thread Hudson (JIRA)

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

Hudson commented on HBASE-16659:


FAILURE: Integrated in Jenkins build HBase-Trunk_matrix #1646 (See 
[https://builds.apache.org/job/HBase-Trunk_matrix/1646/])
HBASE-16659 Use CellUtil.createFirstOnRow instead of (chenheng: rev 
c67983ebf88d449a67bccd8b213237362a4093f6)
* (edit) 
hbase-client/src/main/java/org/apache/hadoop/hbase/filter/FuzzyRowFilter.java
* (edit) 
hbase-client/src/main/java/org/apache/hadoop/hbase/filter/MultiRowRangeFilter.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ReversedRegionScannerImpl.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileScanner.java


> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch, 
> HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-21 Thread binlijin (JIRA)

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

binlijin commented on HBASE-16659:
--

[~chenheng] [~te...@apache.org] [~anoop.hbase] [~ram_krish] Thanks very much 
for the review.

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch, 
> HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-21 Thread Heng Chen (JIRA)

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

Heng Chen commented on HBASE-16659:
---

To be continued in HBASE-16665

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch, 
> HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-21 Thread Anoop Sam John (JIRA)

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

Anoop Sam John commented on HBASE-16659:


Go for it. Test fails seems not at all related. Thanks for the find and patch

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch, 
> HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-21 Thread Heng Chen (JIRA)

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

Heng Chen commented on HBASE-16659:
---

{quote}
we can make it to use with out copy. We might need new API in CellUtil and new 
version of EmptyCell extension. Am ok commit this patch as such and fix the 
above in another jira.
{quote}

Agreed.  we need new interface in CellUtil, open another issue for it.   

+1

will commit it if no other concerns.  :)

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch, 
> HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-16659:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 11s 
{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:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 19s 
{color} | {color:blue} Maven dependency ordering for branch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 
5s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 49s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
41s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
22s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 
24s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 40s 
{color} | {color:green} master passed {color} |
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 9s 
{color} | {color:blue} Maven dependency ordering for patch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 
7s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 51s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 51s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
40s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
22s {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} 
25m 45s {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 
20s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 
52s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 42s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 0m 54s 
{color} | {color:green} hbase-client in the patch passed. {color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red} 85m 32s {color} 
| {color:red} hbase-server in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
27s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 128m 43s {color} 
| {color:black} {color} |
\\
\\
|| Reason || Tests ||
| Timed out junit tests | 
org.apache.hadoop.hbase.master.procedure.TestCreateTableProcedure |
|   | org.apache.hadoop.hbase.master.procedure.TestMasterFailoverWithProcedures 
|
|   | org.apache.hadoop.hbase.master.snapshot.TestSnapshotFileCache |
\\
\\
|| 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/12829502/HBASE-16659-master_v2.patch
 |
| JIRA Issue | HBASE-16659 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux ca1b0c64b45a 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/component/dev-support/hbase-personality.sh
 |
| git revision | master / 6624c67 |
| Default Java | 1.8.0_101 |
| findbugs | v3.0.0 |
| unit 

[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-20 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan commented on HBASE-16659:


+1.

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-20 Thread Anoop Sam John (JIRA)

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

Anoop Sam John commented on HBASE-16659:


+1
In places like Result#binarySearch, we can make it to use with out copy. We 
might need new API in CellUtil and new version of EmptyCell extension. Am ok 
commit this patch as such and fix the above in another jira.

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Fix For: 2.0.0
>
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-20 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-16659:


lgtm, pending QA.

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-20 Thread binlijin (JIRA)

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

binlijin commented on HBASE-16659:
--

No, not all can be replaced now, for example :
{code}
Result.java
  protected int binarySearch(final Cell [] kvs,
 final byte [] family,
 final byte [] qualifier) {
Cell searchTerm =
KeyValueUtil.createFirstOnRow(CellUtil.cloneRow(kvs[0]),
family, qualifier);
  }
{code}
This is can not be replaced.

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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


[jira] [Commented] (HBASE-16659) Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in some places.

2016-09-20 Thread Heng Chen (JIRA)

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

Heng Chen commented on HBASE-16659:
---

It seems KeyValueUtil.createFirstOnRow is used in many places,  all should be 
replaced?

> Use CellUtil.createFirstOnRow instead of KeyValueUtil.createFirstOnRow in 
> some places. 
> ---
>
> Key: HBASE-16659
> URL: https://issues.apache.org/jira/browse/HBASE-16659
> Project: HBase
>  Issue Type: Improvement
>Reporter: binlijin
>Assignee: binlijin
>Priority: Minor
> Attachments: HBASE-16659-master.patch, HBASE-16659-master_v2.patch
>
>
> CellUtil.createFirstOnRow is more effective than 
> KeyValueUtil.createFirstOnRow, because there is no byte[] copy.
> Current in ReversedRegionScannerImpl#nextRow, to get the previous row to 
> seek, it use KeyValueUtil.createFirstOnRow which will have two copy, the 
> first copy is copy to a tmp byte[], the second copy is in KeyValue. We can 
> use CellUtil.createFirstOnRow which will have no copy.



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