[jira] [Commented] (HBASE-13917) Remove string comparison to identify request priority

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-13917:


bq. let's wait a couple of weeks before backporting it on all the other 
branches. I may have other changes around this stuff. 
Ok, I opened HBASE-13941 for that

 Remove string comparison to identify request priority
 -

 Key: HBASE-13917
 URL: https://issues.apache.org/jira/browse/HBASE-13917
 Project: HBase
  Issue Type: Improvement
  Components: regionserver
Reporter: Matteo Bertozzi
Assignee: Matteo Bertozzi
Priority: Minor
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13917-v0.patch


 We have a couple of if (methodName.equalsIgnoreCase(scan)) { ScanRequest 
 req = (ScanRequest)parm; } we can replace that string comparison with an 
 instanceof



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


[jira] [Created] (HBASE-13941) Backport HBASE-13917 (Remove string comparison to identify request priority) to release branches

2015-06-19 Thread Andrew Purtell (JIRA)
Andrew Purtell created HBASE-13941:
--

 Summary: Backport HBASE-13917 (Remove string comparison to 
identify request priority) to release branches
 Key: HBASE-13941
 URL: https://issues.apache.org/jira/browse/HBASE-13941
 Project: HBase
  Issue Type: Task
Reporter: Andrew Purtell
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1


Backport HBASE-13917 (Remove string comparison to identify request priority) to 
release branches.



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


[jira] [Commented] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das commented on HBASE-13938:
-

+1

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
Assignee: Enis Soztutar
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt, hbase-13938_v2-branch-1.1.patch, 
 hbase-13938_v3-branch-1.1.patch


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-13937:


bq. We will not treat exceptions coming from server ping differently, but 
instead will keep retrying to ping.
Reply

Looking at the V2 patch. So we check once if the server is in the dead list and 
then proceed to ping. This patch hoists out this check:
{code}
+  synchronized (this.onlineServers) {
+if (this.deadservers.isDeadServer(server)) {
+  return false;
+}
+  }
{code}
that HBASE-13172 put into the ping loop. We retain this change from HBASE-13172:
{code}
@@ -851,13 +858,21 @@ public class ServerManager {
   return info != null  info.hasServerName()
  server.getStartcode() == info.getServerName().getStartCode();
 }
+  } catch (RegionServerStoppedException | ServerNotRunningYetException e) {
+if (LOG.isDebugEnabled()) {
+  LOG.debug(Couldn't reach  + server, e);
+}
+break;
   } catch (IOException ioe) {
-LOG.debug(Couldn't reach  + server + , try= + 
retryCounter.getAttemptTimes()
-  +  of  + retryCounter.getMaxAttempts(), ioe);
+if (LOG.isDebugEnabled()) {
+  LOG.debug(Couldn't reach  + server + , try= + 
retryCounter.getAttemptTimes() +  of 
+  + retryCounter.getMaxAttempts(), ioe);
+}
 try {
   retryCounter.sleepUntilNextRetry();
 } catch(InterruptedException ie) {
   Thread.currentThread().interrupt();
+  break;
 }
   }
 }
{code}
that breaks out of the ping loop if we catch RegionServerStoppedException or 
ServerNotRunningYetException.

This lgtm for application to 0.98, modulo the multicatch (Java 7+ only) will 
need to be converted to equivalent Java 6 idiom.

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Stephen Yuan Jiang (JIRA)

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

Stephen Yuan Jiang commented on HBASE-13935:


[~jerryhe]  This is from system test run.  After forcing to create the table, 
the create table actually succeeded.  And the most important thing is that we 
need to start master.

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Commented] (HBASE-13832) Procedure V2: master fail to start due to WALProcedureStore sync failures when HDFS data nodes count is low

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar commented on HBASE-13832:
---

Thanks Matteo, I'll take a look. 

 Procedure V2: master fail to start due to WALProcedureStore sync failures 
 when HDFS data nodes count is low
 ---

 Key: HBASE-13832
 URL: https://issues.apache.org/jira/browse/HBASE-13832
 Project: HBase
  Issue Type: Sub-task
  Components: master, proc-v2
Affects Versions: 2.0.0, 1.1.0, 1.2.0
Reporter: Stephen Yuan Jiang
Assignee: Matteo Bertozzi
 Attachments: HBASE-13832-v0.patch, HDFSPipeline.java


 when the data node  3, we got failure in WALProcedureStore#syncLoop() during 
 master start.  The failure prevents master to get started.  
 {noformat}
 2015-05-29 13:27:16,625 ERROR [WALProcedureStoreSyncThread] 
 wal.WALProcedureStore: Sync slot failed, abort.
 java.io.IOException: Failed to replace a bad datanode on the existing 
 pipeline due to no more good datanodes being available to try. (Nodes: 
 current=[DatanodeInfoWithStorage[10.333.444.555:50010,DS-3ced-93f4-47b6-9c23-1426f7a6acdc,DISK],
  
 DatanodeInfoWithStorage[10.222.666.777:50010,DS-f9c983b4-1f10-4d5e-8983-490ece56c772,DISK]],
  
 original=[DatanodeInfoWithStorage[10.333.444.555:50010,DS-3ced-93f4-47b6-9c23-1426f7a6acdc,DISK],
  DatanodeInfoWithStorage[10.222.666.777:50010,DS-f9c983b4-1f10-4d5e-8983-
 490ece56c772,DISK]]). The current failed datanode replacement policy is 
 DEFAULT, and a client may configure this via 
 'dfs.client.block.write.replace-datanode-on-failure.policy'  in its 
 configuration.
   at 
 org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.findNewDatanode(DFSOutputStream.java:951)
 {noformat}
 One proposal is to implement some similar logic as FSHLog: if IOException is 
 thrown during syncLoop in WALProcedureStore#start(), instead of immediate 
 abort, we could try to roll the log and see whether this resolve the issue; 
 if the new log cannot be created or more exception from rolling the log, we 
 then abort.



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


[jira] [Updated] (HBASE-13941) Backport HBASE-13917 (Remove string comparison to identify request priority) to release branches

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell updated HBASE-13941:
---
Fix Version/s: (was: 1.2.0)

 Backport HBASE-13917 (Remove string comparison to identify request priority) 
 to release branches
 

 Key: HBASE-13941
 URL: https://issues.apache.org/jira/browse/HBASE-13941
 Project: HBase
  Issue Type: Task
Reporter: Andrew Purtell
 Fix For: 0.98.14, 1.0.2, 1.1.1


 Backport HBASE-13917 (Remove string comparison to identify request priority) 
 to release branches.



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


[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk commented on HBASE-13937:
--

{{TestDistributedLogSplitting}} is passing consistently on my side as well. +1

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13939:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12740628/HBASE-13939_1.patch
  against master branch at commit 8ae4b374e3fa4cd54b8b83bc857d41f0678ad9b6.
  ATTACHMENT ID: 12740628

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

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

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

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

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

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

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) 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:green}+1 site{color}.  The mvn post-site goal succeeds with this patch.

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

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14467//testReport/
Release Findbugs (version 2.0.3)warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14467//artifact/patchprocess/newFindbugsWarnings.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14467//artifact/patchprocess/checkstyle-aggregate.html

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

This message is automatically generated.

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch, HBASE-13939_1.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13921) move converter functions from ProtobufUtil into a helper class

2015-06-19 Thread Gabor Liptak (JIRA)

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

Gabor Liptak updated HBASE-13921:
-
Attachment: HBASE-13921.2.patch

 move converter functions from ProtobufUtil into a helper class
 

 Key: HBASE-13921
 URL: https://issues.apache.org/jira/browse/HBASE-13921
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Priority: Minor
 Attachments: HBASE-13921.1.patch, HBASE-13921.2.patch






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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar updated HBASE-13938:
--
Attachment: hbase-13938_v3-branch-1.1.patch

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
Assignee: Enis Soztutar
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt, hbase-13938_v2-branch-1.1.patch, 
 hbase-13938_v3-branch-1.1.patch


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13933:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  
http://issues.apache.org/jira/secure/attachment/12740700/HBASE-13933_branch-1.1.patch
  against branch-1.1 branch at commit 8ae4b374e3fa4cd54b8b83bc857d41f0678ad9b6.
  ATTACHMENT ID: 12740700

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

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

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

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

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

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

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) 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:green}+1 site{color}.  The mvn post-site goal succeeds with this patch.

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

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14472//testReport/
Release Findbugs (version 2.0.3)warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14472//artifact/patchprocess/newFindbugsWarnings.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14472//artifact/patchprocess/checkstyle-aggregate.html

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

This message is automatically generated.

 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13933_branch-1.1.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Updated] (HBASE-13666) book.pdf is not renamed during site build

2015-06-19 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk updated HBASE-13666:
-
Fix Version/s: 0.98.14

 book.pdf is not renamed during site build
 -

 Key: HBASE-13666
 URL: https://issues.apache.org/jira/browse/HBASE-13666
 Project: HBase
  Issue Type: Task
  Components: site
Reporter: Nick Dimiduk
Assignee: Gabor Liptak
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13666.1.patch, HBASE-13666.2.patch, 
 HBASE-13666.3.patch


 Noticed this while testing HBASE-13665. Looks like the post-site hook is 
 broken or not executed, so the file {{book.pdf}} is not copied over to the 
 expected name {{apache_hbase_reference_guide.pdf}}.



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


[jira] [Commented] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13214:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  
http://issues.apache.org/jira/secure/attachment/12740587/HBASE-13214-v2-again.patch
  against master branch at commit 8ae4b374e3fa4cd54b8b83bc857d41f0678ad9b6.
  ATTACHMENT ID: 12740587

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

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

{color:green}+1 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

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

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

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

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) 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 post-site goal 
to fail.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
   org.apache.hadoop.hbase.mapreduce.TestImportExport
  org.apache.hadoop.hbase.util.TestProcessBasedCluster

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14468//testReport/
Release Findbugs (version 2.0.3)warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14468//artifact/patchprocess/newFindbugsWarnings.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14468//artifact/patchprocess/checkstyle-aggregate.html

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

This message is automatically generated.

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again.patch, 
 HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-13937:


bq. Do you mind re-review according to above? 

The check for isDeadServer is moved out of the retry loop:
{code}
@@ -903,13 +901,14 @@ public class ServerManager {
   public boolean isServerReachable(ServerName server) {
 if (server == null) throw new NullPointerException(Passed server is 
null);
 
+synchronized (this.onlineServers) {
+  if (this.deadservers.isDeadServer(server)) {
+return false;
+  }
+}
+
 RetryCounter retryCounter = pingRetryCounterFactory.create();
 while (retryCounter.shouldRetry()) {
-  synchronized (this.onlineServers) {
-if (this.deadservers.isDeadServer(server)) {
-  return false;
-}
-  }
   try {
 AdminService.BlockingInterface admin = getRsAdmin(server);
 if (admin != null) {
{code}

Yes, I was wrong about the second part. The patch under review here does:
{code}
@@ -917,11 +916,6 @@ public class ServerManager {
   return info != null  info.hasServerName()
  server.getStartcode() == info.getServerName().getStartCode();
 }
-  } catch (RegionServerStoppedException | ServerNotRunningYetException e) {
-if (LOG.isDebugEnabled()) {
-  LOG.debug(Couldn't reach  + server, e);
-}
-break;
{code}
I must have gone back to the wrong tab and looked at the patch on the original 
issue.

lgtm, FWIW

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13921) move converter functions from ProtobufUtil into a helper class

2015-06-19 Thread Gabor Liptak (JIRA)

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

Gabor Liptak commented on HBASE-13921:
--

[~apurtell] yes, there aren't clear lines on what is a converter function ...

I ended up with this line count (of course there are lots of stubs in 
PotobufUtil):

  2026 
hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufConverter.java
  1799 
hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java


 move converter functions from ProtobufUtil into a helper class
 

 Key: HBASE-13921
 URL: https://issues.apache.org/jira/browse/HBASE-13921
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Priority: Minor
 Attachments: HBASE-13921.1.patch, HBASE-13921.2.patch






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


[jira] [Updated] (HBASE-13900) duplicate methods between ProtobufMagic and ProtobufUtil

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell updated HBASE-13900:
---
   Resolution: Fixed
Fix Version/s: 2.0.0
 Assignee: Gabor Liptak
 Hadoop Flags: Reviewed
   Status: Resolved  (was: Patch Available)

 duplicate methods between ProtobufMagic and ProtobufUtil
 

 Key: HBASE-13900
 URL: https://issues.apache.org/jira/browse/HBASE-13900
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Assignee: Gabor Liptak
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13900.1.patch


 Several methods duplicated between:
 hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufMagic.java
 and
 hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
 isPBMagicPrefix()
 isPBMagicPrefix()
 lengthOfPBMagic()
 ProtobufUtil partically references ProtobufMagic, but it also has different 
 compare implementation ...
 Maybe this was based on packaging/signature need?



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


[jira] [Comment Edited] (HBASE-13900) duplicate methods between ProtobufMagic and ProtobufUtil

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell edited comment on HBASE-13900 at 6/19/15 9:26 PM:
-

Not sure what's up with the javadoc warning either, I don't see it. Committed 
to master. Thanks for the patch [~gliptak]!


was (Author: apurtell):
Not sure what's up with the javadoc warning either, I don't see it. Committed 
to mater. Thanks for the patch [~gliptak]!

 duplicate methods between ProtobufMagic and ProtobufUtil
 

 Key: HBASE-13900
 URL: https://issues.apache.org/jira/browse/HBASE-13900
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Assignee: Gabor Liptak
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13900.1.patch


 Several methods duplicated between:
 hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufMagic.java
 and
 hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
 isPBMagicPrefix()
 isPBMagicPrefix()
 lengthOfPBMagic()
 ProtobufUtil partically references ProtobufMagic, but it also has different 
 compare implementation ...
 Maybe this was based on packaging/signature need?



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


[jira] [Updated] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar updated HBASE-13937:
--
Attachment: hbase-13937_v3.patch

bq. The check for isDeadServer is moved out of the retry loop:
Nice catch. v3 patch moves it back inside the loop (basically not changing that 
part). 

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch, 
 hbase-13937_v3.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar commented on HBASE-13935:
---

[~ndimiduk], do you want this in 1.1.1? 

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch, HBASE-13935.v1-branch-1.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Commented] (HBASE-13921) move converter functions from ProtobufUtil into a helper class

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-13921:


What do you envision should remain in ProtobufUtil?

 move converter functions from ProtobufUtil into a helper class
 

 Key: HBASE-13921
 URL: https://issues.apache.org/jira/browse/HBASE-13921
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Priority: Minor
 Attachments: HBASE-13921.1.patch






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


[jira] [Updated] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Stephen Yuan Jiang (JIRA)

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

Stephen Yuan Jiang updated HBASE-13935:
---
Fix Version/s: 1.1.1
   1.2.0

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch, HBASE-13935.v1-branch-1.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Commented] (HBASE-13448) New Cell implementation with cached component offsets/lengths

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13448:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12740605/HBASE-13448_V5.patch
  against master branch at commit 8ae4b374e3fa4cd54b8b83bc857d41f0678ad9b6.
  ATTACHMENT ID: 12740605

{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 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

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

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

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

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) 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:green}+1 site{color}.  The mvn post-site goal succeeds with this patch.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
   org.apache.hadoop.hbase.client.TestCheckAndMutate
  org.apache.hadoop.hbase.coprocessor.TestRowProcessorEndpoint
  
org.apache.hadoop.hbase.security.visibility.TestVisibilityWithCheckAuths
  org.apache.hadoop.hbase.mapreduce.TestTableInputFormatScan2
  org.apache.hadoop.hbase.regionserver.TestServerCustomProtocol
  org.apache.hadoop.hbase.regionserver.TestPerColumnFamilyFlush
  org.apache.hadoop.hbase.TestFullLogReconstruction
  org.apache.hadoop.hbase.mapreduce.TestWALRecordReader
  org.apache.hadoop.hbase.TestLocalHBaseCluster
  org.apache.hadoop.hbase.coprocessor.TestRegionObserverBypass
  org.apache.hadoop.hbase.mapreduce.TestTableSnapshotInputFormat
  
org.apache.hadoop.hbase.client.TestSnapshotFromClientWithRegionReplicas
  org.apache.hadoop.hbase.coprocessor.TestClassLoading
  org.apache.hadoop.hbase.mapreduce.TestWALPlayer
  org.apache.hadoop.hbase.coprocessor.TestCoprocessorStop
  org.apache.hadoop.hbase.regionserver.wal.TestWALReplay
  org.apache.hadoop.hbase.regionserver.wal.TestLogRolling
  org.apache.hadoop.hbase.regionserver.TestClusterId
  org.apache.hadoop.hbase.client.TestClientOperationInterrupt
  org.apache.hadoop.hbase.coprocessor.TestOpenTableInCoprocessor
  org.apache.hadoop.hbase.client.TestRestoreSnapshotFromClient
  
org.apache.hadoop.hbase.security.visibility.TestVisibilityLabelsWithDistributedLogReplay
  org.apache.hadoop.hbase.client.TestMultiParallel
  
org.apache.hadoop.hbase.regionserver.TestScannerRetriableFailure
  
org.apache.hadoop.hbase.regionserver.TestCompactionWithCoprocessor
  
org.apache.hadoop.hbase.mapreduce.TestSecureLoadIncrementalHFilesSplitRecovery
  org.apache.hadoop.hbase.mapreduce.TestCellCounter
  org.apache.hadoop.hbase.io.hfile.TestHFileBlockIndex
  
org.apache.hadoop.hbase.util.hbck.TestOfflineMetaRebuildOverlap
  org.apache.hadoop.hbase.regionserver.TestFSErrorsExposed
  
org.apache.hadoop.hbase.zookeeper.lock.TestZKInterProcessReadWriteLock
  
org.apache.hadoop.hbase.security.visibility.TestDefaultScanLabelGeneratorStack
  org.apache.hadoop.hbase.regionserver.TestRegionServerHostname
  org.apache.hadoop.hbase.regionserver.TestCompaction
  org.apache.hadoop.hbase.util.TestMergeTool
  org.apache.hadoop.hbase.regionserver.TestScannerWithBulkload
  org.apache.hadoop.hbase.io.encoding.TestChangingEncoding
  org.apache.hadoop.hbase.regionserver.TestTags
  

[jira] [Commented] (HBASE-13103) [ergonomics] add region size balancing as a feature of master

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov commented on HBASE-13103:
-

bq. Yeah, there should be some upper bound on the total number of regions, 
which I assume would be something like $MAX_REGIONS_PER_SERVER * $NUM_SERVERS, 
where max regions per server is configurable.

I thought the limit is the other way around, i.e. the total number of regions 
is more or less fixed (as assignment manager won't handle that properly), 
hence, increasing number of region servers would inevitably decrease number of 
regions per RS - larger and larger regions?

 [ergonomics] add region size balancing as a feature of master
 -

 Key: HBASE-13103
 URL: https://issues.apache.org/jira/browse/HBASE-13103
 Project: HBase
  Issue Type: Improvement
  Components: Balancer, Usability
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13103-v0.patch, HBASE-13103-v1.patch


 Often enough, folks miss-judge split points or otherwise end up with a 
 suboptimal number of regions. We should have an automated, reliable way to 
 reshape or balance a table's region boundaries. This would be for tables 
 that contain existing data. This might look like:
 {noformat}
 Admin#reshapeTable(TableName, int numSplits);
 {noformat}
 or from the shell:
 {noformat}
  reshape TABLE, numSplits
 {noformat}
 Better still would be to have a maintenance process, similar to the existing 
 Balancer that runs AssignmentManager on an interval, to run the above 
 reshape operation on an interval. That way, the cluster will automatically 
 self-correct toward a desirable state.



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


[jira] [Comment Edited] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell edited comment on HBASE-13937 at 6/19/15 8:43 PM:
-

bq. We will not treat exceptions coming from server ping differently, but 
instead will keep retrying to ping.

Looking at the V2 patch. So we check once if the server is in the dead list and 
then proceed to ping. This patch hoists out this check:
{code}
+  synchronized (this.onlineServers) {
+if (this.deadservers.isDeadServer(server)) {
+  return false;
+}
+  }
{code}
that HBASE-13172 put into the ping loop. We retain this change from HBASE-13172:
{code}
@@ -851,13 +858,21 @@ public class ServerManager {
   return info != null  info.hasServerName()
  server.getStartcode() == info.getServerName().getStartCode();
 }
+  } catch (RegionServerStoppedException | ServerNotRunningYetException e) {
+if (LOG.isDebugEnabled()) {
+  LOG.debug(Couldn't reach  + server, e);
+}
+break;
   } catch (IOException ioe) {
-LOG.debug(Couldn't reach  + server + , try= + 
retryCounter.getAttemptTimes()
-  +  of  + retryCounter.getMaxAttempts(), ioe);
+if (LOG.isDebugEnabled()) {
+  LOG.debug(Couldn't reach  + server + , try= + 
retryCounter.getAttemptTimes() +  of 
+  + retryCounter.getMaxAttempts(), ioe);
+}
 try {
   retryCounter.sleepUntilNextRetry();
 } catch(InterruptedException ie) {
   Thread.currentThread().interrupt();
+  break;
 }
   }
 }
{code}
that breaks out of the ping loop if we catch RegionServerStoppedException or 
ServerNotRunningYetException, or are interrupted.

This lgtm for application to 0.98, modulo the multicatch (Java 7+ only) will 
need to be converted to equivalent Java 6 idiom.


was (Author: apurtell):
bq. We will not treat exceptions coming from server ping differently, but 
instead will keep retrying to ping.
Reply

Looking at the V2 patch. So we check once if the server is in the dead list and 
then proceed to ping. This patch hoists out this check:
{code}
+  synchronized (this.onlineServers) {
+if (this.deadservers.isDeadServer(server)) {
+  return false;
+}
+  }
{code}
that HBASE-13172 put into the ping loop. We retain this change from HBASE-13172:
{code}
@@ -851,13 +858,21 @@ public class ServerManager {
   return info != null  info.hasServerName()
  server.getStartcode() == info.getServerName().getStartCode();
 }
+  } catch (RegionServerStoppedException | ServerNotRunningYetException e) {
+if (LOG.isDebugEnabled()) {
+  LOG.debug(Couldn't reach  + server, e);
+}
+break;
   } catch (IOException ioe) {
-LOG.debug(Couldn't reach  + server + , try= + 
retryCounter.getAttemptTimes()
-  +  of  + retryCounter.getMaxAttempts(), ioe);
+if (LOG.isDebugEnabled()) {
+  LOG.debug(Couldn't reach  + server + , try= + 
retryCounter.getAttemptTimes() +  of 
+  + retryCounter.getMaxAttempts(), ioe);
+}
 try {
   retryCounter.sleepUntilNextRetry();
 } catch(InterruptedException ie) {
   Thread.currentThread().interrupt();
+  break;
 }
   }
 }
{code}
that breaks out of the ping loop if we catch RegionServerStoppedException or 
ServerNotRunningYetException.

This lgtm for application to 0.98, modulo the multicatch (Java 7+ only) will 
need to be converted to equivalent Java 6 idiom.

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 

[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das commented on HBASE-13937:
-

+1 

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13921) move converter functions from ProtobufUtil into a helper class

2015-06-19 Thread Gabor Liptak (JIRA)

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

Gabor Liptak commented on HBASE-13921:
--

The other non-convertor helper functions (it seems to be an about even split 
...). The comment in ProtobufUtil:

@InterfaceAudience.Private // TODO: some clients (Hive, etc) use this class

hence the goal of keeping the interface unchanged.

 move converter functions from ProtobufUtil into a helper class
 

 Key: HBASE-13921
 URL: https://issues.apache.org/jira/browse/HBASE-13921
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Priority: Minor
 Attachments: HBASE-13921.1.patch






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


[jira] [Commented] (HBASE-13931) Move Unsafe based operations to UnsafeAccess

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13931:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12740608/HBASE-13931_V2.patch
  against master branch at commit 8ae4b374e3fa4cd54b8b83bc857d41f0678ad9b6.
  ATTACHMENT ID: 12740608

{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 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

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

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

{color:red}-1 javadoc{color}.  The javadoc tool appears to have generated 7 
warning messages.

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) 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:green}+1 site{color}.  The mvn post-site goal succeeds with this patch.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
   org.apache.hadoop.hbase.TestRegionRebalancing

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14474//testReport/
Release Findbugs (version 2.0.3)warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14474//artifact/patchprocess/newFindbugsWarnings.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14474//artifact/patchprocess/checkstyle-aggregate.html

  Javadoc warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14474//artifact/patchprocess/patchJavadocWarnings.txt
Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14474//console

This message is automatically generated.

 Move Unsafe based operations to UnsafeAccess
 

 Key: HBASE-13931
 URL: https://issues.apache.org/jira/browse/HBASE-13931
 Project: HBase
  Issue Type: Improvement
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 We have this new class added. Bytes.java having unsafe based reads in it. Now 
 HBASE-13916 will add similar unsafe based reads (on BB) in ByteBufferUtils.  
 We can move the unsafe based operations to UnsafeAccess and otehr places just 
 refer to here.



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


[jira] [Created] (HBASE-13940) IntegrationTestBulkLoad needs option to specify output folders used by test

2015-06-19 Thread Enis Soztutar (JIRA)
Enis Soztutar created HBASE-13940:
-

 Summary: IntegrationTestBulkLoad needs option to specify output 
folders used by test
 Key: HBASE-13940
 URL: https://issues.apache.org/jira/browse/HBASE-13940
 Project: HBase
  Issue Type: Test
Reporter: Enis Soztutar
Assignee: Rajeshbabu Chintaguntla


{{IntegrationTestBulkLoad}} should allow output directory to be configurable 
rather than hard coded dir under {{/user/user.name}}. 

Filing on behalf of [~chrajeshbab...@gmail.com]. 



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


[jira] [Commented] (HBASE-13900) duplicate methods between ProtobufMagic and ProtobufUtil

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-13900:


Not sure what's up with the javadoc warning either, I don't see it. Committed 
to mater. Thanks for the patch [~gliptak]!

 duplicate methods between ProtobufMagic and ProtobufUtil
 

 Key: HBASE-13900
 URL: https://issues.apache.org/jira/browse/HBASE-13900
 Project: HBase
  Issue Type: Improvement
Reporter: Gabor Liptak
Priority: Minor
 Attachments: HBASE-13900.1.patch


 Several methods duplicated between:
 hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufMagic.java
 and
 hbase-client/src/main/java/org/apache/hadoop/hbase/protobuf/ProtobufUtil.java
 isPBMagicPrefix()
 isPBMagicPrefix()
 lengthOfPBMagic()
 ProtobufUtil partically references ProtobufMagic, but it also has different 
 compare implementation ...
 Maybe this was based on packaging/signature need?



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


[jira] [Updated] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Stephen Yuan Jiang (JIRA)

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

Stephen Yuan Jiang updated HBASE-13935:
---
Attachment: HBASE-13935.v1-branch-1.patch

HBASE-13935.v1-branch-1.patch is for both branch-1 and branch-1.1

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch, HBASE-13935.v1-branch-1.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Commented] (HBASE-13103) [ergonomics] add region size balancing as a feature of master

2015-06-19 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk commented on HBASE-13103:
--

Yes there's a global upper bound as well, much more discussion over on 
HBASE-11165.

I'm talking about a local upper bound on an individual region server's ability 
to maintain active regions online for reads and writes. Usually this is 
confined by memory pressure due to active memstores of open regions.

I dunno though. Maybe [~lhofhansl] and [~phobos182] want to meter this upper 
bound differently?

 [ergonomics] add region size balancing as a feature of master
 -

 Key: HBASE-13103
 URL: https://issues.apache.org/jira/browse/HBASE-13103
 Project: HBase
  Issue Type: Improvement
  Components: Balancer, Usability
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13103-v0.patch, HBASE-13103-v1.patch


 Often enough, folks miss-judge split points or otherwise end up with a 
 suboptimal number of regions. We should have an automated, reliable way to 
 reshape or balance a table's region boundaries. This would be for tables 
 that contain existing data. This might look like:
 {noformat}
 Admin#reshapeTable(TableName, int numSplits);
 {noformat}
 or from the shell:
 {noformat}
  reshape TABLE, numSplits
 {noformat}
 Better still would be to have a maintenance process, similar to the existing 
 Balancer that runs AssignmentManager on an interval, to run the above 
 reshape operation on an interval. That way, the cluster will automatically 
 self-correct toward a desirable state.



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


[jira] [Commented] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar commented on HBASE-13938:
---

bq. Don't we need the max computation in the 
RegionMergeTransaction.prepareMutationsForMerge as well...
Nice catch. v3 handles that as well. 

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
Assignee: Enis Soztutar
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt, hbase-13938_v2-branch-1.1.patch


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13897) OOM occurs when Import importing a row that including too much KeyValue

2015-06-19 Thread Andrew Purtell (JIRA)

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

Andrew Purtell updated HBASE-13897:
---
Fix Version/s: (was: 0.98.13)
   0.98.14

 OOM occurs when Import  importing a row that including too much KeyValue
 

 Key: HBASE-13897
 URL: https://issues.apache.org/jira/browse/HBASE-13897
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.98.13
Reporter: Liu Junhong
Assignee: Ted Yu
 Fix For: 0.98.14

 Attachments: HBASE-13897-0.98.patch


 When importing a row with too many KeyValues (may have too many columns or 
 versions),KeyValueReducer will incur OOM.



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk commented on HBASE-13933:
--

Pushed to master and the branch-1's. {{mvn clean test 
-Dtest=org.apache.hadoop.hbase.io.*}} passed everywhere I pushed. Need more 
work to backport to 0.98. There's other fields we're not copying from 
{{nextState}} so I want to spend some more time with it.

 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13933_branch-1.1.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Commented] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13614:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12740698/HBASE-13614_2.patch
  against master branch at commit 8ae4b374e3fa4cd54b8b83bc857d41f0678ad9b6.
  ATTACHMENT ID: 12740698

{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 hadoop versions{color}. The patch compiles with all 
supported hadoop versions (2.4.1 2.5.2 2.6.0)

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

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

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

{color:green}+1 checkstyle{color}.  The applied patch does not increase the 
total number of checkstyle errors

{color:green}+1 findbugs{color}.  The patch does not introduce any  new 
Findbugs (version 2.0.3) 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 post-site goal 
to fail.

 {color:red}-1 core tests{color}.  The patch failed these unit tests:
   org.apache.hadoop.hbase.TestRegionRebalancing

 {color:red}-1 core zombie tests{color}.  There are 1 zombie test(s):   
at 
org.apache.phoenix.mapreduce.IndexToolIT.testSecondaryIndex(IndexToolIT.java:131)
at 
org.apache.phoenix.mapreduce.IndexToolIT.testImmutableGlobalIndex(IndexToolIT.java:74)

Test results: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14471//testReport/
Release Findbugs (version 2.0.3)warnings: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14471//artifact/patchprocess/newFindbugsWarnings.html
Checkstyle Errors: 
https://builds.apache.org/job/PreCommit-HBASE-Build/14471//artifact/patchprocess/checkstyle-aggregate.html

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

This message is automatically generated.

 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch, HBASE-13614_1.patch, 
 HBASE-13614_2.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar commented on HBASE-13937:
---

bq. Looking at the V2 patch. So we check once if the server is in the dead list 
and then proceed to ping. This patch hoists out this check:
I think the patch does the exact opposite. It keeps the {{synchronized 
(this.onlineServers) }} part, but removes the  
{{catch (RegionServerStoppedException | ServerNotRunningYetException e)}} part. 
The intent is to apply v2 directly without reverting the prev patch. 

bq. This lgtm for application to 0.98, modulo the multicatch (Java 7+ only) 
will need to be converted to equivalent Java 6 idiom.
Do you mind re-review according to above? 

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar commented on HBASE-13935:
---

The patches look good. branch-1 patch is also for master, right? We should 
commit to master as well I think. 
For 1.0 and before, this can happen if create table handler.prepare created the 
znode, but .process() was not able to create the HDFS dir. We see this often, 
for example if HDFS perms are broken, and HBase is started. Subsequent starts 
will fail because we've already created the znode. 

With 1.1+, it should not happen in theory, but did not check whether the 
bootstrap code (which creates hbase:namespace) waits for previously executing 
procedures to finish. In any case, it is ok to err on the safe side I think. 

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch, HBASE-13935.v1-branch-1.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Duo Zhang (JIRA)

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

Duo Zhang commented on HBASE-13937:
---

{quote}
thus guaranteeing that the region server cannot accept any more writes.
{quote}
But still readable right? Does HBase guarantee this level of consistency?
1. A writes row to HBase.
2  A tells B to read the row.
3. B can read the row from HBase.

If not, then I think remove recoverLease is enough here. Otherwise we still to 
make sure that the regionserver can not process any request.

And I think this discussion should be in the parent issue, so +1 on patch v3 :)

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch, 
 hbase-13937_v3.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Commented] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Stephen Yuan Jiang (JIRA)

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

Stephen Yuan Jiang commented on HBASE-13935:


[~enis] This JIRA is only for HBASE 1.x and lower releases.  We had logic of 
first check META and then check znode.  The issue happens when table not in 
META , but in znode as ENABLED/ENABLING.  

This is NOT a issue in master, as we don't use zookeeper to track table state.  
The table state is tracked in META table  - so we only check META.

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch, HBASE-13935.v1-branch-1.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13933:


FAILURE: Integrated in HBase-TRUNK #6584 (See 
[https://builds.apache.org/job/HBase-TRUNK/6584/])
HBASE-13933 DBE's seekBefore with tags corrupts the tag's offset information 
thus leading to incorrect results (ramkrishna.s.vasudevan) (ndimiduk: rev 
db08013ebeeaa85802d9795cc72b4c29c5338a47)
* hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestSeekTo.java
* 
hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java


 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13933_branch-1.1.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13933:


FAILURE: Integrated in HBase-1.0 #968 (See 
[https://builds.apache.org/job/HBase-1.0/968/])
HBASE-13933 DBE's seekBefore with tags corrupts the tag's offset information 
thus leading to incorrect results (ramkrishna.s.vasudevan) (ndimiduk: rev 
5685b6ed49539a463a23f1639448fd2f4e82bd9c)
* 
hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestSeekTo.java


 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13933_branch-1.1.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Updated] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Enis Soztutar (JIRA)

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

Enis Soztutar updated HBASE-13937:
--
Attachment: hbase-13937_v3.patch

reattach. 

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch, 
 hbase-13937_v3.patch, hbase-13937_v3.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Updated] (HBASE-13926) Close the scanner only after Call#setResponse

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13926:
---
Attachment: HBASE-13926_V2.patch

 Close the scanner only after Call#setResponse
 -

 Key: HBASE-13926
 URL: https://issues.apache.org/jira/browse/HBASE-13926
 Project: HBase
  Issue Type: Sub-task
  Components: regionserver, Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 This is for HBASE-12295. We will be delivering cells directly from shared 
 cache memory. HBASE-12295 adds a ref count based prevention mechanism to 
 avoid block eviction, when that memory area in use by scanners. We will 
 decrement ref count at scanner close. The memory area will be in use till a 
 cellblock is created or PB scan reply message is built. So we can delay the 
 close of the scanner until the response is set for the scanner Call. This is 
 done via a RpcCallback way. The callback is set on Call at scan time. Once 
 the setResponse is done, the Call will execute the RpcCallback.
 This jira also adds a facility to do some cleanup/close during the course of 
 scan. Scan from client makes many RPCs fetching N rows each time. Only at the 
 end the scanner close will happen. We will add a new batchClose() facility 
 with which we can do any cleanup after every rpc call is executed and rows 
 fetched for return.



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


[jira] [Updated] (HBASE-13926) Close the scanner only after Call#setResponse

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13926:
---
Hadoop Flags: Reviewed
  Status: Patch Available  (was: Open)

 Close the scanner only after Call#setResponse
 -

 Key: HBASE-13926
 URL: https://issues.apache.org/jira/browse/HBASE-13926
 Project: HBase
  Issue Type: Sub-task
  Components: regionserver, Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 This is for HBASE-12295. We will be delivering cells directly from shared 
 cache memory. HBASE-12295 adds a ref count based prevention mechanism to 
 avoid block eviction, when that memory area in use by scanners. We will 
 decrement ref count at scanner close. The memory area will be in use till a 
 cellblock is created or PB scan reply message is built. So we can delay the 
 close of the scanner until the response is set for the scanner Call. This is 
 done via a RpcCallback way. The callback is set on Call at scan time. Once 
 the setResponse is done, the Call will execute the RpcCallback.
 This jira also adds a facility to do some cleanup/close during the course of 
 scan. Scan from client makes many RPCs fetching N rows each time. Only at the 
 end the scanner close will happen. We will add a new batchClose() facility 
 with which we can do any cleanup after every rpc call is executed and rows 
 fetched for return.



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


[jira] [Updated] (HBASE-13926) Close the scanner only after Call#setResponse

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13926:
---
Status: Open  (was: Patch Available)

 Close the scanner only after Call#setResponse
 -

 Key: HBASE-13926
 URL: https://issues.apache.org/jira/browse/HBASE-13926
 Project: HBase
  Issue Type: Sub-task
  Components: regionserver, Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 This is for HBASE-12295. We will be delivering cells directly from shared 
 cache memory. HBASE-12295 adds a ref count based prevention mechanism to 
 avoid block eviction, when that memory area in use by scanners. We will 
 decrement ref count at scanner close. The memory area will be in use till a 
 cellblock is created or PB scan reply message is built. So we can delay the 
 close of the scanner until the response is set for the scanner Call. This is 
 done via a RpcCallback way. The callback is set on Call at scan time. Once 
 the setResponse is done, the Call will execute the RpcCallback.
 This jira also adds a facility to do some cleanup/close during the course of 
 scan. Scan from client makes many RPCs fetching N rows each time. Only at the 
 end the scanner close will happen. We will add a new batchClose() facility 
 with which we can do any cleanup after every rpc call is executed and rows 
 fetched for return.



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


[jira] [Commented] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov commented on HBASE-13214:
-

All failures look unrelated to me. Retry again?

Once we have good hadoop-qa run, v2 patch looks good to me for master. Pinging 
[~stack], [~ndimiduk]?

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again.patch, 
 HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13103) [ergonomics] add region size balancing as a feature of master

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov updated HBASE-13103:

Attachment: HBASE-13103-v2.patch

Here's patch w/ comments from RB addressed, also fixed on-cluster test and 
added testcase to check that small but non-adjacent regions aren't attempted to 
merge.

 [ergonomics] add region size balancing as a feature of master
 -

 Key: HBASE-13103
 URL: https://issues.apache.org/jira/browse/HBASE-13103
 Project: HBase
  Issue Type: Improvement
  Components: Balancer, Usability
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13103-v0.patch, HBASE-13103-v1.patch, 
 HBASE-13103-v2.patch


 Often enough, folks miss-judge split points or otherwise end up with a 
 suboptimal number of regions. We should have an automated, reliable way to 
 reshape or balance a table's region boundaries. This would be for tables 
 that contain existing data. This might look like:
 {noformat}
 Admin#reshapeTable(TableName, int numSplits);
 {noformat}
 or from the shell:
 {noformat}
  reshape TABLE, numSplits
 {noformat}
 Better still would be to have a maintenance process, similar to the existing 
 Balancer that runs AssignmentManager on an interval, to run the above 
 reshape operation on an interval. That way, the cluster will automatically 
 self-correct toward a desirable state.



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


[jira] [Updated] (HBASE-13103) [ergonomics] add region size balancing as a feature of master

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov updated HBASE-13103:

Status: Patch Available  (was: Open)

 [ergonomics] add region size balancing as a feature of master
 -

 Key: HBASE-13103
 URL: https://issues.apache.org/jira/browse/HBASE-13103
 Project: HBase
  Issue Type: Improvement
  Components: Balancer, Usability
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13103-v0.patch, HBASE-13103-v1.patch, 
 HBASE-13103-v2.patch


 Often enough, folks miss-judge split points or otherwise end up with a 
 suboptimal number of regions. We should have an automated, reliable way to 
 reshape or balance a table's region boundaries. This would be for tables 
 that contain existing data. This might look like:
 {noformat}
 Admin#reshapeTable(TableName, int numSplits);
 {noformat}
 or from the shell:
 {noformat}
  reshape TABLE, numSplits
 {noformat}
 Better still would be to have a maintenance process, similar to the existing 
 Balancer that runs AssignmentManager on an interval, to run the above 
 reshape operation on an interval. That way, the cluster will automatically 
 self-correct toward a desirable state.



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


[jira] [Updated] (HBASE-13103) [ergonomics] add region size balancing as a feature of master

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov updated HBASE-13103:

Status: Open  (was: Patch Available)

 [ergonomics] add region size balancing as a feature of master
 -

 Key: HBASE-13103
 URL: https://issues.apache.org/jira/browse/HBASE-13103
 Project: HBase
  Issue Type: Improvement
  Components: Balancer, Usability
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13103-v0.patch, HBASE-13103-v1.patch, 
 HBASE-13103-v2.patch


 Often enough, folks miss-judge split points or otherwise end up with a 
 suboptimal number of regions. We should have an automated, reliable way to 
 reshape or balance a table's region boundaries. This would be for tables 
 that contain existing data. This might look like:
 {noformat}
 Admin#reshapeTable(TableName, int numSplits);
 {noformat}
 or from the shell:
 {noformat}
  reshape TABLE, numSplits
 {noformat}
 Better still would be to have a maintenance process, similar to the existing 
 Balancer that runs AssignmentManager on an interval, to run the above 
 reshape operation on an interval. That way, the cluster will automatically 
 self-correct toward a desirable state.



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


[jira] [Updated] (HBASE-13898) correct additional javadoc failures under java 8

2015-06-19 Thread Gabor Liptak (JIRA)

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

Gabor Liptak updated HBASE-13898:
-
Attachment: HBASE-13898-amendment.1.patch

 correct additional javadoc failures under java 8
 

 Key: HBASE-13898
 URL: https://issues.apache.org/jira/browse/HBASE-13898
 Project: HBase
  Issue Type: Sub-task
  Components: documentation
Affects Versions: 1.2.0
Reporter: Sean Busbey
Assignee: Gabor Liptak
Priority: Minor
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13898-amendment.1.patch, HBASE-13898.1.patch


 Java 8's javadoc gives an error where previous javadoc tools gave a more 
 lenient WARN. HBASE-13569 took down the majority of the gaps, but while that 
 issue was in review we gained some more.



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


[jira] [Commented] (HBASE-13898) correct additional javadoc failures under java 8

2015-06-19 Thread Gabor Liptak (JIRA)

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

Gabor Liptak commented on HBASE-13898:
--

Uploaded the stragglers ... Please review HBASE-13920 fix for protobuf 
generated files exclusion.

 correct additional javadoc failures under java 8
 

 Key: HBASE-13898
 URL: https://issues.apache.org/jira/browse/HBASE-13898
 Project: HBase
  Issue Type: Sub-task
  Components: documentation
Affects Versions: 1.2.0
Reporter: Sean Busbey
Assignee: Gabor Liptak
Priority: Minor
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13898-amendment.1.patch, HBASE-13898.1.patch


 Java 8's javadoc gives an error where previous javadoc tools gave a more 
 lenient WARN. HBASE-13569 took down the majority of the gaps, but while that 
 issue was in review we gained some more.



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13933:


SUCCESS: Integrated in HBase-1.1 #551 (See 
[https://builds.apache.org/job/HBase-1.1/551/])
HBASE-13933 DBE's seekBefore with tags corrupts the tag's offset information 
thus leading to incorrect results (ramkrishna.s.vasudevan) (ndimiduk: rev 
f023b11d5ccf8b7da5c5285d4b6398130e9a61ed)
* 
hbase-common/src/main/java/org/apache/hadoop/hbase/io/encoding/BufferedDataBlockEncoder.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/io/hfile/TestSeekTo.java


 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13933_branch-1.1.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Commented] (HBASE-13666) book.pdf is not renamed during site build

2015-06-19 Thread Hudson (JIRA)

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

Hudson commented on HBASE-13666:


FAILURE: Integrated in HBase-0.98-on-Hadoop-1.1 #985 (See 
[https://builds.apache.org/job/HBase-0.98-on-Hadoop-1.1/985/])
HBASE-13666 Correct PDF renaming and bump version of maven-antrun-plugin 
(ndimiduk: rev 68bdf873e8cb36d18fad81b4732ed50f144744be)
* dev-support/make_rc.sh


 book.pdf is not renamed during site build
 -

 Key: HBASE-13666
 URL: https://issues.apache.org/jira/browse/HBASE-13666
 Project: HBase
  Issue Type: Task
  Components: site
Reporter: Nick Dimiduk
Assignee: Gabor Liptak
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13666.1.patch, HBASE-13666.2.patch, 
 HBASE-13666.3.patch


 Noticed this while testing HBASE-13665. Looks like the post-site hook is 
 broken or not executed, so the file {{book.pdf}} is not copied over to the 
 expected name {{apache_hbase_reference_guide.pdf}}.



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


[jira] [Updated] (HBASE-13448) New Cell implementation with cached component offsets/lengths

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13448:
---
Hadoop Flags: Reviewed
  Status: Patch Available  (was: Open)

 New Cell implementation with cached component offsets/lengths
 -

 Key: HBASE-13448
 URL: https://issues.apache.org/jira/browse/HBASE-13448
 Project: HBase
  Issue Type: Sub-task
  Components: Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
Priority: Blocker
 Fix For: 2.0.0

 Attachments: 13448-0.98.txt, HBASE-13448.patch, HBASE-13448_V2.patch, 
 HBASE-13448_V3.patch, HBASE-13448_V4.patch, HBASE-13448_V5.patch, 
 HBASE-13448_V5.patch, HBASE-13448_V5.patch, gc.png, hits.png


 This can be extension to KeyValue and can be instantiated and used in read 
 path.



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


[jira] [Updated] (HBASE-13448) New Cell implementation with cached component offsets/lengths

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13448:
---
Attachment: HBASE-13448_V5.patch

Attaching same patch for a QA run.  Last time all tests failed.. Seems not able 
to load some HTrace classes!  retry..

 New Cell implementation with cached component offsets/lengths
 -

 Key: HBASE-13448
 URL: https://issues.apache.org/jira/browse/HBASE-13448
 Project: HBase
  Issue Type: Sub-task
  Components: Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
Priority: Blocker
 Fix For: 2.0.0

 Attachments: 13448-0.98.txt, HBASE-13448.patch, HBASE-13448_V2.patch, 
 HBASE-13448_V3.patch, HBASE-13448_V4.patch, HBASE-13448_V5.patch, 
 HBASE-13448_V5.patch, HBASE-13448_V5.patch, gc.png, hits.png


 This can be extension to KeyValue and can be instantiated and used in read 
 path.



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


[jira] [Updated] (HBASE-13931) Move Unsafe based operations to UnsafeAccess

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13931:
---
Hadoop Flags: Reviewed
  Status: Patch Available  (was: Open)

 Move Unsafe based operations to UnsafeAccess
 

 Key: HBASE-13931
 URL: https://issues.apache.org/jira/browse/HBASE-13931
 Project: HBase
  Issue Type: Improvement
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 We have this new class added. Bytes.java having unsafe based reads in it. Now 
 HBASE-13916 will add similar unsafe based reads (on BB) in ByteBufferUtils.  
 We can move the unsafe based operations to UnsafeAccess and otehr places just 
 refer to here.



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


[jira] [Updated] (HBASE-13931) Move Unsafe based operations to UnsafeAccess

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13931:
---
Attachment: HBASE-13931_V3.patch

 Move Unsafe based operations to UnsafeAccess
 

 Key: HBASE-13931
 URL: https://issues.apache.org/jira/browse/HBASE-13931
 Project: HBase
  Issue Type: Improvement
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 We have this new class added. Bytes.java having unsafe based reads in it. Now 
 HBASE-13916 will add similar unsafe based reads (on BB) in ByteBufferUtils.  
 We can move the unsafe based operations to UnsafeAccess and otehr places just 
 refer to here.



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


[jira] [Updated] (HBASE-13931) Move Unsafe based operations to UnsafeAccess

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13931:
---
Status: Open  (was: Patch Available)

 Move Unsafe based operations to UnsafeAccess
 

 Key: HBASE-13931
 URL: https://issues.apache.org/jira/browse/HBASE-13931
 Project: HBase
  Issue Type: Improvement
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 We have this new class added. Bytes.java having unsafe based reads in it. Now 
 HBASE-13916 will add similar unsafe based reads (on BB) in ByteBufferUtils.  
 We can move the unsafe based operations to UnsafeAccess and otehr places just 
 refer to here.



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


[jira] [Commented] (HBASE-13935) Orphaned namespace table ZK node should not prevent master to start

2015-06-19 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk commented on HBASE-13935:
--

go ahead.

 Orphaned namespace table ZK node should not prevent master to start
 ---

 Key: HBASE-13935
 URL: https://issues.apache.org/jira/browse/HBASE-13935
 Project: HBase
  Issue Type: Bug
  Components: master
Affects Versions: 1.0.0, 0.98.13
Reporter: Stephen Yuan Jiang
Assignee: Stephen Yuan Jiang
 Fix For: 0.98.14, 1.0.2, 1.2.0, 1.1.1

 Attachments: HBASE-13935.v1-0.98.patch, 
 HBASE-13935.v1-branch-1.0.patch, HBASE-13935.v1-branch-1.patch


 Before we have the state-of-art Procedure V2 feature (HBASE 1.0 release or 
 older), we frequently see the following issue (orphaned ZK node) that prevent 
 master to start (at least in testing):
 {noformat}
 2015-06-16 17:54:36,472 FATAL [master:10.0.0.99:6] master.HMaster: 
 Unhandled exception. Starting shutdown.
 org.apache.hadoop.hbase.TableExistsException: hbase:namespace
   at 
 org.apache.hadoop.hbase.master.handler.CreateTableHandler.prepare(CreateTableHandler.java:137)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.createNamespaceTable(TableNamespaceManager.java:232)
   at 
 org.apache.hadoop.hbase.master.TableNamespaceManager.start(TableNamespaceManager.java:86)
   at 
 org.apache.hadoop.hbase.master.HMaster.initNamespace(HMaster.java:1123)
   at 
 org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:947)
   at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:618)
   at java.lang.Thread.run(Thread.java:745)
 2015-06-16 17:54:36,472 INFO  [master:10.0.0.99:6] master.HMaster: 
 Aborting
 {noformat}
 The above call trace is from a 0.98.x test run.  We saw similar issue in 
 1.0.x run, too.  
 The proposed fix is to ignore the zk node and force namespace table creation 
 to be complete so that master can start successfully.  



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


[jira] [Updated] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi updated HBASE-13214:
--
Status: Patch Available  (was: Open)

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again-v1.patch, 
 HBASE-13214-v2-again.patch, HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi updated HBASE-13214:
--
Attachment: HBASE-13214-v2-again-v1.patch

Retry Hadoop QA again

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again-v1.patch, 
 HBASE-13214-v2-again.patch, HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi updated HBASE-13214:
--
Status: Open  (was: Patch Available)

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again.patch, 
 HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13448) New Cell implementation with cached component offsets/lengths

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13448:
---
Status: Open  (was: Patch Available)

 New Cell implementation with cached component offsets/lengths
 -

 Key: HBASE-13448
 URL: https://issues.apache.org/jira/browse/HBASE-13448
 Project: HBase
  Issue Type: Sub-task
  Components: Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
Priority: Blocker
 Fix For: 2.0.0

 Attachments: 13448-0.98.txt, HBASE-13448.patch, HBASE-13448_V2.patch, 
 HBASE-13448_V3.patch, HBASE-13448_V4.patch, HBASE-13448_V5.patch, 
 HBASE-13448_V5.patch, gc.png, hits.png


 This can be extension to KeyValue and can be instantiated and used in read 
 path.



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


[jira] [Commented] (HBASE-13937) Partially revert HBASE-13172

2015-06-19 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-13937:
---

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12740771/hbase-13937_v3.patch
  against master branch at commit db08013ebeeaa85802d9795cc72b4c29c5338a47.
  ATTACHMENT ID: 12740771

{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:red}-1 patch{color}.  The patch command could not apply the patch.

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

This message is automatically generated.

 Partially revert HBASE-13172 
 -

 Key: HBASE-13937
 URL: https://issues.apache.org/jira/browse/HBASE-13937
 Project: HBase
  Issue Type: Sub-task
  Components: Region Assignment
Reporter: Enis Soztutar
Assignee: Enis Soztutar
 Fix For: 0.98.14, 1.2.0, 1.1.1, 1.3.0

 Attachments: hbase-13937_v1.patch, hbase-13937_v2.patch, 
 hbase-13937_v3.patch, hbase-13937_v3.patch


 HBASE-13172 is supposed to fix a UT issue, but causes other problems that 
 parent jira (HBASE-13605) is attempting to fix. 
 However, HBASE-13605 patch v4 uncovers at least 2 different issues which are, 
 to put it mildly, major design flaws in AM / RS. 
 Regardless of 13605, the issue with 13172 is that we catch 
 {{ServerNotRunningYetException}} from {{isServerReachable()}} and return 
 false, which then puts the Server to the {{RegionStates.deadServers}} list. 
 Once it is in that list, we can still assign and unassign regions to the RS 
 after it has started (because regular assignment does not check whether the 
 server is in  {{RegionStates.deadServers}}. However, after the first assign 
 and unassign, we cannot assign the region again since then the check for the 
 lastServer will think that the server is dead. 
 It turns out that a proper patch for 13605 is very hard without fixing rest 
 of  broken AM assumptions (see HBASE-13605, HBASE-13877 and HBASE-13895 for a 
 colorful history). For 1.1.1, I think we should just revert parts of 
 HBASE-13172 for now. 



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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-13938:

Attachment: hbase-13895_v1-branch-1.1.patch

Quick patch for 1.1

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
 Fix For: 1.1.1

 Attachments: hbase-13895_v1-branch-1.1.patch


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-13938:

Status: Patch Available  (was: Open)

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi updated HBASE-13214:
--
Attachment: HBASE-13214-v2-again.patch

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again.patch, 
 HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Commented] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi commented on HBASE-13214:
---

Attached v2 patch again to see if jenkins gets kicked atleast now.
Here is RB link https://reviews.apache.org/r/35642/

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again.patch, 
 HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-13938:

Attachment: 13938-branch-1.1.txt

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-13938:

Attachment: (was: 13938-branch-1.1.txt)

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
 Fix For: 1.1.1


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13939:
---
Attachment: HBASE-13939.patch

The changes in this patch if committed will remove the change in KeyValueUtil 
done in HBASE-13993 because now every where it is cell based.

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13939:
---
Status: Patch Available  (was: Open)

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13448) New Cell implementation with cached component offsets/lengths

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13448:
---
Attachment: HBASE-13448_V5.patch

Attaching same patch for a QA run.

 New Cell implementation with cached component offsets/lengths
 -

 Key: HBASE-13448
 URL: https://issues.apache.org/jira/browse/HBASE-13448
 Project: HBase
  Issue Type: Sub-task
  Components: Scanners
Reporter: Anoop Sam John
Assignee: Anoop Sam John
Priority: Blocker
 Fix For: 2.0.0

 Attachments: 13448-0.98.txt, HBASE-13448.patch, HBASE-13448_V2.patch, 
 HBASE-13448_V3.patch, HBASE-13448_V4.patch, HBASE-13448_V5.patch, 
 HBASE-13448_V5.patch, gc.png, hits.png


 This can be extension to KeyValue and can be instantiated and used in read 
 path.



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan commented on HBASE-13933:


Okie. But for the TestSeekTo testcase to pass with Prefix Tree - we need those 
changes. Otherwise I have to make the test to work without Preifxtree for now. 
The optimization I agree we can remove it. 

 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John commented on HBASE-13933:


+1 for making test to work with all other DBEs. You have HBASE-13939 which 
would alone solve the issue with prefix tree seekBefore. So let us handle it 
there.


 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Updated] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13933:
---
Status: Open  (was: Patch Available)

 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.1.0.1, 1.0.1.1, 0.98.13, 1.1.0, 1.0.1, 1.0.0, 2.0.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Commented] (HBASE-13906) Improve handling of NeedUnmanagedConnectionException

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov commented on HBASE-13906:
-

ASF jenkins is down now, will re-run later, the failure was spurious. 
[~ndimiduk] - what do you think about the patch?

 Improve handling of NeedUnmanagedConnectionException
 

 Key: HBASE-13906
 URL: https://issues.apache.org/jira/browse/HBASE-13906
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 1.1.0
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 1.2.0

 Attachments: HBASE-13906-branch-1.v1.patch


 During my investigation of HBASE-13833, I made this 
 [comment|https://issues.apache.org/jira/browse/HBASE-13833?focusedCommentId=14585302page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14585302]
 {quote}
 One other thing: should we somehow handle NeedUnmanagedConnectionException 
 similarly to DoNotRetryIOException? It's too late to wire them up thusly, but 
 for the case of bulk load when the bug is expressed, we go through the full 
 35x retry loop before eventually failing the RPC. This would be applicable to 
 branch-1.
 {quote}
 This would apply only to branch-1 as master no longer has unmanaged 
 connections. Probably we cannot change the inheritance hierarchy due to 
 compatibility guarantees, but maybe we can do something like everywhere we 
 look for DNRIOE, we do the same for NUCE.



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


[jira] [Commented] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan commented on HBASE-13614:


There is one more in the blockIndex area. Will check that also. Will upload 
another patch if that change is needed. 

 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Updated] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13614:
---
Status: Open  (was: Patch Available)

 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan commented on HBASE-13933:


bq.The other difference between all DBEs and Prefix Tree is that when we seek 
to a key after the last key all the DBEs will point to the last key when we do 
scanner.getKeyValue. But Prefix_Tree is giving a null. Is it fine to have this 
behaviourial change? May be in normal scan this will not happen? This can be 
done in a seperate JIRA.
The if condition in the test case is for the above condition. Will raise a 
seperate JIRA for that.  Let it be there. Once we do HBASE-13933 that will be 
needed. 

 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Commented] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John commented on HBASE-13939:


getFirstKeyInBlock() 
We need rename this then? When it says key returning BB or byte[] makes more 
sense? 

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch, HBASE-13939_1.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13614:
---
Status: Patch Available  (was: Open)

 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch, HBASE-13614_1.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Updated] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13939:
---
Status: Open  (was: Patch Available)

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13939:
---
Attachment: HBASE-13939_1.patch

Updated patch. There was one KeyOnlyKV getting created in the binarySearch 
using RAW_BYTES_COMPARATOR.

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch, HBASE-13939_1.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Commented] (HBASE-13103) [ergonomics] add region size balancing as a feature of master

2015-06-19 Thread Mikhail Antonov (JIRA)

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

Mikhail Antonov commented on HBASE-13103:
-

Yeah. We used to mention here that region has some ideal size and we should 
try to get each region to this size, and I think we mentioned that ideal size 
might be a fixed fraction of max size or something like that. May'be needs to 
be more configurable.

I guess you assume here that every large table is supposed to be spread across 
all RSs, and not just some subset (group?) of them? Also, to make sure I 
understand right, when you say 250 regions per RS, you mean 250regions of 
each table, or across all tables? Also this number of regions per RS.. I 
suppose we can derive it dynamically like (max number of regions total in 
cluster, as limited by AM performance, see issue about scaling to 1M regions) / 
# of RS? Total max number of regions could be set in config,like 100k or 300k?

I'm thinking about roughly same logic for lower and upper ends (for lower end 
another implicit threshold would be max size of each region, and for upper 
limit I think there should be 2 more guards - 1) should check that total number 
of regions doesn't approach the limits of AM and 2) we don't break table into 
ridiculously small regions (less than N hdfs blocks?).
 

 [ergonomics] add region size balancing as a feature of master
 -

 Key: HBASE-13103
 URL: https://issues.apache.org/jira/browse/HBASE-13103
 Project: HBase
  Issue Type: Improvement
  Components: Balancer, Usability
Reporter: Nick Dimiduk
Assignee: Mikhail Antonov
 Fix For: 2.0.0, 1.2.0

 Attachments: HBASE-13103-v0.patch, HBASE-13103-v1.patch


 Often enough, folks miss-judge split points or otherwise end up with a 
 suboptimal number of regions. We should have an automated, reliable way to 
 reshape or balance a table's region boundaries. This would be for tables 
 that contain existing data. This might look like:
 {noformat}
 Admin#reshapeTable(TableName, int numSplits);
 {noformat}
 or from the shell:
 {noformat}
  reshape TABLE, numSplits
 {noformat}
 Better still would be to have a maintenance process, similar to the existing 
 Balancer that runs AssignmentManager on an interval, to run the above 
 reshape operation on an interval. That way, the cluster will automatically 
 self-correct toward a desirable state.



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


[jira] [Commented] (HBASE-13933) DBE's seekBefore with tags corrupts the tag's offset information thus leading to incorrect results

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John commented on HBASE-13933:


+1. Good find.

{code}
 if (encoding == DataBlockEncoding.PREFIX_TREE) {
321   // TODO : Fix this
322   assertEquals(null, scanner.getKeyValue());
323 } else {
324   assertEquals(k, toRowStr(scanner.getKeyValue()));
325 }
{code}
Now you don't need this in the test.  Is this another bug with PREFIX_TREE?  
Have any Jira?

 DBE's seekBefore with tags corrupts the tag's offset information thus leading 
 to incorrect results
 --

 Key: HBASE-13933
 URL: https://issues.apache.org/jira/browse/HBASE-13933
 Project: HBase
  Issue Type: Bug
Affects Versions: 1.0.0, 2.0.0, 1.0.1, 1.1.0, 0.98.13, 1.0.1.1, 1.1.0.1
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0, 0.98.14, 1.0.2, 1.2.0, 1.1.1, 1.3.0

 Attachments: HBASE-13933.patch, HBASE-13933_2.patch, 
 HBASE-13993_1.patch


 The problem occurs with moveToPrevious() case and incase of tags we copy the 
 previous pointer's tag info to the current because already decoded the tags.
 Will check once again before I post other details.  I have a test case to 
 reproduce the problem. Found this while working with MultibyteBuffers and 
 verified if this is present in trunk - it is in all branches where we have 
 tags compression (I suppose) will verify



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


[jira] [Updated] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13614:
---
Attachment: HBASE-13614_1.patch

Just a minor change in HFileBlockIndex while loadDataBlockWithScanInfo().
We cannot have the nextIndexedKey as instance level because the index reader is 
once per reader and not once per scanner.
Also the nextIndexKey also acts as an reference to the 
HConstants.NO_INDEXED_KEY. So we have more or less covered all the cases and 
should be good. 


 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch, HBASE-13614_1.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Commented] (HBASE-13932) Add mob integrity check in HFilePrettyPrinter

2015-06-19 Thread Bhupendra Kumar Jain (JIRA)

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

Bhupendra Kumar Jain commented on HBASE-13932:
--

Thanks for addressing comments. New patch lgtm. 

Just one more change , can be done before commit.

1) evictMobFilesIfNecessary(foundMobFiles, 50);
 foundMobFiles are initalized with 100. So limit should be 100 or initialize 
 with 50

2) Query : As per current patch, cache scope is only per HFile. Can it be 
across HFile ( Global scope ) ?

 Add mob integrity check in HFilePrettyPrinter
 -

 Key: HBASE-13932
 URL: https://issues.apache.org/jira/browse/HBASE-13932
 Project: HBase
  Issue Type: Sub-task
  Components: mob
Affects Versions: hbase-11339
Reporter: Jingcheng Du
Assignee: Jingcheng Du
 Fix For: hbase-11339

 Attachments: HBASE-13932-V2.patch, HBASE-13932.patch


 We need to know whether a reference cell is dangling in mob. We can add this 
 to HFilePrettyPrinter.
 We can add a new option to the command, to check the integrity of mob cells 
 either per region or per file.



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


[jira] [Updated] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13939:
---
Status: Patch Available  (was: Open)

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch, HBASE-13939_1.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Commented] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan commented on HBASE-13939:


bq.getFirstKeyInBlock() 
firstKVInBlock?  But this is only the Key type of a KeyValue right? 

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0

 Attachments: HBASE-13939.patch, HBASE-13939_1.patch


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13614:
---
Status: Patch Available  (was: Open)

 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Updated] (HBASE-13614) Avoid temp KeyOnlyKeyValue temp objects creations in read hot path

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13614:
---
Attachment: HBASE-13614.patch

Removes the local KVOnlyKV in the HFileReaderImpl and EncodedSeeker.  In all 
these cases the scanner instances are per get or scan. So we could use the same 
instance KeyOnlyKV to set the key part for comparisons in blockSeek or 
seekToblock cases.
Also removes unused code in Prefixtree.  With this and HBASE-13939 we avoid 
cases where we create lot of KeyOnlyKeyValue in hot read path. 

 Avoid temp KeyOnlyKeyValue temp objects creations in read hot path
 --

 Key: HBASE-13614
 URL: https://issues.apache.org/jira/browse/HBASE-13614
 Project: HBase
  Issue Type: Sub-task
Reporter: Anoop Sam John
Assignee: ramkrishna.s.vasudevan
Priority: Critical
 Fix For: 2.0.0

 Attachments: HBASE-13614.patch


 As part of HBASE-10800, move to new CellComparator, we are temp creating a 
 Cell out of byte[]s so that the Comparator can compare.  In read hot path, we 
 can try minimize the object creations. The parent Jira added some such cases, 
 which we can solve.  This Jira will solve all such cases.



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


[jira] [Commented] (HBASE-13931) Move Unsafe based operations to UnsafeAccess

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan commented on HBASE-13931:


+1

 Move Unsafe based operations to UnsafeAccess
 

 Key: HBASE-13931
 URL: https://issues.apache.org/jira/browse/HBASE-13931
 Project: HBase
  Issue Type: Improvement
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 We have this new class added. Bytes.java having unsafe based reads in it. Now 
 HBASE-13916 will add similar unsafe based reads (on BB) in ByteBufferUtils.  
 We can move the unsafe based operations to UnsafeAccess and otehr places just 
 refer to here.



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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-13938:

Attachment: (was: hbase-13895_v1-branch-1.1.patch)

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13938) Deletes done during the region merge transaction may get eclipsed

2015-06-19 Thread Devaraj Das (JIRA)

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

Devaraj Das updated HBASE-13938:

Attachment: 13938-branch-1.1.txt

 Deletes done during the region merge transaction may get eclipsed
 -

 Key: HBASE-13938
 URL: https://issues.apache.org/jira/browse/HBASE-13938
 Project: HBase
  Issue Type: Bug
  Components: master, regionserver
Reporter: Devaraj Das
 Fix For: 1.1.1

 Attachments: 13938-branch-1.1.txt


 Was looking at an issue from our internal testing. It seems the Deletes of 
 the region rows from the meta done during the merge transaction could be 
 eclipsed by the Put of a region row that might have happened moments before.
 The master logs this for the merge:
 {noformat}
 2015-06-18 13:13:46,018 INFO  [AM.ZK.Worker-pool2-t12] 
 master.AssignmentManager: Handled MERGED event; 
 merged=IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.,
  
 region_a=IntegrationTestIngest,a65c,1434631353820.8b911862d7705ac808b8d132d0154c16.,
  
 region_b=IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.,
  on ddas-2-5.openstacklocal,16020,1434632778438
 {noformat}
 One of the regions that got merged got Opened a few seconds back:
 {noformat}
 2015-06-18 13:13:46,591 INFO  [RS_OPEN_REGION-ddas-2-5:16020-1] 
 regionserver.HRegion: Onlined 1bdaf759862f45d133ef77fdbda21aec; next 
 sequenceid=182988
 {noformat}
 The above would have done a Put in the meta.
 Looking at the raw scan of the meta, for the new merged region, the creation 
 timestamp is 1434633226101:
 {noformat}
  
 IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.
  column=info:regioninfo, timestamp=1434633226101, value={ENCODED = 
 0927319db6bf5e128e3bec2a420819aa, NAME = 
 'IntegrationTestIngest,a65c,1434633226681.0927319db6bf5e128e3bec2a420819aa.',
  STARTKEY = 'a65c', ENDKEY = 'b328'}
 {noformat}
 Looking at the raw scan of the meta, the timestamp for the region open of the 
 already merged region is 1434633226600. This is a little after the merge 
 transaction's timestamp.
 {noformat}
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:seqnumDuringOpen, timestamp=1434633226600, 
 value=\x00\x00\x00\x00\x00\x02\xCA\xCC
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:server, timestamp=1434633226600, 
 value=ddas-2-5.openstacklocal:16020
  
 IntegrationTestIngest,acc2,1434631353820.1bdaf759862f45d133ef77fdbda21aec.
  column=info:serverstartcode, timestamp=1434633226600, value=1434632778438
 {noformat}
 We need to fix it so that the merge region transaction also takes the 
 master's timestamp. Similar to HBASE-13875.
 When this happens, clients start to see a row in the meta with an empty 
 HRegionInfo (this is because the Put done during the region open only updates 
 the location information but not the HRI, and the HRI deleted during the 
 merge transaction remains deleted).



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


[jira] [Updated] (HBASE-13939) Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell

2015-06-19 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan updated HBASE-13939:
---
Issue Type: Sub-task  (was: Improvement)
Parent: HBASE-13500

 Make HFileReaderImpl.getFirstKeyInBlock() to return a Cell
 --

 Key: HBASE-13939
 URL: https://issues.apache.org/jira/browse/HBASE-13939
 Project: HBase
  Issue Type: Sub-task
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Minor
 Fix For: 2.0.0


 The getFirstKeyInBlock() in HFileReaderImpl is returning a BB. It is getting 
 used in seekBefore cases.  Because we return a BB we create a KeyOnlyKV once 
 for comparison
 {code}
   if (reader.getComparator()
   .compareKeyIgnoresMvcc(
   new KeyValue.KeyOnlyKeyValue(firstKey.array(), 
 firstKey.arrayOffset(),
   firstKey.limit()), key) = 0) {
 long previousBlockOffset = seekToBlock.getPrevBlockOffset();
 // The key we are interested in
 if (previousBlockOffset == -1) {
   // we have a 'problem', the key we want is the first of the file.
   return false;
 }
 
 {code}
 And if the compare fails we again create another KeyOnlyKv 
 {code}
   Cell firstKeyInCurrentBlock = new 
 KeyValue.KeyOnlyKeyValue(Bytes.getBytes(firstKey));
   loadBlockAndSeekToKey(seekToBlock, firstKeyInCurrentBlock, true, key, 
 true);
 {code}
 So one object will be enough and that can be returned by getFirstKeyInBlock. 
 Also will be useful when we go with Buffered backed server cell to change in 
 one place. 



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


[jira] [Updated] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi updated HBASE-13214:
--
Status: Patch Available  (was: Open)

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2-again.patch, 
 HBASE-13214-v2.patch, HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13214) Remove deprecated and unused methods from HTable class

2015-06-19 Thread Ashish Singhi (JIRA)

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

Ashish Singhi updated HBASE-13214:
--
Status: Open  (was: Patch Available)

 Remove deprecated and unused methods from HTable class
 --

 Key: HBASE-13214
 URL: https://issues.apache.org/jira/browse/HBASE-13214
 Project: HBase
  Issue Type: Sub-task
  Components: API
Affects Versions: 2.0.0
Reporter: Mikhail Antonov
Assignee: Ashish Singhi
 Fix For: 2.0.0

 Attachments: HBASE-13214-v1.patch, HBASE-13214-v2.patch, 
 HBASE-13214.patch


 Methods like #getRegionLocation(), #isTableEnabled() etc.



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


[jira] [Updated] (HBASE-13931) Move Unsafe based operations to UnsafeAccess

2015-06-19 Thread Anoop Sam John (JIRA)

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

Anoop Sam John updated HBASE-13931:
---
Attachment: HBASE-13931_V2.patch

Attaching patch with comment fix for  a QA run. There seems some issues with QA.

 Move Unsafe based operations to UnsafeAccess
 

 Key: HBASE-13931
 URL: https://issues.apache.org/jira/browse/HBASE-13931
 Project: HBase
  Issue Type: Improvement
Reporter: Anoop Sam John
Assignee: Anoop Sam John
 Fix For: 2.0.0

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


 We have this new class added. Bytes.java having unsafe based reads in it. Now 
 HBASE-13916 will add similar unsafe based reads (on BB) in ByteBufferUtils.  
 We can move the unsafe based operations to UnsafeAccess and otehr places just 
 refer to here.



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


  1   2   >