[jira] [Commented] (HBASE-9000) Linear reseek in Memstore

2013-10-30 Thread Chao Shi (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13808781#comment-13808781
 ] 

Chao Shi commented on HBASE-9000:
-

bq. Hah. I just something very similar, but actually in StoreScanner.  Not 
quite ready, but assumes a seek within a row or to the next row is a near seek, 
and the tries next() a few time (I picked 10 as a default).

Did you mean to call next at StoreScanner level? I'm not sure if it is possible 
to do this there, as it may not have necessary knowledge about the cost of next 
vs. reseek. For example, a next attempt that causes reading another uncached 
block from FS is probably worse than do a reseek. I may be wrong as I didn't 
read your implementation.

 Linear reseek in Memstore
 -

 Key: HBASE-9000
 URL: https://issues.apache.org/jira/browse/HBASE-9000
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.89-fb
Reporter: Shane Hogan
Priority: Minor
 Fix For: 0.89-fb

 Attachments: hbase-9000-benchmark-program.patch, 
 hbase-9000-port-fb.patch


 This is to address the linear reseek in MemStoreScanner. Currently reseek 
 iterates over the kvset and the snapshot linearly by just calling next 
 repeatedly. The new solution is to do this linear seek up to a configurable 
 maximum amount of times then if the seek is not yet complete fall back to 
 logarithmic seek.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9775) Client write path perf issues

2013-10-30 Thread stack (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-9775:
-

Attachment: 9775.rig.v2.patch

Rebase for 0.96.

You just run the main on TestClientNoCluster.

After updating, no noticeable difference.  We run up to 100 threads and stay 
there w/ near all in wait mode.

 Client write path perf issues
 -

 Key: HBASE-9775
 URL: https://issues.apache.org/jira/browse/HBASE-9775
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.96.0
Reporter: Elliott Clark
Priority: Critical
 Attachments: 9775.rig.txt, 9775.rig.v2.patch, Charts Search   
 Cloudera Manager - ITBLL.png, Charts Search   Cloudera Manager.png, 
 hbase-9775.patch, job_run.log, short_ycsb.png, ycsb_insert_94_vs_96.png, 
 ycsb.png


 Testing on larger clusters has not had the desired throughput increases.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anoop Sam John updated HBASE-9045:
--

Attachment: (was: HBASE-9045_V2.patch)

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anoop Sam John updated HBASE-9045:
--

Status: Patch Available  (was: Open)

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anoop Sam John updated HBASE-9045:
--

Status: Open  (was: Patch Available)

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anoop Sam John updated HBASE-9045:
--

Attachment: HBASE-9045_V2.patch

The Findbugs and Javadoc warnings seems unrelated to this patch. Resubmitting 
for QA.

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9838) Fix javadoc warning in ImportTsv#TsvParser ctor

2013-10-30 Thread ramkrishna.s.vasudevan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9838?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ramkrishna.s.vasudevan updated HBASE-9838:
--

  Resolution: Fixed
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

Committed to trunk. Hence resolving.

 Fix javadoc warning in ImportTsv#TsvParser ctor
 ---

 Key: HBASE-9838
 URL: https://issues.apache.org/jira/browse/HBASE-9838
 Project: HBase
  Issue Type: Bug
Reporter: Ted Yu
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 0.98.0

 Attachments: 9838.txt, HBASE-9767_addendum_1.patch, 
 HBASE-9767_addendum.patch


 From 
 https://builds.apache.org/job/PreCommit-HBASE-Build/7623/artifact/trunk/patchprocess/patchJavadocWarnings.txt
  :
 {code}
 [WARNING] Javadoc Warnings
 [WARNING] 
 /home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/ImportTsv.java:123:
  warning - @param argument tagSeperatorStr is not a parameter name.
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13808845#comment-13808845
 ] 

Hadoop QA commented on HBASE-9045:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12610998/HBASE-9045_V2.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 6 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7674//console

This message is automatically generated.

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8128) HTable#put improvements

2013-10-30 Thread Nicolas Liochon (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8128?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13808851#comment-13808851
 ] 

Nicolas Liochon commented on HBASE-8128:


[~jxiang] It's there (the code has changed a lot since, but there is still the 
doPut method for example).

 HTable#put improvements
 ---

 Key: HBASE-8128
 URL: https://issues.apache.org/jira/browse/HBASE-8128
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.95.0, 0.95.2
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Trivial
 Fix For: 0.94.7, 0.95.0, 0.95.2

 Attachments: 8128.v1.patch


 3 points:
  - When doing a single put, we're creating an object by calling Arrays.asList
  - we're doing a size check every 10 put. Not doing it seems simpler, better 
 and allows to share some code between a single put and a list of puts.
  - we could call flushCommits on empty write buffer, especially for someone 
 using a lot of HTable instead of using a pool, as it's called in close().



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13808880#comment-13808880
 ] 

Anoop Sam John commented on HBASE-9045:
---

Checking the findbugs report, I can not see any warnings from the code this 
patch touches. Seems unrelated.

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9835) Define C interface of HBase Client synchronous APIs

2013-10-30 Thread Aditya Kishore (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13808935#comment-13808935
 ] 

Aditya Kishore commented on HBASE-9835:
---

Patch available at https://reviews.apache.org/r/15079/

 Define C interface of HBase Client synchronous APIs
 ---

 Key: HBASE-9835
 URL: https://issues.apache.org/jira/browse/HBASE-9835
 Project: HBase
  Issue Type: Sub-task
  Components: Client
Reporter: Aditya Kishore
Assignee: Aditya Kishore
  Labels: C

 Creating this as a sub task of HBASE-1015 to define Define C language 
 interface of HBase Client synchronous APIs.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Created] (HBASE-9861) Location does not have to be refreshed on regionTooBusy

2013-10-30 Thread Nicolas Liochon (JIRA)
Nicolas Liochon created HBASE-9861:
--

 Summary: Location does not have to be refreshed on regionTooBusy
 Key: HBASE-9861
 URL: https://issues.apache.org/jira/browse/HBASE-9861
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.96.0, 0.98.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Minor
 Fix For: 0.96.1


Minor improvement. There is already some code to manage the exception, so I've 
change it to share between the classes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9861) Location does not have to be refreshed on regionTooBusy

2013-10-30 Thread Nicolas Liochon (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9861?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicolas Liochon updated HBASE-9861:
---

Status: Patch Available  (was: Open)

 Location does not have to be refreshed on regionTooBusy
 ---

 Key: HBASE-9861
 URL: https://issues.apache.org/jira/browse/HBASE-9861
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.96.0, 0.98.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Minor
 Fix For: 0.96.1

 Attachments: 9861.v1.patch


 Minor improvement. There is already some code to manage the exception, so 
 I've change it to share between the classes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9843) Various fixes in client code

2013-10-30 Thread Nicolas Liochon (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9843?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicolas Liochon updated HBASE-9843:
---

  Resolution: Fixed
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

 Various fixes in client code
 

 Key: HBASE-9843
 URL: https://issues.apache.org/jira/browse/HBASE-9843
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9843-trunk.v2.patch, 9843-trunk.v3.patch


 This mainly fixes issues when we had long errors, for example a multi 
 blocked when trying to obtain a lock that was finally failing after 60s. 
 Previously we were trying only for 5 minutes. We now do all the tries. I've 
 fixed stuff around this area to make it work.
 There is also more logs.
 I've changed the back off array. With the default pause of 100ms, even after 
 20 tries we still retry every 10s.
 I've also changed the max per RS to something minimal. If the cluster is not 
 in a very good state it's less aggressive. It seems to be a better default.
 I've done two tests:
  - on a small; homogeneous cluster, I had the same performances
  - on a bigger, but heterogeneous cluster it was twice as fast.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9861) Location does not have to be refreshed on regionTooBusy

2013-10-30 Thread Nicolas Liochon (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9861?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicolas Liochon updated HBASE-9861:
---

Attachment: 9861.v1.patch

 Location does not have to be refreshed on regionTooBusy
 ---

 Key: HBASE-9861
 URL: https://issues.apache.org/jira/browse/HBASE-9861
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Minor
 Fix For: 0.96.1

 Attachments: 9861.v1.patch


 Minor improvement. There is already some code to manage the exception, so 
 I've change it to share between the classes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9221) Provide interface for getting a User in the client

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809066#comment-13809066
 ] 

Hudson commented on HBASE-9221:
---

SUCCESS: Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #817 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/817/])
HBASE-9221: Provide interface for getting a User in the client: ADDENDUM 
(jyates: rev 1536944)
* /hbase/trunk/hbase-client/pom.xml
* 
/hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/security/UserProvider.java
HBASE-9221: Provide interface for getting a User in the client (jyates: rev 
1536937)
* /hbase/trunk/hbase-client/pom.xml
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HConnectionKey.java
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/ipc/RpcClient.java
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/security/User.java
* /hbase/trunk/hbase-common/pom.xml
* 
/hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/BaseConfigurable.java
* /hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/security
* 
/hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/security/User.java
* 
/hbase/trunk/hbase-common/src/main/java/org/apache/hadoop/hbase/security/UserProvider.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/BaseConfigurable.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcServer.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/mapred/TableMapReduceUtil.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/LoadIncrementalHFiles.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/mapreduce/TableMapReduceUtil.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/rest/RESTServer.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/rest/RESTServlet.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/SecureBulkLoadEndpoint.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/TableAuthManager.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/ipc/TestCallRunner.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/HadoopSecurityEnabledUserProviderForTesting.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFiles.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestSecureLoadIncrementalHFiles.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestSecureLoadIncrementalHFilesSplitRecovery.java
* 
/hbase/trunk/hbase-thrift/src/main/java/org/apache/hadoop/hbase/thrift/ThriftServer.java


 Provide interface for getting a User in the client
 --

 Key: HBASE-9221
 URL: https://issues.apache.org/jira/browse/HBASE-9221
 Project: HBase
  Issue Type: Improvement
  Components: Client, hadoop2, security
Affects Versions: 0.98.0, 0.95.2, 0.94.12
Reporter: Jesse Yates
Assignee: Jesse Yates
 Fix For: 0.98.0, 0.94.13, 0.96.1

 Attachments: hbase-9221-0.94-v0.patch, hbase-9221-0.94-v1.patch, 
 hbase-9221-0.94-v3.patch, hbase-9221-0.94-v4.patch, 
 hbase-9221-0.96-trunk.addendum, hbase-9221-0.96-v0.patch, 
 hbase-9221-0.96-v1.patch, hbase-9221-trunk-v0.patch, 
 hbase-9221-trunk-v1.patch, hbase-9221-trunk-v2.patch, 
 hbase-9221-trunk-v3.patch, hbase-9221-trunk-v4.patch, 
 hbase-9221-trunk-v5.patch


 Sometimes, users will want to provide their own User class depending on the 
 type of security they will support in their local environment. For instance, 
 running Hadoop1 vs Hadoop2 vs CDH means potentially different ways of getting 
 the UserGroupInformation. 
 This issue abstracts out the mechanism by which we obtain an 
 o.a.h.hbase.security.User to a UserProvider. This UserProvider can then be 
 extented as a Hadoop 1/2 shim as well as supporting custom authentication 
 code.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809131#comment-13809131
 ] 

Andrew Purtell commented on HBASE-9045:
---

+1 on patch v2

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9861) Location does not have to be refreshed on regionTooBusy

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809155#comment-13809155
 ] 

Hadoop QA commented on HBASE-9861:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611056/9861.v1.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 3 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7675//console

This message is automatically generated.

 Location does not have to be refreshed on regionTooBusy
 ---

 Key: HBASE-9861
 URL: https://issues.apache.org/jira/browse/HBASE-9861
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Minor
 Fix For: 0.96.1

 Attachments: 9861.v1.patch


 Minor improvement. There is already some code to manage the exception, so 
 I've change it to share between the classes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809161#comment-13809161
 ] 

Anoop Sam John commented on HBASE-9045:
---

Thanks Andy. Will commit tomorrow morning IST unless objections

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9861) Location does not have to be refreshed on regionTooBusy

2013-10-30 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809309#comment-13809309
 ] 

stack commented on HBASE-9861:
--

Makes sense. 

Could we get stuck here if new location is bad?  Or will the new location be 
the old location next time through?

+  if (oldLocation == null || 
!source.getServerName().equals(oldLocation.getServerName())) {
+// There is no such location in the cache (it's been removed already) 
or
+// the cache has already been refreshed with a different location.  = 
nothing to do


This is great

+if (cause instanceof RegionTooBusyException || cause instanceof 
RegionOpeningException) {
+  // We know that the region is still on this region server
+  return;
+}

Fix this comment:

+   * Look for an excpetion we know in the remove exception:

findException looks to duplicate a bunch of exception parsing that we do in 
multiple places.  We should do a walk through one of these days to clean it all 
up.

 oh, I take it back.   You are doing cleanup.  How'd we have that dupe of 
exception parsing in RegionMoved and RegionOpening?

+1 caveat the little concern up top.

Nice [~nkeywal]

 Location does not have to be refreshed on regionTooBusy
 ---

 Key: HBASE-9861
 URL: https://issues.apache.org/jira/browse/HBASE-9861
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Minor
 Fix For: 0.96.1

 Attachments: 9861.v1.patch


 Minor improvement. There is already some code to manage the exception, so 
 I've change it to share between the classes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9861) Location does not have to be refreshed on regionTooBusy

2013-10-30 Thread Nicolas Liochon (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809323#comment-13809323
 ] 

Nicolas Liochon commented on HBASE-9861:


bq. Could we get stuck here if new location is bad? Or will the new location be 
the old location next time through?
We won't get stuck, as if it's wrong we will try it and change it. So the worse 
case is consuming a try (which is not great, but going to meta again may not 
help anyway).

bq. + * Look for an excpetion we know in the remove exception:
Ok, will do on commit (I will check the findbug as well)

Thanks, Stack.

 Location does not have to be refreshed on regionTooBusy
 ---

 Key: HBASE-9861
 URL: https://issues.apache.org/jira/browse/HBASE-9861
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
Priority: Minor
 Fix For: 0.96.1

 Attachments: 9861.v1.patch


 Minor improvement. There is already some code to manage the exception, so 
 I've change it to share between the classes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9000) Linear reseek in Memstore

2013-10-30 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809327#comment-13809327
 ] 

Lars Hofhansl commented on HBASE-9000:
--

Yeah I agree. It's actually better to do that at the MestoreScanner and 
StoreFileScanner level.


 Linear reseek in Memstore
 -

 Key: HBASE-9000
 URL: https://issues.apache.org/jira/browse/HBASE-9000
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.89-fb
Reporter: Shane Hogan
Priority: Minor
 Fix For: 0.89-fb

 Attachments: hbase-9000-benchmark-program.patch, 
 hbase-9000-port-fb.patch


 This is to address the linear reseek in MemStoreScanner. Currently reseek 
 iterates over the kvset and the snapshot linearly by just calling next 
 repeatedly. The new solution is to do this linear seek up to a configurable 
 maximum amount of times then if the seek is not yet complete fall back to 
 logarithmic seek.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Created] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread Nicolas Liochon (JIRA)
Nicolas Liochon created HBASE-9862:
--

 Summary: manage error per server and per region in the protobuffed 
client
 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.96.0, 0.98.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1


The patch does not change anything else than the description says. The changes 
are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9792) Region states should update last assignments when a region is opened.

2013-10-30 Thread Jimmy Xiang (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809345#comment-13809345
 ] 

Jimmy Xiang commented on HBASE-9792:


Put patch v3 on RB: https://reviews.apache.org/r/15098/

 Region states should update last assignments when a region is opened.
 -

 Key: HBASE-9792
 URL: https://issues.apache.org/jira/browse/HBASE-9792
 Project: HBase
  Issue Type: Bug
Reporter: Jimmy Xiang
Assignee: Jimmy Xiang
 Attachments: trunk-9792.patch, trunk-9792_v2.patch, 
 trunk-9792_v3.patch


 Currently, we update a region's last assignment region server when the region 
 is online.  We should do this sooner, when the region is moved to OPEN state. 
  CM could kill this region server before we delete the znode and online the 
 region.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9047) Tool to handle finishing replication when the cluster is offline

2013-10-30 Thread Demai Ni (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809348#comment-13809348
 ] 

Demai Ni commented on HBASE-9047:
-

I am looking at the error returned from Hadoop QA. 

The failed testcase TestZookeeper failed at admin.createTable(...) , I couldn't 
figure out the relationship with my patch, and I am also able to run it locally 
on my machine. Another interesting finding is that 
https://builds.apache.org/job/PreCommit-HBASE-Build/7671/changes shows another 
patch Hbase-9221, so maybe the failure is caused by a different code.

the Findbugs 
warnings(https://builds.apache.org/job/PreCommit-HBASE-Build/7671//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html)
 show some problems in my code. I will fix them. 

Demai 

 Tool to handle finishing replication when the cluster is offline
 

 Key: HBASE-9047
 URL: https://issues.apache.org/jira/browse/HBASE-9047
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.96.0
Reporter: Jean-Daniel Cryans
Assignee: Demai Ni
 Fix For: 0.98.0

 Attachments: HBASE-9047-0.94.9-v0.PATCH, HBASE-9047-trunk-v0.patch, 
 HBASE-9047-trunk-v1.patch, HBASE-9047-trunk-v2.patch


 We're having a discussion on the mailing list about replicating the data on a 
 cluster that was shut down in an offline fashion. The motivation could be 
 that you don't want to bring HBase back up but still need that data on the 
 slave.
 So I have this idea of a tool that would be running on the master cluster 
 while it is down, although it could also run at any time. Basically it would 
 be able to read the replication state of each master region server, finish 
 replicating what's missing to all the slave, and then clear that state in 
 zookeeper.
 The code that handles replication does most of that already, see 
 ReplicationSourceManager and ReplicationSource. Basically when 
 ReplicationSourceManager.init() is called, it will check all the queues in ZK 
 and try to grab those that aren't attached to a region server. If the whole 
 cluster is down, it will grab all of them.
 The beautiful thing here is that you could start that tool on all your 
 machines and the load will be spread out, but that might not be a big concern 
 if replication wasn't lagging since it would take a few seconds to finish 
 replicating the missing data for each region server.
 I'm guessing when starting ReplicationSourceManager you'd give it a fake 
 region server ID, and you'd tell it not to start its own source.
 FWIW the main difference in how replication is handled between Apache's HBase 
 and Facebook's is that the latter is always done separately of HBase itself. 
 This jira isn't about doing that.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9000) Linear reseek in Memstore

2013-10-30 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809366#comment-13809366
 ] 

Ted Yu commented on HBASE-9000:
---

'reseek to next row' gets slower with patch.
If linear.search.limit is lowered, would the slow down be less ?

 Linear reseek in Memstore
 -

 Key: HBASE-9000
 URL: https://issues.apache.org/jira/browse/HBASE-9000
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.89-fb
Reporter: Shane Hogan
Priority: Minor
 Fix For: 0.89-fb

 Attachments: hbase-9000-benchmark-program.patch, 
 hbase-9000-port-fb.patch


 This is to address the linear reseek in MemStoreScanner. Currently reseek 
 iterates over the kvset and the snapshot linearly by just calling next 
 repeatedly. The new solution is to do this linear seek up to a configurable 
 maximum amount of times then if the seek is not yet complete fall back to 
 logarithmic seek.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9816) Address review comments in HBASE-8496

2013-10-30 Thread ramkrishna.s.vasudevan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9816?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ramkrishna.s.vasudevan updated HBASE-9816:
--

Attachment: HBASE-9816.patch

Patch that addresses the review comments.

 Address review comments in HBASE-8496
 -

 Key: HBASE-9816
 URL: https://issues.apache.org/jira/browse/HBASE-9816
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.98.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
 Fix For: 0.98.0

 Attachments: HBASE-9816.patch


 This JIRA would be used to address the review comments in HBASE-8496.  Any 
 more comments would be addressed and committed as part of this.  There are 
 already few comments from Stack on the RB.
 https://reviews.apache.org/r/13311/



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9816) Address review comments in HBASE-8496

2013-10-30 Thread ramkrishna.s.vasudevan (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9816?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ramkrishna.s.vasudevan updated HBASE-9816:
--

Status: Patch Available  (was: In Progress)

 Address review comments in HBASE-8496
 -

 Key: HBASE-9816
 URL: https://issues.apache.org/jira/browse/HBASE-9816
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.98.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
 Fix For: 0.98.0

 Attachments: HBASE-9816.patch


 This JIRA would be used to address the review comments in HBASE-8496.  Any 
 more comments would be addressed and committed as part of this.  There are 
 already few comments from Stack on the RB.
 https://reviews.apache.org/r/13311/



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9000) Linear reseek in Memstore

2013-10-30 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809383#comment-13809383
 ] 

Ted Yu commented on HBASE-9000:
---

Some comments on the benchmark:
Please add Apache license header.
Add class javadoc for MemStoreReseekBenchmark.
{code}
+  private final Random random = new Random();
{code}
Can you use seed for the above call and log the value of the seed ?
{code}
+  private Listbyte[] rows; private Listbyte[] qualifiers;
{code}
Please put the above on two lines.
{code}
+  boolean ok = scanner.reseek(key);
+  if (!ok) {
+throw new AssertionError(!ok);
{code}
Please print the key which caused assertion.

 Linear reseek in Memstore
 -

 Key: HBASE-9000
 URL: https://issues.apache.org/jira/browse/HBASE-9000
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.89-fb
Reporter: Shane Hogan
Priority: Minor
 Fix For: 0.89-fb

 Attachments: hbase-9000-benchmark-program.patch, 
 hbase-9000-port-fb.patch


 This is to address the linear reseek in MemStoreScanner. Currently reseek 
 iterates over the kvset and the snapshot linearly by just calling next 
 repeatedly. The new solution is to do this linear seek up to a configurable 
 maximum amount of times then if the seek is not yet complete fall back to 
 logarithmic seek.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9000) Linear reseek in Memstore

2013-10-30 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809402#comment-13809402
 ] 

Lars Hofhansl commented on HBASE-9000:
--

bq. 'reseek to next row' gets slower with patch.

This is because the limit of 20 not optimal for this particular case. We'll 
never get it 100% right for all cases, what we need to do is to avoid the worst 
cases. In this case it'll be faster per op if the limit is increased to 30 (my 
guess) or lowered.


 Linear reseek in Memstore
 -

 Key: HBASE-9000
 URL: https://issues.apache.org/jira/browse/HBASE-9000
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.89-fb
Reporter: Shane Hogan
Priority: Minor
 Fix For: 0.89-fb

 Attachments: hbase-9000-benchmark-program.patch, 
 hbase-9000-port-fb.patch


 This is to address the linear reseek in MemStoreScanner. Currently reseek 
 iterates over the kvset and the snapshot linearly by just calling next 
 repeatedly. The new solution is to do this linear seek up to a configurable 
 maximum amount of times then if the seek is not yet complete fall back to 
 logarithmic seek.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-8552) fix coverage org.apache.hadoop.hbase.rest.filter

2013-10-30 Thread Jeffrey Zhong (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-8552?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeffrey Zhong updated HBASE-8552:
-

   Resolution: Fixed
Fix Version/s: 0.94.14
   0.96.1
   0.98.0
 Hadoop Flags: Reviewed
   Status: Resolved  (was: Patch Available)

Thanks [~aklochkov] for the new test and [~te...@apache.org] for reviews! I've 
integrated the patch into 0.94, 0.96 and trunk branches.

 fix coverage org.apache.hadoop.hbase.rest.filter 
 -

 Key: HBASE-8552
 URL: https://issues.apache.org/jira/browse/HBASE-8552
 Project: HBase
  Issue Type: Test
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8552-0.94.patch, HBASE-8552-trunk--n2.patch, 
 HBASE-8552-trunk--n3.patch, HBASE-8552-trunk.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9816) Address review comments in HBASE-8496

2013-10-30 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809409#comment-13809409
 ] 

stack commented on HBASE-9816:
--

Stick it up on rb please [~ram_krish]

 Address review comments in HBASE-8496
 -

 Key: HBASE-9816
 URL: https://issues.apache.org/jira/browse/HBASE-9816
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.98.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
 Fix For: 0.98.0

 Attachments: HBASE-9816.patch


 This JIRA would be used to address the review comments in HBASE-8496.  Any 
 more comments would be addressed and committed as part of this.  There are 
 already few comments from Stack on the RB.
 https://reviews.apache.org/r/13311/



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-8557) fix coverage org.apache.hadoop.hbase.rest.metrics

2013-10-30 Thread Jeffrey Zhong (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-8557?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeffrey Zhong updated HBASE-8557:
-

Assignee: Aleksey Gorshkov

 fix coverage org.apache.hadoop.hbase.rest.metrics
 -

 Key: HBASE-8557
 URL: https://issues.apache.org/jira/browse/HBASE-8557
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.9
Reporter: Aleksey Gorshkov
Assignee: Aleksey Gorshkov
 Attachments: HBASE-8557-0.94.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-8557) fix coverage org.apache.hadoop.hbase.rest.metrics

2013-10-30 Thread Jeffrey Zhong (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-8557?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeffrey Zhong updated HBASE-8557:
-

  Resolution: Fixed
Hadoop Flags: Reviewed
  Status: Resolved  (was: Patch Available)

Thanks [~aleksgor] for the new test! I've committed it into 0.94 branch.

 fix coverage org.apache.hadoop.hbase.rest.metrics
 -

 Key: HBASE-8557
 URL: https://issues.apache.org/jira/browse/HBASE-8557
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.9
Reporter: Aleksey Gorshkov
Assignee: Aleksey Gorshkov
 Attachments: HBASE-8557-0.94.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Assigned] (HBASE-9854) initial documentation for stripe compactions

2013-10-30 Thread Sergey Shelukhin (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9854?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Shelukhin reassigned HBASE-9854:
---

Assignee: Sergey Shelukhin

 initial documentation for stripe compactions
 

 Key: HBASE-9854
 URL: https://issues.apache.org/jira/browse/HBASE-9854
 Project: HBase
  Issue Type: Sub-task
  Components: Compaction
Reporter: Sergey Shelukhin
Assignee: Sergey Shelukhin

 Initial documentation for stripe compactions (distill from attached docs, 
 make up to date, put somewhere like book)



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread ramkrishna.s.vasudevan (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809467#comment-13809467
 ] 

ramkrishna.s.vasudevan commented on HBASE-9045:
---

Sorry for being late into this,
Just thinking on this do we always need to compress tag by tag or sometimes the 
entire tag part can be compressed.  In some cases compressing the entire thing 
would be simple and would be better for that scneario I feel. That would imapct 
the WAL compresssion also then.  Can do it based on configuration?
We are having two flavours of compress and uncompress tags.  I can get the 
meaning when combined with the WAL tag compression.  
{code}
Context that holds the dictionary for Tag compression and doing the 
compress/uncompress. This
 * will be used for compressing tags while writing into WALs.
{code}
Can change this javadoc in TagCompressionContext.
In what scenario can a byte buffer be not backed by an array?  
{code}
if (in.hasArray()) 
{code}
Is it because in some cases we are passing just an empty bytebuffer?  Looks 
good overall.



 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-8557) fix coverage org.apache.hadoop.hbase.rest.metrics

2013-10-30 Thread Jeffrey Zhong (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-8557?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeffrey Zhong updated HBASE-8557:
-

Fix Version/s: 0.94.14

 fix coverage org.apache.hadoop.hbase.rest.metrics
 -

 Key: HBASE-8557
 URL: https://issues.apache.org/jira/browse/HBASE-8557
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.9
Reporter: Aleksey Gorshkov
Assignee: Aleksey Gorshkov
 Fix For: 0.94.14

 Attachments: HBASE-8557-0.94.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9822) IntegrationTestLazyCfLoading failed occasionally in a secure enviroment

2013-10-30 Thread Jeffrey Zhong (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeffrey Zhong updated HBASE-9822:
-

   Resolution: Fixed
Fix Version/s: 0.96.1
   0.98.0
 Hadoop Flags: Reviewed
   Status: Resolved  (was: Patch Available)

Thanks [~saint@gmail.com] for the review! I've committed the patch into 
0.96 and trunk branch.

 IntegrationTestLazyCfLoading failed occasionally in a secure enviroment
 ---

 Key: HBASE-9822
 URL: https://issues.apache.org/jira/browse/HBASE-9822
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.96.0
Reporter: Jeffrey Zhong
Assignee: Jeffrey Zhong
Priority: Trivial
 Fix For: 0.98.0, 0.96.1

 Attachments: hbase-9822.patch


 This test case failed in a secure deployment once with the following error. 
 It's due to a race condition between writers starts writes and table ACLs 
 propagation to region servers.  
 {code}
 2013-10-14 13:03:32,185 ERROR [HBaseWriterThread_8] 
 util.MultiThreadedWriterBase: Failed to insert: 10 after 167ms; region 
 information: cached: 
 region=IntegrationTestLazyCfLoading,bffd,1381755808862.456a11d22693f7dc27763c32e55521a8.,
  
 hostname=gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694,
  seqNum=1; cache is up to date; errors: exception from 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal:60020 for 
 d3d9446802a44259755d38e6d163e820-10
 E   org.apache.hadoop.hbase.security.AccessDeniedException: 
 org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient 
 permissions (table=IntegrationTestLazyCfLoading, family: essential:filter, 
 action=WRITE)
 
 {code}
 Writes were sent at 13:03:32,032
 {code}
 2013-10-14 13:03:32,032 WARN  [htable-pool11-t1] client.AsyncProcess: Attempt 
 #1/35 failed for 1 ops on 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694 NOT 
 resubmitting.
 {code}
 While the permission propagation happened at 13:03:32,109 on region server
 {code}
 2013-10-14 13:03:32,109 DEBUG [regionserver60020-EventThread] 
 access.ZKPermissionWatcher: Updating permissions cache from node 
 IntegrationTestLazyCfLoading with data: 
 PBUF\x0AA\x0A\x06hrt_qa\x127\x08\x033\x0A'\x0A\x07default\x12\x1CIntegrationTestLazyCfLoading
  \x00 \x01 \x02 \x03 \x04
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809492#comment-13809492
 ] 

Anoop Sam John commented on HBASE-9045:
---

bq.Can do it based on configuration?
IMO deciding such a conf is hard. Tags might be internally used for different 
use cases later. (Already there are some plans in other jiras) For a user to 
know all these and deciding such a conf will be hard right?  That is why I am 
thinking that tag by tag compression will be safe. What do you say?

Will correct the javadoc. I missed that in this patch. Thanks for the finding.
bq.if (in.hasArray()) 
That is the recommendation from javadoc for using array() 
{quote}
Invoke the hasArray method before invoking this
method in order to ensure that this buffer has an accessible backing
array.  
{quote}

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809496#comment-13809496
 ] 

Andrew Purtell commented on HBASE-9045:
---

bq. do we always need to compress tag by tag or sometimes the entire tag part 
can be compressed.  In some cases compressing the entire thing would be simple 
and would be better for that scneario I feel. That would imapct the WAL 
compresssion also then.

Interesting point. For the case where there's just one tag on the cell, it's 
the same, and for cases where there are a number of cells with the exact same 
set of tags it would perform better. On the other hand, if cells have many 
common tags but the similarities don't coincide on any given cell then the 
dictionary will be inefficient compared to the per-tag approach. Probably the 
per-tag approach is better for the general case.

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Comment Edited] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809496#comment-13809496
 ] 

Andrew Purtell edited comment on HBASE-9045 at 10/30/13 7:08 PM:
-

bq. do we always need to compress tag by tag or sometimes the entire tag part 
can be compressed.  In some cases compressing the entire thing would be simple 
and would be better for that scneario I feel. That would imapct the WAL 
compresssion also then.

Interesting point. For the case where there's just one tag on the cell, it's 
the same, and for cases where there are a number of cells with the exact same 
set of tags it would perform better. On the other hand, if cells have many 
common tags but the similarities don't coincide on any given cell then the 
dictionary will be inefficiently constructed compared to the per-tag approach. 
Probably the per-tag approach is better for the general case.


was (Author: apurtell):
bq. do we always need to compress tag by tag or sometimes the entire tag part 
can be compressed.  In some cases compressing the entire thing would be simple 
and would be better for that scneario I feel. That would imapct the WAL 
compresssion also then.

Interesting point. For the case where there's just one tag on the cell, it's 
the same, and for cases where there are a number of cells with the exact same 
set of tags it would perform better. On the other hand, if cells have many 
common tags but the similarities don't coincide on any given cell then the 
dictionary will be inefficient compared to the per-tag approach. Probably the 
per-tag approach is better for the general case.

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9816) Address review comments in HBASE-8496

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809500#comment-13809500
 ] 

Hadoop QA commented on HBASE-9816:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611122/HBASE-9816.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 54 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
 

 {color:red}-1 core zombie tests{color}.  There are 1 zombie test(s):   
at 
org.apache.hadoop.hbase.TestZooKeeper.testRegionAssignmentAfterMasterRecoveryDueToZKExpiry(TestZooKeeper.java:486)

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7676//console

This message is automatically generated.

 Address review comments in HBASE-8496
 -

 Key: HBASE-9816
 URL: https://issues.apache.org/jira/browse/HBASE-9816
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.98.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
 Fix For: 0.98.0

 Attachments: HBASE-9816.patch


 This JIRA would be used to address the review comments in HBASE-8496.  Any 
 more comments would be addressed and committed as part of this.  There are 
 already few comments from Stack on the RB.
 https://reviews.apache.org/r/13311/



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Anoop Sam John (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anoop Sam John updated HBASE-9045:
--

Attachment: HBASE-9045_V3.patch

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch, 
 HBASE-9045_V3.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread Nicolas Liochon (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicolas Liochon updated HBASE-9862:
---

Attachment: 9862.v2.patch

 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread Nicolas Liochon (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicolas Liochon updated HBASE-9862:
---

Status: Patch Available  (was: Open)

At the end, it includes a fix for the region name / RegionSpecifier 
deserialization in multi.

 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.96.0, 0.98.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9047) Tool to handle finishing replication when the cluster is offline

2013-10-30 Thread Demai Ni (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Demai Ni updated HBASE-9047:


Attachment: HBASE-9047-trunk-v3.patch

update v3 for another Hadoop QA testing. v3 fixed the dodgy warnings about the 
static variable written from instance method

 Tool to handle finishing replication when the cluster is offline
 

 Key: HBASE-9047
 URL: https://issues.apache.org/jira/browse/HBASE-9047
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.96.0
Reporter: Jean-Daniel Cryans
Assignee: Demai Ni
 Fix For: 0.98.0

 Attachments: HBASE-9047-0.94.9-v0.PATCH, HBASE-9047-trunk-v0.patch, 
 HBASE-9047-trunk-v1.patch, HBASE-9047-trunk-v2.patch, 
 HBASE-9047-trunk-v3.patch


 We're having a discussion on the mailing list about replicating the data on a 
 cluster that was shut down in an offline fashion. The motivation could be 
 that you don't want to bring HBase back up but still need that data on the 
 slave.
 So I have this idea of a tool that would be running on the master cluster 
 while it is down, although it could also run at any time. Basically it would 
 be able to read the replication state of each master region server, finish 
 replicating what's missing to all the slave, and then clear that state in 
 zookeeper.
 The code that handles replication does most of that already, see 
 ReplicationSourceManager and ReplicationSource. Basically when 
 ReplicationSourceManager.init() is called, it will check all the queues in ZK 
 and try to grab those that aren't attached to a region server. If the whole 
 cluster is down, it will grab all of them.
 The beautiful thing here is that you could start that tool on all your 
 machines and the load will be spread out, but that might not be a big concern 
 if replication wasn't lagging since it would take a few seconds to finish 
 replicating the missing data for each region server.
 I'm guessing when starting ReplicationSourceManager you'd give it a fake 
 region server ID, and you'd tell it not to start its own source.
 FWIW the main difference in how replication is handled between Apache's HBase 
 and Facebook's is that the latter is always done separately of HBase itself. 
 This jira isn't about doing that.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Created] (HBASE-9863) Intermittently TestZooKeeper#testRegionAssignmentAfterMasterRecoveryDueToZKExpiry hangs

2013-10-30 Thread Ted Yu (JIRA)
Ted Yu created HBASE-9863:
-

 Summary: Intermittently 
TestZooKeeper#testRegionAssignmentAfterMasterRecoveryDueToZKExpiry hangs
 Key: HBASE-9863
 URL: https://issues.apache.org/jira/browse/HBASE-9863
 Project: HBase
  Issue Type: Bug
Reporter: Ted Yu


TestZooKeeper#testRegionAssignmentAfterMasterRecoveryDueToZKExpiry sometimes 
hung.
Here were two recent occurrences:
https://builds.apache.org/job/PreCommit-HBASE-Build/7676/console
https://builds.apache.org/job/PreCommit-HBASE-Build/7671/console

There were 9 occurrences of the following in both stack traces:
{code}
FifoRpcScheduler.handler1-thread-5 daemon prio=10 tid=0x09df8800 nid=0xc17 
waiting for monitor entry [0x6fdf8000]
   java.lang.Thread.State: BLOCKED (on object monitor)
  at 
org.apache.hadoop.hbase.master.TableNamespaceManager.isTableAvailableAndInitialized(TableNamespaceManager.java:250)
  - waiting to lock 0x7f69b5f0 (a 
org.apache.hadoop.hbase.master.TableNamespaceManager)
  at 
org.apache.hadoop.hbase.master.HMaster.isTableNamespaceManagerReady(HMaster.java:3146)
  at 
org.apache.hadoop.hbase.master.HMaster.getNamespaceDescriptor(HMaster.java:3105)
  at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1743)
  at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:1782)
  at 
org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:38221)
  at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:1983)
  at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:92)
{code}
The test hung here:
{code}
pool-1-thread-1 prio=10 tid=0x74f7b800 nid=0x5aa5 in Object.wait() 
[0x74efe000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
  at java.lang.Object.wait(Native Method)
  - waiting on 0xcc848348 (a org.apache.hadoop.hbase.ipc.RpcClient$Call)
  at org.apache.hadoop.hbase.ipc.RpcClient.call(RpcClient.java:1436)
  - locked 0xcc848348 (a org.apache.hadoop.hbase.ipc.RpcClient$Call)
  at 
org.apache.hadoop.hbase.ipc.RpcClient.callBlockingMethod(RpcClient.java:1654)
  at 
org.apache.hadoop.hbase.ipc.RpcClient$BlockingRpcChannelImplementation.callBlockingMethod(RpcClient.java:1712)
  at 
org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$BlockingStub.createTable(MasterProtos.java:40372)
  at 
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation$5.createTable(HConnectionManager.java:1931)
  at org.apache.hadoop.hbase.client.HBaseAdmin$2.call(HBaseAdmin.java:598)
  at org.apache.hadoop.hbase.client.HBaseAdmin$2.call(HBaseAdmin.java:594)
  at 
org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:116)
  - locked 0x7faa26d0 (a org.apache.hadoop.hbase.client.RpcRetryingCaller)
  at 
org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:94)
  - locked 0x7faa26d0 (a org.apache.hadoop.hbase.client.RpcRetryingCaller)
  at 
org.apache.hadoop.hbase.client.HBaseAdmin.executeCallable(HBaseAdmin.java:3124)
  at 
org.apache.hadoop.hbase.client.HBaseAdmin.createTableAsync(HBaseAdmin.java:594)
  at org.apache.hadoop.hbase.client.HBaseAdmin.createTable(HBaseAdmin.java:485)
  at 
org.apache.hadoop.hbase.TestZooKeeper.testRegionAssignmentAfterMasterRecoveryDueToZKExpiry(TestZooKeeper.java:486)
{code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9047) Tool to handle finishing replication when the cluster is offline

2013-10-30 Thread Demai Ni (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809532#comment-13809532
 ] 

Demai Ni commented on HBASE-9047:
-

the failure from previous Hadoop QA is the same as HBASE-9863 intermittently 
TestZooKeeper#testRegionAssignmentAfterMasterRecoveryDueToZKExpiry hangs

 Tool to handle finishing replication when the cluster is offline
 

 Key: HBASE-9047
 URL: https://issues.apache.org/jira/browse/HBASE-9047
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.96.0
Reporter: Jean-Daniel Cryans
Assignee: Demai Ni
 Fix For: 0.98.0

 Attachments: HBASE-9047-0.94.9-v0.PATCH, HBASE-9047-trunk-v0.patch, 
 HBASE-9047-trunk-v1.patch, HBASE-9047-trunk-v2.patch, 
 HBASE-9047-trunk-v3.patch


 We're having a discussion on the mailing list about replicating the data on a 
 cluster that was shut down in an offline fashion. The motivation could be 
 that you don't want to bring HBase back up but still need that data on the 
 slave.
 So I have this idea of a tool that would be running on the master cluster 
 while it is down, although it could also run at any time. Basically it would 
 be able to read the replication state of each master region server, finish 
 replicating what's missing to all the slave, and then clear that state in 
 zookeeper.
 The code that handles replication does most of that already, see 
 ReplicationSourceManager and ReplicationSource. Basically when 
 ReplicationSourceManager.init() is called, it will check all the queues in ZK 
 and try to grab those that aren't attached to a region server. If the whole 
 cluster is down, it will grab all of them.
 The beautiful thing here is that you could start that tool on all your 
 machines and the load will be spread out, but that might not be a big concern 
 if replication wasn't lagging since it would take a few seconds to finish 
 replicating the missing data for each region server.
 I'm guessing when starting ReplicationSourceManager you'd give it a fake 
 region server ID, and you'd tell it not to start its own source.
 FWIW the main difference in how replication is handled between Apache's HBase 
 and Facebook's is that the latter is always done separately of HBase itself. 
 This jira isn't about doing that.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Created] (HBASE-9864) Notifications bus for use by cluster members keeping up-to-date on changes

2013-10-30 Thread stack (JIRA)
stack created HBASE-9864:


 Summary: Notifications bus for use by cluster members keeping 
up-to-date on changes
 Key: HBASE-9864
 URL: https://issues.apache.org/jira/browse/HBASE-9864
 Project: HBase
  Issue Type: Brainstorming
Reporter: stack


In namespaces and acls, zk callbacks are used so all participating servers are 
notified when there is a change in acls/namespaces list.

The new visibility tags feature coming in copies the same model of using zk 
with listeners for the features' particular notifications.

Three systems each w/ their own implementation of the notifications all using 
zk w/ their own feature-specific watchers.

Should probably unify.

Do we have to go via zk?  Seems like all want to be notified when an hbase 
table is updated.  Could we tell servers directly rather than go via zk?



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8552) fix coverage org.apache.hadoop.hbase.rest.filter

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809556#comment-13809556
 ] 

Hudson commented on HBASE-8552:
---

SUCCESS: Integrated in hbase-0.96 #170 (See 
[https://builds.apache.org/job/hbase-0.96/170/])
HBASE-8552: fix coverage org.apache.hadoop.hbase.rest.filter(by Andrey 
Klochkov) (jeffreyz: rev 1537198)
* 
/hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/rest/TestGZIPResponseWrapper.java


 fix coverage org.apache.hadoop.hbase.rest.filter 
 -

 Key: HBASE-8552
 URL: https://issues.apache.org/jira/browse/HBASE-8552
 Project: HBase
  Issue Type: Test
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8552-0.94.patch, HBASE-8552-trunk--n2.patch, 
 HBASE-8552-trunk--n3.patch, HBASE-8552-trunk.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809560#comment-13809560
 ] 

stack commented on HBASE-9862:
--

I tried it in my little harness and it doesn't break anything at least.

Patch application failed because you added something I had -- catching 
Thowables.

+} catch (Throwable t) {
+  // This should not happen. Let's log  retry anyway.
+  LOG.warn(# + id + , Caught throwable while calling. This is 
unexpected. +
+   Retrying. Server is  + loc.getServerName() + , 
tableName= + tableName, t);
+  receiveGlobalFailure(initialActions, multiAction, loc, 
numAttempt, t,
+  errorsByServer);
   return;


The above should be LOG.error because it is not supposed to happen (though it 
did for me when making up my harness getting stuff wrong and probably for you 
when you were refactoring -- it is too easy for exceptions to be suppressed in 
this stuff).

We don't usually run w/ asserts:

+ assert responses != null;

.. perhaps in testing, I don't recall.

Let me mess some more w/ it in place before I give a +1... let me manufacture 
the errors you address here.





 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread Sergey Shelukhin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809573#comment-13809573
 ] 

Sergey Shelukhin commented on HBASE-9862:
-

iirc we used to run w/asserts in testing, at least in the past.
Patch looks reasonable, assuming it's just a refactoring for the most part it 
should be good.
One thing we could do in theory (in some other jira) is somehow wake sleepers 
that want to retry to particular regions, when we get updated cache location 
for that region.


 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread Nicolas Liochon (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809588#comment-13809588
 ] 

Nicolas Liochon commented on HBASE-9862:


For the assert, I've used them as a kind of documentation (I use IllegalState 
when I fear it could occur in production). When we run the tests they are 
activated. I can remove them, or replace them with an IllegalArgumentException.

bq. assuming it's just a refactoring for the most part it should be good.
Yes, the logic is not supposed to change (if I did it well :-) ). The changes 
are 90% code extraction. The remaining 10% took me a while...

Thanks for the comments.

 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-7254) Refactor AccessController ZK-mediated permissions cache into a generic mechanism

2013-10-30 Thread Andrew Purtell (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-7254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Purtell updated HBASE-7254:
--

  Component/s: (was: security)
   (was: Coprocessors)
Affects Version/s: (was: 0.95.2)
   0.98.0
  Summary: Refactor AccessController ZK-mediated permissions cache 
into a generic mechanism  (was: Consider replacing AccessController ZK-mediated 
permissions cache)

This came up in a review for HBASE-7663. 

There are now two and potentially a third feature which implement their own ZK 
mediated distributed cache: the AccessController, namespaces, and the 
VisibilityController. 

We should have a common mechanism. 

I think there are a couple of reasons why it hasn't happened yet: it's easy to 
copy the AC's example, we're not sure a replacement would be better or work 
properly at first, and a bug that prevents proper functioning of security code 
could become an embarrasing CVE. It needs someone to sit down, clear other 
stuff, and focus. 

 Refactor AccessController ZK-mediated permissions cache into a generic 
 mechanism
 

 Key: HBASE-7254
 URL: https://issues.apache.org/jira/browse/HBASE-7254
 Project: HBase
  Issue Type: Task
Affects Versions: 0.98.0
Reporter: Andrew Purtell
Assignee: Andrew Purtell

 After HBASE-5487 or HBASE-7212 goes in, we could replace the 
 AccessController's permissions cache update via ZK using one of these more 
 general frameworks, thus reducing functional duplication and code.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-7254) Refactor AccessController ZK-mediated permissions cache into a generic mechanism

2013-10-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-7254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809589#comment-13809589
 ] 

Andrew Purtell commented on HBASE-7254:
---

Also my earlier objection to Curator is now removed, as noted on the other 
JIRA, because Curator has since entered and graduated ASF incubation to become 
Apache Curator.

 Refactor AccessController ZK-mediated permissions cache into a generic 
 mechanism
 

 Key: HBASE-7254
 URL: https://issues.apache.org/jira/browse/HBASE-7254
 Project: HBase
  Issue Type: Task
Affects Versions: 0.98.0
Reporter: Andrew Purtell
Assignee: Andrew Purtell

 After HBASE-5487 or HBASE-7212 goes in, we could replace the 
 AccessController's permissions cache update via ZK using one of these more 
 general frameworks, thus reducing functional duplication and code.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9864) Notifications bus for use by cluster members keeping up-to-date on changes

2013-10-30 Thread Nicolas Liochon (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809595#comment-13809595
 ] 

Nicolas Liochon commented on HBASE-9864:


We have the cluster status, sent w/ a multicast message. It scales, and the 
server does not need to know about the client.
ZK is interesting as it now has cheap local session (ZOOKEEPER-1147). 

It depends as well on the reliability we need, and if we need to see all states 
or not.

 Notifications bus for use by cluster members keeping up-to-date on changes
 --

 Key: HBASE-9864
 URL: https://issues.apache.org/jira/browse/HBASE-9864
 Project: HBase
  Issue Type: Brainstorming
Reporter: stack

 In namespaces and acls, zk callbacks are used so all participating servers 
 are notified when there is a change in acls/namespaces list.
 The new visibility tags feature coming in copies the same model of using zk 
 with listeners for the features' particular notifications.
 Three systems each w/ their own implementation of the notifications all using 
 zk w/ their own feature-specific watchers.
 Should probably unify.
 Do we have to go via zk?  Seems like all want to be notified when an hbase 
 table is updated.  Could we tell servers directly rather than go via zk?



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9864) Notifications bus for use by cluster members keeping up-to-date on changes

2013-10-30 Thread Andrew Purtell (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9864?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809599#comment-13809599
 ] 

Andrew Purtell commented on HBASE-9864:
---

See HBASE-7254

 Notifications bus for use by cluster members keeping up-to-date on changes
 --

 Key: HBASE-9864
 URL: https://issues.apache.org/jira/browse/HBASE-9864
 Project: HBase
  Issue Type: Brainstorming
Reporter: stack

 In namespaces and acls, zk callbacks are used so all participating servers 
 are notified when there is a change in acls/namespaces list.
 The new visibility tags feature coming in copies the same model of using zk 
 with listeners for the features' particular notifications.
 Three systems each w/ their own implementation of the notifications all using 
 zk w/ their own feature-specific watchers.
 Should probably unify.
 Do we have to go via zk?  Seems like all want to be notified when an hbase 
 table is updated.  Could we tell servers directly rather than go via zk?



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9045) Support Dictionary based Tag compression in HFiles

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9045?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809605#comment-13809605
 ] 

Hadoop QA commented on HBASE-9045:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611146/HBASE-9045_V3.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 6 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7678//console

This message is automatically generated.

 Support Dictionary based Tag compression in HFiles
 --

 Key: HBASE-9045
 URL: https://issues.apache.org/jira/browse/HBASE-9045
 Project: HBase
  Issue Type: Sub-task
Affects Versions: 0.98.0
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 0.98.0

 Attachments: HBASE-9045.patch, HBASE-9045_V2.patch, 
 HBASE-9045_V3.patch


 Along with the DataBlockEncoding algorithms, Dictionary based Tag compression 
 can be done



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Assigned] (HBASE-7254) Refactor AccessController ZK-mediated permissions cache into a generic mechanism

2013-10-30 Thread Andrew Purtell (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-7254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Purtell reassigned HBASE-7254:
-

Assignee: (was: Andrew Purtell)

 Refactor AccessController ZK-mediated permissions cache into a generic 
 mechanism
 

 Key: HBASE-7254
 URL: https://issues.apache.org/jira/browse/HBASE-7254
 Project: HBase
  Issue Type: Task
Affects Versions: 0.98.0
Reporter: Andrew Purtell

 After HBASE-5487 or HBASE-7212 goes in, we could replace the 
 AccessController's permissions cache update via ZK using one of these more 
 general frameworks, thus reducing functional duplication and code.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809602#comment-13809602
 ] 

Hadoop QA commented on HBASE-9862:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611147/9862.v2.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:red}-1 tests included{color}.  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:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7677//console

This message is automatically generated.

 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-8369) MapReduce over snapshot files

2013-10-30 Thread Enis Soztutar (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Enis Soztutar updated HBASE-8369:
-

Attachment: hbase-8369_v6.patch

Rebased patch

 MapReduce over snapshot files
 -

 Key: HBASE-8369
 URL: https://issues.apache.org/jira/browse/HBASE-8369
 Project: HBase
  Issue Type: New Feature
  Components: mapreduce, snapshots
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.0

 Attachments: HBASE-8369-0.94.patch, HBASE-8369-0.94_v2.patch, 
 HBASE-8369-0.94_v3.patch, HBASE-8369-0.94_v4.patch, HBASE-8369-0.94_v5.patch, 
 HBASE-8369-trunk_v1.patch, HBASE-8369-trunk_v2.patch, 
 HBASE-8369-trunk_v3.patch, hbase-8369_v0.patch, hbase-8369_v5.patch, 
 hbase-8369_v6.patch


 The idea is to add an InputFormat, which can run the mapreduce job over 
 snapshot files directly bypassing hbase server layer. The IF is similar in 
 usage to TableInputFormat, taking a Scan object from the user, but instead of 
 running from an online table, it runs from a table snapshot. We do one split 
 per region in the snapshot, and open an HRegion inside the RecordReader. A 
 RegionScanner is used internally for doing the scan without any HRegionServer 
 bits. 
 Users have been asking and searching for ways to run MR jobs by reading 
 directly from hfiles, so this allows new use cases if reading from stale data 
 is ok:
  - Take snapshots periodically, and run MR jobs only on snapshots.
  - Export snapshots to remote hdfs cluster, run the MR jobs at that cluster 
 without HBase cluster.
  - (Future use case) Combine snapshot data with online hbase data: Scan from 
 yesterday's snapshot, but read today's data from online hbase cluster. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8369) MapReduce over snapshot files

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809624#comment-13809624
 ] 

Hadoop QA commented on HBASE-8369:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611171/hbase-8369_v6.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 16 new 
or modified tests.

{color:red}-1 hadoop1.0{color}.  The patch failed to compile against the 
hadoop 1.0 profile.

Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7680//console

This message is automatically generated.

 MapReduce over snapshot files
 -

 Key: HBASE-8369
 URL: https://issues.apache.org/jira/browse/HBASE-8369
 Project: HBase
  Issue Type: New Feature
  Components: mapreduce, snapshots
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.0

 Attachments: HBASE-8369-0.94.patch, HBASE-8369-0.94_v2.patch, 
 HBASE-8369-0.94_v3.patch, HBASE-8369-0.94_v4.patch, HBASE-8369-0.94_v5.patch, 
 HBASE-8369-trunk_v1.patch, HBASE-8369-trunk_v2.patch, 
 HBASE-8369-trunk_v3.patch, hbase-8369_v0.patch, hbase-8369_v5.patch, 
 hbase-8369_v6.patch


 The idea is to add an InputFormat, which can run the mapreduce job over 
 snapshot files directly bypassing hbase server layer. The IF is similar in 
 usage to TableInputFormat, taking a Scan object from the user, but instead of 
 running from an online table, it runs from a table snapshot. We do one split 
 per region in the snapshot, and open an HRegion inside the RecordReader. A 
 RegionScanner is used internally for doing the scan without any HRegionServer 
 bits. 
 Users have been asking and searching for ways to run MR jobs by reading 
 directly from hfiles, so this allows new use cases if reading from stale data 
 is ok:
  - Take snapshots periodically, and run MR jobs only on snapshots.
  - Export snapshots to remote hdfs cluster, run the MR jobs at that cluster 
 without HBase cluster.
  - (Future use case) Combine snapshot data with online hbase data: Scan from 
 yesterday's snapshot, but read today's data from online hbase cluster. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-7662) [Per-KV security] Store and apply per cell ACLs into/from KeyValue tags

2013-10-30 Thread Andrew Purtell (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-7662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Purtell updated HBASE-7662:
--

Attachment: 7662.patch

Attached updated patch addressing review comments.

 [Per-KV security] Store and apply per cell ACLs into/from KeyValue tags
 ---

 Key: HBASE-7662
 URL: https://issues.apache.org/jira/browse/HBASE-7662
 Project: HBase
  Issue Type: Sub-task
  Components: Coprocessors, security
Affects Versions: 0.98.0
Reporter: Andrew Purtell
Assignee: Andrew Purtell
 Attachments: 7662.patch, 7662.patch


 We can improve the performance of per-cell authorization if the read of the 
 cell ACL, if any, is combined with the sequential read of the cell data 
 already in progress. When tags are inlined with KVs in block encoding (see 
 HBASE-7448, and more generally HBASE-7233), we can use them to carry cell 
 ACLs instead of using out-of-line storage (HBASE-7661) for that purpose.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9862) manage error per server and per region in the protobuffed client

2013-10-30 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9862?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809663#comment-13809663
 ] 

stack commented on HBASE-9862:
--

+1

Throwing a few exceptions it keeps chugging along so basic operation seems fine.

 manage error per server and per region in the protobuffed client
 

 Key: HBASE-9862
 URL: https://issues.apache.org/jira/browse/HBASE-9862
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.98.0, 0.96.0
Reporter: Nicolas Liochon
Assignee: Nicolas Liochon
 Fix For: 0.98.0, 0.96.1

 Attachments: 9862.v2.patch


 The patch does not change anything else than the description says. The 
 changes are about extracting the common paths.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9563) Autorestart doesn't work if zkcleaner fails

2013-10-30 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809673#comment-13809673
 ] 

Enis Soztutar commented on HBASE-9563:
--

bq. It's still an issue that the zkCleaner which should only be an optimization 
is getting in the way of starting but it doesn't hamper testing.
That is already fixed with the committed patch. no? 
bq. That we'll just fail the disable? I was hoping to understand the sequencing 
that had us lose the .tableinfo file.
Sorry, I did not get the full context. This issue is about master not starting 
due to failing to clean znode right? Is there a related issue for .tableinfo 
loss? 

 Autorestart doesn't work if zkcleaner fails
 ---

 Key: HBASE-9563
 URL: https://issues.apache.org/jira/browse/HBASE-9563
 Project: HBase
  Issue Type: Bug
Reporter: Elliott Clark
Assignee: stack
Priority: Critical
 Fix For: 0.98.0, 0.96.1

 Attachments: 9563.txt, 9563v2.txt, categorization.txt, 
 categorization.txt


 I've seen this several times where a master didn't autorestart because zk 
 cleaner failed.  We should still restart the daemon even if it's not possible 
 to clean the zk nodes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9047) Tool to handle finishing replication when the cluster is offline

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9047?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809694#comment-13809694
 ] 

Hadoop QA commented on HBASE-9047:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  
http://issues.apache.org/jira/secure/attachment/12611148/HBASE-9047-trunk-v3.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 2 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7679//console

This message is automatically generated.

 Tool to handle finishing replication when the cluster is offline
 

 Key: HBASE-9047
 URL: https://issues.apache.org/jira/browse/HBASE-9047
 Project: HBase
  Issue Type: New Feature
Affects Versions: 0.96.0
Reporter: Jean-Daniel Cryans
Assignee: Demai Ni
 Fix For: 0.98.0

 Attachments: HBASE-9047-0.94.9-v0.PATCH, HBASE-9047-trunk-v0.patch, 
 HBASE-9047-trunk-v1.patch, HBASE-9047-trunk-v2.patch, 
 HBASE-9047-trunk-v3.patch


 We're having a discussion on the mailing list about replicating the data on a 
 cluster that was shut down in an offline fashion. The motivation could be 
 that you don't want to bring HBase back up but still need that data on the 
 slave.
 So I have this idea of a tool that would be running on the master cluster 
 while it is down, although it could also run at any time. Basically it would 
 be able to read the replication state of each master region server, finish 
 replicating what's missing to all the slave, and then clear that state in 
 zookeeper.
 The code that handles replication does most of that already, see 
 ReplicationSourceManager and ReplicationSource. Basically when 
 ReplicationSourceManager.init() is called, it will check all the queues in ZK 
 and try to grab those that aren't attached to a region server. If the whole 
 cluster is down, it will grab all of them.
 The beautiful thing here is that you could start that tool on all your 
 machines and the load will be spread out, but that might not be a big concern 
 if replication wasn't lagging since it would take a few seconds to finish 
 replicating the missing data for each region server.
 I'm guessing when starting ReplicationSourceManager you'd give it a fake 
 region server ID, and you'd tell it not to start its own source.
 FWIW 

[jira] [Commented] (HBASE-8552) fix coverage org.apache.hadoop.hbase.rest.filter

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809707#comment-13809707
 ] 

Hudson commented on HBASE-8552:
---

SUCCESS: Integrated in HBase-TRUNK #4656 (See 
[https://builds.apache.org/job/HBase-TRUNK/4656/])
HBASE-8552: fix coverage org.apache.hadoop.hbase.rest.filter(by Andrey 
Klochkov) (jeffreyz: rev 1537197)
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/rest/TestGZIPResponseWrapper.java


 fix coverage org.apache.hadoop.hbase.rest.filter 
 -

 Key: HBASE-8552
 URL: https://issues.apache.org/jira/browse/HBASE-8552
 Project: HBase
  Issue Type: Test
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8552-0.94.patch, HBASE-8552-trunk--n2.patch, 
 HBASE-8552-trunk--n3.patch, HBASE-8552-trunk.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9822) IntegrationTestLazyCfLoading failed occasionally in a secure enviroment

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809708#comment-13809708
 ] 

Hudson commented on HBASE-9822:
---

SUCCESS: Integrated in HBase-TRUNK #4656 (See 
[https://builds.apache.org/job/HBase-TRUNK/4656/])
HBASE-9822: IntegrationTestLazyCfLoading failed occasionally in a secure 
enviroment (jeffreyz: rev 1537233)
* 
/hbase/trunk/hbase-it/src/test/java/org/apache/hadoop/hbase/IntegrationTestLazyCfLoading.java


 IntegrationTestLazyCfLoading failed occasionally in a secure enviroment
 ---

 Key: HBASE-9822
 URL: https://issues.apache.org/jira/browse/HBASE-9822
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.96.0
Reporter: Jeffrey Zhong
Assignee: Jeffrey Zhong
Priority: Trivial
 Fix For: 0.98.0, 0.96.1

 Attachments: hbase-9822.patch


 This test case failed in a secure deployment once with the following error. 
 It's due to a race condition between writers starts writes and table ACLs 
 propagation to region servers.  
 {code}
 2013-10-14 13:03:32,185 ERROR [HBaseWriterThread_8] 
 util.MultiThreadedWriterBase: Failed to insert: 10 after 167ms; region 
 information: cached: 
 region=IntegrationTestLazyCfLoading,bffd,1381755808862.456a11d22693f7dc27763c32e55521a8.,
  
 hostname=gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694,
  seqNum=1; cache is up to date; errors: exception from 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal:60020 for 
 d3d9446802a44259755d38e6d163e820-10
 E   org.apache.hadoop.hbase.security.AccessDeniedException: 
 org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient 
 permissions (table=IntegrationTestLazyCfLoading, family: essential:filter, 
 action=WRITE)
 
 {code}
 Writes were sent at 13:03:32,032
 {code}
 2013-10-14 13:03:32,032 WARN  [htable-pool11-t1] client.AsyncProcess: Attempt 
 #1/35 failed for 1 ops on 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694 NOT 
 resubmitting.
 {code}
 While the permission propagation happened at 13:03:32,109 on region server
 {code}
 2013-10-14 13:03:32,109 DEBUG [regionserver60020-EventThread] 
 access.ZKPermissionWatcher: Updating permissions cache from node 
 IntegrationTestLazyCfLoading with data: 
 PBUF\x0AA\x0A\x06hrt_qa\x127\x08\x033\x0A'\x0A\x07default\x12\x1CIntegrationTestLazyCfLoading
  \x00 \x01 \x02 \x03 \x04
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8552) fix coverage org.apache.hadoop.hbase.rest.filter

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809732#comment-13809732
 ] 

Hudson commented on HBASE-8552:
---

FAILURE: Integrated in HBase-0.94 #1190 (See 
[https://builds.apache.org/job/HBase-0.94/1190/])
HBASE-8552: fix coverage org.apache.hadoop.hbase.rest.filter(by Andrey 
Klochkov) (jeffreyz: rev 1537199)
* 
/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestGZIPResponseWrapper.java


 fix coverage org.apache.hadoop.hbase.rest.filter 
 -

 Key: HBASE-8552
 URL: https://issues.apache.org/jira/browse/HBASE-8552
 Project: HBase
  Issue Type: Test
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8552-0.94.patch, HBASE-8552-trunk--n2.patch, 
 HBASE-8552-trunk--n3.patch, HBASE-8552-trunk.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8557) fix coverage org.apache.hadoop.hbase.rest.metrics

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809733#comment-13809733
 ] 

Hudson commented on HBASE-8557:
---

FAILURE: Integrated in HBase-0.94 #1190 (See 
[https://builds.apache.org/job/HBase-0.94/1190/])
HBASE-8557: fix coverage org.apache.hadoop.hbase.rest.metrics(by Aleksey 
Gorshkov) (jeffreyz: rev 1537213)
* 
/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestRESTMetrics.java


 fix coverage org.apache.hadoop.hbase.rest.metrics
 -

 Key: HBASE-8557
 URL: https://issues.apache.org/jira/browse/HBASE-8557
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.9
Reporter: Aleksey Gorshkov
Assignee: Aleksey Gorshkov
 Fix For: 0.94.14

 Attachments: HBASE-8557-0.94.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8543) fix coverage org.apache.hadoop.hbase.rest.client

2013-10-30 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809758#comment-13809758
 ] 

Enis Soztutar commented on HBASE-8543:
--

Hey [~aklochkov] this looks ready to go in. Can you update the 0.94 patch as 
well, so that we can commit them together. Thanks. 

 fix coverage org.apache.hadoop.hbase.rest.client
 

 Key: HBASE-8543
 URL: https://issues.apache.org/jira/browse/HBASE-8543
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.8, 0.95.2
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8543-0.94--N2.patch, HBASE-8543-0.94.patch, 
 HBASE-8543-trunk--N2.patch, HBASE-8543-trunk--n3.patch, 
 HBASE-8543-trunk--n4.patch, HBASE-8543-trunk--n5.patch, 
 HBASE-8543-trunk--n6.patch, HBASE-8543-trunk.patch


 fix coverage org.apache.hadoop.hbase.rest.client



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9563) Autorestart doesn't work if zkcleaner fails

2013-10-30 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809757#comment-13809757
 ] 

stack commented on HBASE-9563:
--

[~enis] Wrong issue.  Ignore my comment.  [~eclark] What you think of Enis 
remark above?

 Autorestart doesn't work if zkcleaner fails
 ---

 Key: HBASE-9563
 URL: https://issues.apache.org/jira/browse/HBASE-9563
 Project: HBase
  Issue Type: Bug
Reporter: Elliott Clark
Assignee: stack
Priority: Critical
 Fix For: 0.98.0, 0.96.1

 Attachments: 9563.txt, 9563v2.txt, categorization.txt, 
 categorization.txt


 I've seen this several times where a master didn't autorestart because zk 
 cleaner failed.  We should still restart the daemon even if it's not possible 
 to clean the zk nodes.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-9860:
--

Status: Patch Available  (was: Open)

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-9860:
--

Attachment: 9860-v1.txt

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Assigned] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu reassigned HBASE-9860:
-

Assignee: Ted Yu

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Created] (HBASE-9865) WALEdit.heapSize() is incorrect in certain replication scenarios which may cause RegionServers to go OOM

2013-10-30 Thread churro morales (JIRA)
churro morales created HBASE-9865:
-

 Summary: WALEdit.heapSize() is incorrect in certain replication 
scenarios which may cause RegionServers to go OOM
 Key: HBASE-9865
 URL: https://issues.apache.org/jira/browse/HBASE-9865
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.95.0, 0.94.5
Reporter: churro morales


WALEdit.heapSize() is incorrect in certain replication scenarios which may 
cause RegionServers to go OOM.

A little background on this issue.  We noticed that our source replication 
regionservers would get into gc storms and sometimes even OOM. 
We noticed a case where it showed that there were around 25k WALEdits to 
replicate, each one with an ArrayList of KeyValues.  The array list had a 
capacity of around 90k (using 350KB of heap memory) but had around 6 non null 
entries.

When the ReplicationSource.readAllEntriesToReplicateOrNextFile() gets a WALEdit 
it removes all kv's that are scoped other than local.  

But in doing so we don't account for the capacity of the ArrayList when 
determining heapSize for a WALEdit.  The logic for shipping a batch is whether 
you have hit a size capacity or number of entries capacity.  

Therefore if have a WALEdit with 25k entries and suppose all are removed: 
The size of the arrayList is 0 (we don't even count the collection's heap size 
currently) but the capacity is ignored.
This will yield a heapSize() of 0 bytes while in the best case it would be at 
least 10 bytes (provided you pass initialCapacity and you have 32 bit JVM) 

I have some ideas on how to address this problem and want to know everyone's 
thoughts:

1. We use a probabalistic counter such as HyperLogLog and create something like:
* class CapacityEstimateArrayList implements ArrayList
** this class overrides all additive methods to update the 
probabalistic counts
** it includes one additional method called estimateCapacity 
(we would take estimateCapacity - size() and fill in sizes for all references)
* Then we can do something like this in WALEdit.heapSize:

{code}
  public long heapSize() {
long ret = ClassSize.ARRAYLIST;
for (KeyValue kv : kvs) {
  ret += kv.heapSize();
}
long nullEntriesEstimate = kvs.getCapacityEstimate() - kvs.size();
ret += ClassSize.align(nullEntriesEstimate * ClassSize.REFERENCE);
if (scopes != null) {
  ret += ClassSize.TREEMAP;
  ret += ClassSize.align(scopes.size() * ClassSize.MAP_ENTRY);
  // TODO this isn't quite right, need help here
}
return ret;
  } 
{code}

2. In ReplicationSource.removeNonReplicableEdits() we know the size of the 
array originally, and we provide some percentage threshold.  When that 
threshold is met (50% of the entries have been removed) we can call 
kvs.trimToSize()

3. in the heapSize() method for WALEdit we could use reflection (Please don't 
shoot me for this) to grab the actual capacity of the list.  Doing something 
like this:

{code}
public int getArrayListCapacity()  {
try {
  Field f = ArrayList.class.getDeclaredField(elementData);
  f.setAccessible(true);
  return ((Object[]) f.get(kvs)).length;
} catch (Exception e) {
  log.warn(Exception in trying to get capacity on ArrayList, e);
  return kvs.size();
}
{code}


I am partial to (1) using HyperLogLog and creating a CapacityEstimateArrayList, 
this is reusable throughout the code for other classes that implement HeapSize 
which contains ArrayLists.  The memory footprint is very small and it is very 
fast.  The issue is that this is an estimate, although we can configure the 
precision we most likely always be conservative.  The estimateCapacity will 
always be less than the actualCapacity, but it will be close. I think that 
putting the logic in removeNonReplicableEdits will work, but this only solves 
the heapSize problem in this particular scenario.  Solution 3 is slow and 
horrible but that gives us the exact answer.

I would love to hear if anyone else has any other ideas on how to remedy this 
problem?  I have code for trunk and 0.94 for all 3 ideas and can provide a 
patch if the community thinks any of these approaches is a viable one.





--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8543) fix coverage org.apache.hadoop.hbase.rest.client

2013-10-30 Thread Andrey Klochkov (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809774#comment-13809774
 ] 

Andrey Klochkov commented on HBASE-8543:


Yes, I'll update the 0.94 patch shortly.

 fix coverage org.apache.hadoop.hbase.rest.client
 

 Key: HBASE-8543
 URL: https://issues.apache.org/jira/browse/HBASE-8543
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.8, 0.95.2
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8543-0.94--N2.patch, HBASE-8543-0.94.patch, 
 HBASE-8543-trunk--N2.patch, HBASE-8543-trunk--n3.patch, 
 HBASE-8543-trunk--n4.patch, HBASE-8543-trunk--n5.patch, 
 HBASE-8543-trunk--n6.patch, HBASE-8543-trunk.patch


 fix coverage org.apache.hadoop.hbase.rest.client



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Resolved] (HBASE-9659) some integration tests can no longer be run using maven

2013-10-30 Thread Sergey Shelukhin (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9659?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergey Shelukhin resolved HBASE-9659.
-

Resolution: Fixed

 some integration tests can no longer be run using maven
 ---

 Key: HBASE-9659
 URL: https://issues.apache.org/jira/browse/HBASE-9659
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.96.0
Reporter: Sergey Shelukhin
Assignee: Sergey Shelukhin
 Fix For: 0.98.0, 0.96.1

 Attachments: HBASE-9659-v0-0.96.patch, HBASE-9659-v0.patch


 When I run mvn test (or verify) - Dtest=IntegrationTestIngest, the test fails 
 instantly, seemingly because initialization doesn't run. -I am assuming junit 
 is not picking before-after methods from the superclass-, could be some other 
 issue. 
 Also, if it does run, it won't be very useful because it runs with calm 
 monkey by default.
 We need to detect being run locally rather than as AbstractHBaseTool 
 (probably any time JUnit-annotated methods like Before are called), and set 
 up a different chaos monkey, such as an old default one.
 May also apply to other tests.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Created] (HBASE-9866) Support the mode where REST server authorizes proxy users

2013-10-30 Thread Devaraj Das (JIRA)
Devaraj Das created HBASE-9866:
--

 Summary: Support the mode where REST server authorizes proxy users
 Key: HBASE-9866
 URL: https://issues.apache.org/jira/browse/HBASE-9866
 Project: HBase
  Issue Type: Improvement
Reporter: Devaraj Das
Assignee: Devaraj Das
 Fix For: 0.96.1


In one use case, someone was trying to authorize with the REST server as a 
proxy user. That mode is not supported today. 
The curl request would be something like (assuming SPNEGO auth) - 
{noformat}
curl -i --negotiate -u : http://HOST:PORT/version/cluster?doas=USER
{noformat}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9295) Allow test-patch.sh to detect TreeMap keyed by byte[] which doesn't use proper comparator

2013-10-30 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809790#comment-13809790
 ] 

Ted Yu commented on HBASE-9295:
---

Can I interpret the above as +1 ?

 Allow test-patch.sh to detect TreeMap keyed by byte[] which doesn't use 
 proper comparator
 -

 Key: HBASE-9295
 URL: https://issues.apache.org/jira/browse/HBASE-9295
 Project: HBase
  Issue Type: Task
Reporter: Ted Yu
Assignee: Ted Yu
 Fix For: 0.98.0

 Attachments: 9295-v1.txt, 9295-v2.txt


 There were two recent bug fixes (HBASE-9285 and HBASE-9238) for the case 
 where the TreeMap keyed by byte[] doesn't use proper comparator:
 {code}
 new TreeMapbyte[], ...()
 {code}
 test-patch.sh should be able to detect this situation and report accordingly.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9865) WALEdit.heapSize() is incorrect in certain replication scenarios which may cause RegionServers to go OOM

2013-10-30 Thread Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809789#comment-13809789
 ] 

Ted Yu commented on HBASE-9865:
---

You may have seen this:
http://stackoverflow.com/questions/2497063/how-to-get-the-capacity-of-the-arraylist-in-java

 WALEdit.heapSize() is incorrect in certain replication scenarios which may 
 cause RegionServers to go OOM
 

 Key: HBASE-9865
 URL: https://issues.apache.org/jira/browse/HBASE-9865
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.94.5, 0.95.0
Reporter: churro morales

 WALEdit.heapSize() is incorrect in certain replication scenarios which may 
 cause RegionServers to go OOM.
 A little background on this issue.  We noticed that our source replication 
 regionservers would get into gc storms and sometimes even OOM. 
 We noticed a case where it showed that there were around 25k WALEdits to 
 replicate, each one with an ArrayList of KeyValues.  The array list had a 
 capacity of around 90k (using 350KB of heap memory) but had around 6 non null 
 entries.
 When the ReplicationSource.readAllEntriesToReplicateOrNextFile() gets a 
 WALEdit it removes all kv's that are scoped other than local.  
 But in doing so we don't account for the capacity of the ArrayList when 
 determining heapSize for a WALEdit.  The logic for shipping a batch is 
 whether you have hit a size capacity or number of entries capacity.  
 Therefore if have a WALEdit with 25k entries and suppose all are removed: 
 The size of the arrayList is 0 (we don't even count the collection's heap 
 size currently) but the capacity is ignored.
 This will yield a heapSize() of 0 bytes while in the best case it would be at 
 least 10 bytes (provided you pass initialCapacity and you have 32 bit 
 JVM) 
 I have some ideas on how to address this problem and want to know everyone's 
 thoughts:
 1. We use a probabalistic counter such as HyperLogLog and create something 
 like:
   * class CapacityEstimateArrayList implements ArrayList
   ** this class overrides all additive methods to update the 
 probabalistic counts
   ** it includes one additional method called estimateCapacity 
 (we would take estimateCapacity - size() and fill in sizes for all references)
   * Then we can do something like this in WALEdit.heapSize:
   
 {code}
   public long heapSize() {
 long ret = ClassSize.ARRAYLIST;
 for (KeyValue kv : kvs) {
   ret += kv.heapSize();
 }
 long nullEntriesEstimate = kvs.getCapacityEstimate() - kvs.size();
 ret += ClassSize.align(nullEntriesEstimate * ClassSize.REFERENCE);
 if (scopes != null) {
   ret += ClassSize.TREEMAP;
   ret += ClassSize.align(scopes.size() * ClassSize.MAP_ENTRY);
   // TODO this isn't quite right, need help here
 }
 return ret;
   }   
 {code}
 2. In ReplicationSource.removeNonReplicableEdits() we know the size of the 
 array originally, and we provide some percentage threshold.  When that 
 threshold is met (50% of the entries have been removed) we can call 
 kvs.trimToSize()
 3. in the heapSize() method for WALEdit we could use reflection (Please don't 
 shoot me for this) to grab the actual capacity of the list.  Doing something 
 like this:
 {code}
 public int getArrayListCapacity()  {
 try {
   Field f = ArrayList.class.getDeclaredField(elementData);
   f.setAccessible(true);
   return ((Object[]) f.get(kvs)).length;
 } catch (Exception e) {
   log.warn(Exception in trying to get capacity on ArrayList, e);
   return kvs.size();
 }
 {code}
 I am partial to (1) using HyperLogLog and creating a 
 CapacityEstimateArrayList, this is reusable throughout the code for other 
 classes that implement HeapSize which contains ArrayLists.  The memory 
 footprint is very small and it is very fast.  The issue is that this is an 
 estimate, although we can configure the precision we most likely always be 
 conservative.  The estimateCapacity will always be less than the 
 actualCapacity, but it will be close. I think that putting the logic in 
 removeNonReplicableEdits will work, but this only solves the heapSize problem 
 in this particular scenario.  Solution 3 is slow and horrible but that gives 
 us the exact answer.
 I would love to hear if anyone else has any other ideas on how to remedy this 
 problem?  I have code for trunk and 0.94 for all 3 ideas and can provide a 
 patch if the community thinks any of these approaches is a viable one.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8541) implement flush-into-stripes in stripe compactions

2013-10-30 Thread Enis Soztutar (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8541?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809791#comment-13809791
 ] 

Enis Soztutar commented on HBASE-8541:
--

forwarding my +1 from RB. 

 implement flush-into-stripes in stripe compactions
 --

 Key: HBASE-8541
 URL: https://issues.apache.org/jira/browse/HBASE-8541
 Project: HBase
  Issue Type: Sub-task
Reporter: Sergey Shelukhin
Assignee: Sergey Shelukhin
 Attachments: HBASE-8541-latest-with-dependencies.patch, 
 HBASE-8541-latest-with-dependencies.patch, 
 HBASE-8541-latest-with-dependencies.patch, 
 HBASE-8541-latest-with-dependencies.patch, HBASE-8541-v0.patch, 
 HBASE-8541-v1.patch, HBASE-8541-v2.patch, HBASE-8541-v3.patch, 
 HBASE-8541-v4.patch, HBASE-8541-v5.patch


 Flush will be able to flush into multiple files under this design, avoiding 
 L0 I/O amplification.
 I have the patch which is missing just one feature - support for concurrent 
 flushes and stripe changes. This can be done via extensive try-locking of 
 stripe changes and flushes, or advisory flags without blocking flushes, 
 dumping conflicting flushes into L0 in case of (very rare) collisions. For 
 file loading for the latter, a set-cover-like problem needs to be solved to 
 determine optimal stripes. That will also address Jimmy's concern of getting 
 rid of metadata, btw. However currently I don't have time for that. I plan to 
 attach the try-locking patch first, but this won't happen for a couple weeks 
 probably and should not block main reviews. Hopefully this will be added on 
 top of main reviews.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Jimmy Xiang (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809804#comment-13809804
 ] 

Jimmy Xiang commented on HBASE-9860:


If hri is not null, hri.getTable() should not be null, right?  Is it ok to 
remove hri.getTable() != null?

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-8543) fix coverage org.apache.hadoop.hbase.rest.client

2013-10-30 Thread Andrey Klochkov (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-8543?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrey Klochkov updated HBASE-8543:
---

Attachment: HBASE-8543-0.94--n6.patch

updating the 0.94 patch

 fix coverage org.apache.hadoop.hbase.rest.client
 

 Key: HBASE-8543
 URL: https://issues.apache.org/jira/browse/HBASE-8543
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.8, 0.95.2
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8543-0.94--N2.patch, HBASE-8543-0.94--n6.patch, 
 HBASE-8543-0.94.patch, HBASE-8543-trunk--N2.patch, 
 HBASE-8543-trunk--n3.patch, HBASE-8543-trunk--n4.patch, 
 HBASE-8543-trunk--n5.patch, HBASE-8543-trunk--n6.patch, HBASE-8543-trunk.patch


 fix coverage org.apache.hadoop.hbase.rest.client



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8543) fix coverage org.apache.hadoop.hbase.rest.client

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809807#comment-13809807
 ] 

Hadoop QA commented on HBASE-8543:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  
http://issues.apache.org/jira/secure/attachment/12611220/HBASE-8543-0.94--n6.patch
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 7 new 
or modified tests.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7682//console

This message is automatically generated.

 fix coverage org.apache.hadoop.hbase.rest.client
 

 Key: HBASE-8543
 URL: https://issues.apache.org/jira/browse/HBASE-8543
 Project: HBase
  Issue Type: Test
Affects Versions: 0.94.8, 0.95.2
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8543-0.94--N2.patch, HBASE-8543-0.94--n6.patch, 
 HBASE-8543-0.94.patch, HBASE-8543-trunk--N2.patch, 
 HBASE-8543-trunk--n3.patch, HBASE-8543-trunk--n4.patch, 
 HBASE-8543-trunk--n5.patch, HBASE-8543-trunk--n6.patch, HBASE-8543-trunk.patch


 fix coverage org.apache.hadoop.hbase.rest.client



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9865) WALEdit.heapSize() is incorrect in certain replication scenarios which may cause RegionServers to go OOM

2013-10-30 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809826#comment-13809826
 ] 

Lars Hofhansl commented on HBASE-9865:
--

So if I understand this correctly the gist of the problem is that we're reusing 
the WALEdits (see ReplicationHLogReaderManager.readNextAndSetPosition reusing 
entriesArray), and thus their internal kvs ArrayList can only grow and never 
shrink. Some of the WALEdits can have a large list of KVs if they were created 
by a batch operation.

Calculating the correct heapsize would be pasting over the problem (I think). 
We should ensure that at some point we can reduce the capacity of the internal 
kvs array of the reused WALEdit.

The right point seems to be where the WALEdits are reused for reading. We could 
look at WALEdit.readFields. There we clear the kvs list (which does not reduce 
its capacity of course).

It's not immediately clear to me what the correct solution is. We do not always 
want to reset the capacity since that is expensive too and the next time we'll 
need to recreate the internal array.

Upon reuse in WALEdit.readFields, we could check the current size before we 
call clear, then if the new size is (say)  twice the required size call 
trimToSize() (which will set capacity to 0). I also think a WALEdit should 
start with the kvs ArrayList of capacity 1 (rather than the default of 16).

Or we could a probabilistic approach and reset the ArrayList with a probability 
proportional to the previous size.


 WALEdit.heapSize() is incorrect in certain replication scenarios which may 
 cause RegionServers to go OOM
 

 Key: HBASE-9865
 URL: https://issues.apache.org/jira/browse/HBASE-9865
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.94.5, 0.95.0
Reporter: churro morales

 WALEdit.heapSize() is incorrect in certain replication scenarios which may 
 cause RegionServers to go OOM.
 A little background on this issue.  We noticed that our source replication 
 regionservers would get into gc storms and sometimes even OOM. 
 We noticed a case where it showed that there were around 25k WALEdits to 
 replicate, each one with an ArrayList of KeyValues.  The array list had a 
 capacity of around 90k (using 350KB of heap memory) but had around 6 non null 
 entries.
 When the ReplicationSource.readAllEntriesToReplicateOrNextFile() gets a 
 WALEdit it removes all kv's that are scoped other than local.  
 But in doing so we don't account for the capacity of the ArrayList when 
 determining heapSize for a WALEdit.  The logic for shipping a batch is 
 whether you have hit a size capacity or number of entries capacity.  
 Therefore if have a WALEdit with 25k entries and suppose all are removed: 
 The size of the arrayList is 0 (we don't even count the collection's heap 
 size currently) but the capacity is ignored.
 This will yield a heapSize() of 0 bytes while in the best case it would be at 
 least 10 bytes (provided you pass initialCapacity and you have 32 bit 
 JVM) 
 I have some ideas on how to address this problem and want to know everyone's 
 thoughts:
 1. We use a probabalistic counter such as HyperLogLog and create something 
 like:
   * class CapacityEstimateArrayList implements ArrayList
   ** this class overrides all additive methods to update the 
 probabalistic counts
   ** it includes one additional method called estimateCapacity 
 (we would take estimateCapacity - size() and fill in sizes for all references)
   * Then we can do something like this in WALEdit.heapSize:
   
 {code}
   public long heapSize() {
 long ret = ClassSize.ARRAYLIST;
 for (KeyValue kv : kvs) {
   ret += kv.heapSize();
 }
 long nullEntriesEstimate = kvs.getCapacityEstimate() - kvs.size();
 ret += ClassSize.align(nullEntriesEstimate * ClassSize.REFERENCE);
 if (scopes != null) {
   ret += ClassSize.TREEMAP;
   ret += ClassSize.align(scopes.size() * ClassSize.MAP_ENTRY);
   // TODO this isn't quite right, need help here
 }
 return ret;
   }   
 {code}
 2. In ReplicationSource.removeNonReplicableEdits() we know the size of the 
 array originally, and we provide some percentage threshold.  When that 
 threshold is met (50% of the entries have been removed) we can call 
 kvs.trimToSize()
 3. in the heapSize() method for WALEdit we could use reflection (Please don't 
 shoot me for this) to grab the actual capacity of the list.  Doing something 
 like this:
 {code}
 public int getArrayListCapacity()  {
 try {
   Field f = ArrayList.class.getDeclaredField(elementData);
   f.setAccessible(true);
   return ((Object[]) f.get(kvs)).length;
 } catch (Exception e) {
   log.warn(Exception in trying to get 

[jira] [Updated] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Ted Yu (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Yu updated HBASE-9860:
--

Attachment: 9860-v2.txt

Patch v2 addresses comment above.

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt, 9860-v2.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9865) WALEdit.heapSize() is incorrect in certain replication scenarios which may cause RegionServers to go OOM

2013-10-30 Thread Lars Hofhansl (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9865?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lars Hofhansl updated HBASE-9865:
-

Attachment: 9865-sample.txt

Something like this, maybe? Resets a WALEdit's size when we detect  99% 
wastage. This does not have to be perfect, as long as we eventually clear out 
the extreme outliers.

 WALEdit.heapSize() is incorrect in certain replication scenarios which may 
 cause RegionServers to go OOM
 

 Key: HBASE-9865
 URL: https://issues.apache.org/jira/browse/HBASE-9865
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.94.5, 0.95.0
Reporter: churro morales
 Attachments: 9865-sample.txt


 WALEdit.heapSize() is incorrect in certain replication scenarios which may 
 cause RegionServers to go OOM.
 A little background on this issue.  We noticed that our source replication 
 regionservers would get into gc storms and sometimes even OOM. 
 We noticed a case where it showed that there were around 25k WALEdits to 
 replicate, each one with an ArrayList of KeyValues.  The array list had a 
 capacity of around 90k (using 350KB of heap memory) but had around 6 non null 
 entries.
 When the ReplicationSource.readAllEntriesToReplicateOrNextFile() gets a 
 WALEdit it removes all kv's that are scoped other than local.  
 But in doing so we don't account for the capacity of the ArrayList when 
 determining heapSize for a WALEdit.  The logic for shipping a batch is 
 whether you have hit a size capacity or number of entries capacity.  
 Therefore if have a WALEdit with 25k entries and suppose all are removed: 
 The size of the arrayList is 0 (we don't even count the collection's heap 
 size currently) but the capacity is ignored.
 This will yield a heapSize() of 0 bytes while in the best case it would be at 
 least 10 bytes (provided you pass initialCapacity and you have 32 bit 
 JVM) 
 I have some ideas on how to address this problem and want to know everyone's 
 thoughts:
 1. We use a probabalistic counter such as HyperLogLog and create something 
 like:
   * class CapacityEstimateArrayList implements ArrayList
   ** this class overrides all additive methods to update the 
 probabalistic counts
   ** it includes one additional method called estimateCapacity 
 (we would take estimateCapacity - size() and fill in sizes for all references)
   * Then we can do something like this in WALEdit.heapSize:
   
 {code}
   public long heapSize() {
 long ret = ClassSize.ARRAYLIST;
 for (KeyValue kv : kvs) {
   ret += kv.heapSize();
 }
 long nullEntriesEstimate = kvs.getCapacityEstimate() - kvs.size();
 ret += ClassSize.align(nullEntriesEstimate * ClassSize.REFERENCE);
 if (scopes != null) {
   ret += ClassSize.TREEMAP;
   ret += ClassSize.align(scopes.size() * ClassSize.MAP_ENTRY);
   // TODO this isn't quite right, need help here
 }
 return ret;
   }   
 {code}
 2. In ReplicationSource.removeNonReplicableEdits() we know the size of the 
 array originally, and we provide some percentage threshold.  When that 
 threshold is met (50% of the entries have been removed) we can call 
 kvs.trimToSize()
 3. in the heapSize() method for WALEdit we could use reflection (Please don't 
 shoot me for this) to grab the actual capacity of the list.  Doing something 
 like this:
 {code}
 public int getArrayListCapacity()  {
 try {
   Field f = ArrayList.class.getDeclaredField(elementData);
   f.setAccessible(true);
   return ((Object[]) f.get(kvs)).length;
 } catch (Exception e) {
   log.warn(Exception in trying to get capacity on ArrayList, e);
   return kvs.size();
 }
 {code}
 I am partial to (1) using HyperLogLog and creating a 
 CapacityEstimateArrayList, this is reusable throughout the code for other 
 classes that implement HeapSize which contains ArrayLists.  The memory 
 footprint is very small and it is very fast.  The issue is that this is an 
 estimate, although we can configure the precision we most likely always be 
 conservative.  The estimateCapacity will always be less than the 
 actualCapacity, but it will be close. I think that putting the logic in 
 removeNonReplicableEdits will work, but this only solves the heapSize problem 
 in this particular scenario.  Solution 3 is slow and horrible but that gives 
 us the exact answer.
 I would love to hear if anyone else has any other ideas on how to remedy this 
 problem?  I have code for trunk and 0.94 for all 3 ideas and can provide a 
 patch if the community thinks any of these approaches is a viable one.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8369) MapReduce over snapshot files

2013-10-30 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8369?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809829#comment-13809829
 ] 

Lars Hofhansl commented on HBASE-8369:
--

If you make a 0.94 patch I'll offer to try on a real cluster :)

 MapReduce over snapshot files
 -

 Key: HBASE-8369
 URL: https://issues.apache.org/jira/browse/HBASE-8369
 Project: HBase
  Issue Type: New Feature
  Components: mapreduce, snapshots
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.0

 Attachments: HBASE-8369-0.94.patch, HBASE-8369-0.94_v2.patch, 
 HBASE-8369-0.94_v3.patch, HBASE-8369-0.94_v4.patch, HBASE-8369-0.94_v5.patch, 
 HBASE-8369-trunk_v1.patch, HBASE-8369-trunk_v2.patch, 
 HBASE-8369-trunk_v3.patch, hbase-8369_v0.patch, hbase-8369_v5.patch, 
 hbase-8369_v6.patch


 The idea is to add an InputFormat, which can run the mapreduce job over 
 snapshot files directly bypassing hbase server layer. The IF is similar in 
 usage to TableInputFormat, taking a Scan object from the user, but instead of 
 running from an online table, it runs from a table snapshot. We do one split 
 per region in the snapshot, and open an HRegion inside the RecordReader. A 
 RegionScanner is used internally for doing the scan without any HRegionServer 
 bits. 
 Users have been asking and searching for ways to run MR jobs by reading 
 directly from hfiles, so this allows new use cases if reading from stale data 
 is ok:
  - Take snapshots periodically, and run MR jobs only on snapshots.
  - Export snapshots to remote hdfs cluster, run the MR jobs at that cluster 
 without HBase cluster.
  - (Future use case) Combine snapshot data with online hbase data: Scan from 
 yesterday's snapshot, but read today's data from online hbase cluster. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809831#comment-13809831
 ] 

Hadoop QA commented on HBASE-9860:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611211/9860-v1.txt
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 3 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7681//console

This message is automatically generated.

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt, 9860-v2.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Jimmy Xiang (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809837#comment-13809837
 ] 

Jimmy Xiang commented on HBASE-9860:


+1

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt, 9860-v2.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9822) IntegrationTestLazyCfLoading failed occasionally in a secure enviroment

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809838#comment-13809838
 ] 

Hudson commented on HBASE-9822:
---

FAILURE: Integrated in hbase-0.96 #171 (See 
[https://builds.apache.org/job/hbase-0.96/171/])
HBASE-9822: IntegrationTestLazyCfLoading failed occasionally in a secure 
enviroment (jeffreyz: rev 1537239)
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/IntegrationTestLazyCfLoading.java


 IntegrationTestLazyCfLoading failed occasionally in a secure enviroment
 ---

 Key: HBASE-9822
 URL: https://issues.apache.org/jira/browse/HBASE-9822
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.96.0
Reporter: Jeffrey Zhong
Assignee: Jeffrey Zhong
Priority: Trivial
 Fix For: 0.98.0, 0.96.1

 Attachments: hbase-9822.patch


 This test case failed in a secure deployment once with the following error. 
 It's due to a race condition between writers starts writes and table ACLs 
 propagation to region servers.  
 {code}
 2013-10-14 13:03:32,185 ERROR [HBaseWriterThread_8] 
 util.MultiThreadedWriterBase: Failed to insert: 10 after 167ms; region 
 information: cached: 
 region=IntegrationTestLazyCfLoading,bffd,1381755808862.456a11d22693f7dc27763c32e55521a8.,
  
 hostname=gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694,
  seqNum=1; cache is up to date; errors: exception from 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal:60020 for 
 d3d9446802a44259755d38e6d163e820-10
 E   org.apache.hadoop.hbase.security.AccessDeniedException: 
 org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient 
 permissions (table=IntegrationTestLazyCfLoading, family: essential:filter, 
 action=WRITE)
 
 {code}
 Writes were sent at 13:03:32,032
 {code}
 2013-10-14 13:03:32,032 WARN  [htable-pool11-t1] client.AsyncProcess: Attempt 
 #1/35 failed for 1 ops on 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694 NOT 
 resubmitting.
 {code}
 While the permission propagation happened at 13:03:32,109 on region server
 {code}
 2013-10-14 13:03:32,109 DEBUG [regionserver60020-EventThread] 
 access.ZKPermissionWatcher: Updating permissions cache from node 
 IntegrationTestLazyCfLoading with data: 
 PBUF\x0AA\x0A\x06hrt_qa\x127\x08\x033\x0A'\x0A\x07default\x12\x1CIntegrationTestLazyCfLoading
  \x00 \x01 \x02 \x03 \x04
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Updated] (HBASE-9866) Support the mode where REST server authorizes proxy users

2013-10-30 Thread Devaraj Das (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-9866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Devaraj Das updated HBASE-9866:
---

Attachment: 9866-1.txt

First version of the patch.

 Support the mode where REST server authorizes proxy users
 -

 Key: HBASE-9866
 URL: https://issues.apache.org/jira/browse/HBASE-9866
 Project: HBase
  Issue Type: Improvement
Reporter: Devaraj Das
Assignee: Devaraj Das
 Fix For: 0.96.1

 Attachments: 9866-1.txt


 In one use case, someone was trying to authorize with the REST server as a 
 proxy user. That mode is not supported today. 
 The curl request would be something like (assuming SPNEGO auth) - 
 {noformat}
 curl -i --negotiate -u : http://HOST:PORT/version/cluster?doas=USER
 {noformat}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-3787) Increment is non-idempotent but client retries RPC

2013-10-30 Thread Sergey Shelukhin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-3787?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809853#comment-13809853
 ] 

Sergey Shelukhin commented on HBASE-3787:
-

trying to grok rpc changes, sent some email to Nicolas. Will maybe update by EOW

 Increment is non-idempotent but client retries RPC
 --

 Key: HBASE-3787
 URL: https://issues.apache.org/jira/browse/HBASE-3787
 Project: HBase
  Issue Type: Bug
  Components: Client
Affects Versions: 0.94.4, 0.95.2
Reporter: dhruba borthakur
Assignee: Sergey Shelukhin
Priority: Blocker
 Attachments: HBASE-3787-partial.patch, HBASE-3787-v0.patch, 
 HBASE-3787-v1.patch, HBASE-3787-v2.patch, HBASE-3787-v3.patch, 
 HBASE-3787-v4.patch, HBASE-3787-v5.patch, HBASE-3787-v5.patch


 The HTable.increment() operation is non-idempotent. The client retries the 
 increment RPC a few times (as specified by configuration) before throwing an 
 error to the application. This makes it possible that the same increment call 
 be applied twice at the server.
 For increment operations, is it better to use 
 HConnectionManager.getRegionServerWithoutRetries()? Another  option would be 
 to enhance the IPC module to make the RPC server correctly identify if the 
 RPC is a retry attempt and handle accordingly.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9822) IntegrationTestLazyCfLoading failed occasionally in a secure enviroment

2013-10-30 Thread Sergey Shelukhin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809857#comment-13809857
 ] 

Sergey Shelukhin commented on HBASE-9822:
-

Hmm... doesn't this indicate a real (albeit small) problem?
Insufficient permission is not retriable so app code against HBase could run 
into the same problem. So table is created but not really ready when create 
ends.

 IntegrationTestLazyCfLoading failed occasionally in a secure enviroment
 ---

 Key: HBASE-9822
 URL: https://issues.apache.org/jira/browse/HBASE-9822
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.96.0
Reporter: Jeffrey Zhong
Assignee: Jeffrey Zhong
Priority: Trivial
 Fix For: 0.98.0, 0.96.1

 Attachments: hbase-9822.patch


 This test case failed in a secure deployment once with the following error. 
 It's due to a race condition between writers starts writes and table ACLs 
 propagation to region servers.  
 {code}
 2013-10-14 13:03:32,185 ERROR [HBaseWriterThread_8] 
 util.MultiThreadedWriterBase: Failed to insert: 10 after 167ms; region 
 information: cached: 
 region=IntegrationTestLazyCfLoading,bffd,1381755808862.456a11d22693f7dc27763c32e55521a8.,
  
 hostname=gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694,
  seqNum=1; cache is up to date; errors: exception from 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal:60020 for 
 d3d9446802a44259755d38e6d163e820-10
 E   org.apache.hadoop.hbase.security.AccessDeniedException: 
 org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient 
 permissions (table=IntegrationTestLazyCfLoading, family: essential:filter, 
 action=WRITE)
 
 {code}
 Writes were sent at 13:03:32,032
 {code}
 2013-10-14 13:03:32,032 WARN  [htable-pool11-t1] client.AsyncProcess: Attempt 
 #1/35 failed for 1 ops on 
 gs-hdp2-secure-1381732260-hbase-8.cs1cloud.internal,60020,1381755752694 NOT 
 resubmitting.
 {code}
 While the permission propagation happened at 13:03:32,109 on region server
 {code}
 2013-10-14 13:03:32,109 DEBUG [regionserver60020-EventThread] 
 access.ZKPermissionWatcher: Updating permissions cache from node 
 IntegrationTestLazyCfLoading with data: 
 PBUF\x0AA\x0A\x06hrt_qa\x127\x08\x033\x0A'\x0A\x07default\x12\x1CIntegrationTestLazyCfLoading
  \x00 \x01 \x02 \x03 \x04
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9360) Enable 0.94 - 0.96 replication to minimize upgrade down time

2013-10-30 Thread Jeffrey Zhong (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9360?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809858#comment-13809858
 ] 

Jeffrey Zhong commented on HBASE-9360:
--

I did a prototype @https://github.com/hortonworks/HBaseReplicationBridgeServer 
and tested replication from a 0.94 cluster to a 0.96 cluster.

The remaining work is to bring the slave cluster to a good base(which we're 
currently using CopyTable) when setting up replication.  

h6. Support import from a 0.94 export sequence file. 
Currently we PBed org.apache.hadoop.hbase.client.Result so a 0.96 cluster 
cannot import 0.94 exported files while we can easily add that support. 
(personal preferred option)

h6. Use snapshot without any code changes:
1) Setup replication without starting replication bridge server so source 
cluster is queuing WALs
2) Use Snapshot to bring destination cluster to a good base
3) Starts replication bridge servers to drain WALs queued up from step 1

h6. Enable CopyTable against Replication Bridge Server
This option is least desired one because it will involves significant code 
changes to have a faked root znode, support root table scan, support meta table 
scan, delete and multi command in replication bridge server.



 Enable 0.94 - 0.96 replication to minimize upgrade down time
 -

 Key: HBASE-9360
 URL: https://issues.apache.org/jira/browse/HBASE-9360
 Project: HBase
  Issue Type: Brainstorming
  Components: migration
Affects Versions: 0.98.0, 0.96.0
Reporter: Jeffrey Zhong

 As we know 0.96 is a singularity release, as of today a 0.94 hbase user has 
 to do in-place upgrade: make corresponding client changes, recompile client 
 application code, fully shut down existing 0.94 hbase cluster, deploy 0.96 
 binary, run upgrade script and then start the upgraded cluster. You can image 
 the down time will be extended if something is wrong in between. 
 To minimize the down time, another possible way is to setup a secondary 0.96 
 cluster and then setup replication between the existing 0.94 cluster and the 
 new 0.96 slave cluster. Once the 0.96 cluster is synced, a user can switch 
 the traffic to the 0.96 cluster and decommission the old one.
 The ideal steps will be:
 1) Setup a 0.96 cluster
 2) Setup replication between a running 0.94 cluster to the newly created 0.96 
 cluster
 3) Wait till they're in sync in replication
 4) Starts duplicated writes to both 0.94 and 0.96 clusters(could stop 
 relocation now)
 5) Forward read traffic to the slave 0.96 cluster
 6) After a certain period, stop writes to the original 0.94 cluster if 
 everything is good and completes upgrade
 To get us there, there are two tasks:
 1) Enable replication from 0.94 - 0.96
 I've run the idea with [~jdcryans], [~devaraj] and [~ndimiduk]. Currently it 
 seems the best approach is to build a very similar service or on top of 
 https://github.com/NGDATA/hbase-indexer/tree/master/hbase-sep with support 
 three commands replicateLogEntries, multi and delete. Inside the three 
 commands, we just pass down the corresponding requests to the destination 
 0.96 cluster as a bridge. The reason to support the multi and delete is for 
 CopyTable to copy data from a 0.94 cluster to a 0.96 one.
 The other approach is to provide limited support of 0.94 RPC protocol in 
 0.96. While an issue on this is that a 0.94 client needs to talk to zookeeper 
 firstly before it can connect to a 0.96 region server. Therefore, we need a 
 faked Zookeeper setup in front of a 0.96 cluster for a 0.94 client to 
 connect. It may also pollute 0.96 code base with 0.94 RPC code.
 2) To support writes to a 0.96 cluster and a 0.94 at the same time, we need 
 to load both hbase clients into one single JVM using different class loader.
 Let me know if you think this is worth to do and any better approach we could 
 take.
 Thanks!



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9860) Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to NullPointerException

2013-10-30 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9860?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809868#comment-13809868
 ] 

Hadoop QA commented on HBASE-9860:
--

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12611224/9860-v2.txt
  against trunk revision .

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 3 new 
or modified tests.

{color:green}+1 hadoop1.0{color}.  The patch compiles against the hadoop 
1.0 profile.

{color:green}+1 hadoop2.0{color}.  The patch compiles against the hadoop 
2.0 profile.

{color:green}+1 javadoc{color}.  The javadoc tool did not generate any 
warning messages.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:red}-1 findbugs{color}.  The patch appears to introduce 1 new 
Findbugs (version 1.3.9) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:green}+1 lineLengths{color}.  The patch does not introduce lines 
longer than 100

{color:red}-1 site{color}.  The patch appears to cause mvn site goal to 
fail.

{color:green}+1 core tests{color}.  The patch passed unit tests in .

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-thrift.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/7683//console

This message is automatically generated.

 Intermittent TestHBaseFsck#testMissingRegionInfoQualifier failure due to 
 NullPointerException
 -

 Key: HBASE-9860
 URL: https://issues.apache.org/jira/browse/HBASE-9860
 Project: HBase
  Issue Type: Test
Reporter: Ted Yu
Assignee: Ted Yu
 Attachments: 9860-v1.txt, 9860-v2.txt


 From 
 https://builds.apache.org/job/hbase-0.96-hadoop2/105/testReport/junit/org.apache.hadoop.hbase.util/TestHBaseFsck/testMissingRegionInfoQualifier/
  :
 {code}
 java.lang.NullPointerException
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck$4.processRow(TestHBaseFsck.java:1891)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:179)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:105)
   at 
 org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:65)
   at 
 org.apache.hadoop.hbase.util.TestHBaseFsck.testMissingRegionInfoQualifier(TestHBaseFsck.java:1887)
 {code}
 Looks like MetaScanner.getHRegionInfo() returned null below:
 {code}
 public boolean processRow(Result rowResult) throws IOException {  
 if(!MetaScanner.getHRegionInfo(rowResult).getTable().isSystemTable()) {
 {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9000) Linear reseek in Memstore

2013-10-30 Thread Chao Shi (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809870#comment-13809870
 ] 

Chao Shi commented on HBASE-9000:
-

bq. 'reseek to next row' gets slower with patch. If linear.search.limit is 
lowered, would the slow down be less ?

Yes, the optimal value should vary case by case. I think a default value of 5 
should not add much observable overhead.

I think a long-term solution would be implementing our own version of lock-free 
skip-list, where we can access its higher-level of next pointers (i.e. to skip) 
from the current position. This patch could be a temporary solution for now, as 
it is very simple.

 Linear reseek in Memstore
 -

 Key: HBASE-9000
 URL: https://issues.apache.org/jira/browse/HBASE-9000
 Project: HBase
  Issue Type: Improvement
Affects Versions: 0.89-fb
Reporter: Shane Hogan
Priority: Minor
 Fix For: 0.89-fb

 Attachments: hbase-9000-benchmark-program.patch, 
 hbase-9000-port-fb.patch


 This is to address the linear reseek in MemStoreScanner. Currently reseek 
 iterates over the kvset and the snapshot linearly by just calling next 
 repeatedly. The new solution is to do this linear seek up to a configurable 
 maximum amount of times then if the seek is not yet complete fall back to 
 logarithmic seek.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-9659) some integration tests can no longer be run using maven

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-9659?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809878#comment-13809878
 ] 

Hudson commented on HBASE-9659:
---

SUCCESS: Integrated in hbase-0.96-hadoop2 #107 (See 
[https://builds.apache.org/job/hbase-0.96-hadoop2/107/])
HBASE-9659 some integration tests can no longer be run using maven (sershe: rev 
1537352)
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/IntegrationTestBase.java
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/IntegrationTestIngest.java
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/factories/MonkeyFactory.java
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/mapreduce/IntegrationTestBulkLoad.java
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/test/IntegrationTestBigLinkedList.java
* 
/hbase/branches/0.96/hbase-it/src/test/java/org/apache/hadoop/hbase/test/IntegrationTestLoadAndVerify.java


 some integration tests can no longer be run using maven
 ---

 Key: HBASE-9659
 URL: https://issues.apache.org/jira/browse/HBASE-9659
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.96.0
Reporter: Sergey Shelukhin
Assignee: Sergey Shelukhin
 Fix For: 0.98.0, 0.96.1

 Attachments: HBASE-9659-v0-0.96.patch, HBASE-9659-v0.patch


 When I run mvn test (or verify) - Dtest=IntegrationTestIngest, the test fails 
 instantly, seemingly because initialization doesn't run. -I am assuming junit 
 is not picking before-after methods from the superclass-, could be some other 
 issue. 
 Also, if it does run, it won't be very useful because it runs with calm 
 monkey by default.
 We need to detect being run locally rather than as AbstractHBaseTool 
 (probably any time JUnit-annotated methods like Before are called), and set 
 up a different chaos monkey, such as an old default one.
 May also apply to other tests.



--
This message was sent by Atlassian JIRA
(v6.1#6144)


[jira] [Commented] (HBASE-8552) fix coverage org.apache.hadoop.hbase.rest.filter

2013-10-30 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-8552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13809877#comment-13809877
 ] 

Hudson commented on HBASE-8552:
---

SUCCESS: Integrated in hbase-0.96-hadoop2 #107 (See 
[https://builds.apache.org/job/hbase-0.96-hadoop2/107/])
HBASE-8552: fix coverage org.apache.hadoop.hbase.rest.filter(by Andrey 
Klochkov) (jeffreyz: rev 1537198)
* 
/hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/rest/TestGZIPResponseWrapper.java


 fix coverage org.apache.hadoop.hbase.rest.filter 
 -

 Key: HBASE-8552
 URL: https://issues.apache.org/jira/browse/HBASE-8552
 Project: HBase
  Issue Type: Test
Reporter: Aleksey Gorshkov
Assignee: Andrey Klochkov
 Fix For: 0.98.0, 0.96.1, 0.94.14

 Attachments: HBASE-8552-0.94.patch, HBASE-8552-trunk--n2.patch, 
 HBASE-8552-trunk--n3.patch, HBASE-8552-trunk.patch






--
This message was sent by Atlassian JIRA
(v6.1#6144)


  1   2   >