[jira] [Created] (HBASE-8167) make RPC select ops multi-threaded

2013-03-21 Thread Liang Xie (JIRA)
Liang Xie created HBASE-8167:


 Summary: make RPC select ops multi-threaded
 Key: HBASE-8167
 URL: https://issues.apache.org/jira/browse/HBASE-8167
 Project: HBase
  Issue Type: Improvement
  Components: IPC/RPC
Affects Versions: 0.98.0
Reporter: Liang Xie
Assignee: Liang Xie


Current RPC framework is single listener thread with multiple Reader thread, 
this is pretty similar with thrift's THsHaServer design. And from thrift0.8, 
TThreadedSelectorServer was introduced to meet network-io-bound scenario 
better. There's a benchmark report on it: 
https://github.com/m1ch1/mapkeeper/wiki/Thrift-Java-Servers-Compared
I think we could make HBaseServer's listener multi-thread as well.  Just a raw 
thought now, no patch available yet.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7403) Online Merge

2013-03-21 Thread chunhui shen (JIRA)

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

chunhui shen updated HBASE-7403:


Attachment: hbase-7403-trunkv30.patch

rebased on the trunk

> Online Merge
> 
>
> Key: HBASE-7403
> URL: https://issues.apache.org/jira/browse/HBASE-7403
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.95.0
>Reporter: chunhui shen
>Assignee: chunhui shen
>Priority: Critical
> Fix For: 0.95.0, 0.98.0
>
> Attachments: 7403-trunkv5.patch, 7403-trunkv6.patch, 7403v5.diff, 
> 7403-v5.txt, 7403v5.txt, hbase-7403-94v1.patch, hbase-7403-trunkv10.patch, 
> hbase-7403-trunkv11.patch, hbase-7403-trunkv12.patch, 
> hbase-7403-trunkv13.patch, hbase-7403-trunkv14.patch, 
> hbase-7403-trunkv15.patch, hbase-7403-trunkv16.patch, 
> hbase-7403-trunkv19.patch, hbase-7403-trunkv1.patch, 
> hbase-7403-trunkv20.patch, hbase-7403-trunkv22.patch, 
> hbase-7403-trunkv23.patch, hbase-7403-trunkv24.patch, 
> hbase-7403-trunkv26.patch, hbase-7403-trunkv28.patch, 
> hbase-7403-trunkv29.patch, hbase-7403-trunkv30.patch, 
> hbase-7403-trunkv5.patch, hbase-7403-trunkv6.patch, hbase-7403-trunkv7.patch, 
> hbase-7403-trunkv8.patch, hbase-7403-trunkv9.patch, merge region.pdf
>
>
> Support executing region merge transaction on Regionserver, similar with 
> split transaction
> Process of merging two regions:
> a.client sends RPC (dispatch merging regions) to master
> b.master moves the regions together (on the same regionserver where the more 
> heavily loaded region resided)
> c.master sends RPC (merge regions) to this regionserver
> d.Regionserver executes the region merge transaction in the thread pool
> e.the above b,c,d run asynchronously
> Process of region merge transaction:
> a.Construct a new region merge transaction.
> b.prepare for the merge transaction, the transaction will be canceled if it 
> is unavailable, 
> e.g. two regions don't belong to same table; two regions are not adjacent in 
> a non-compulsory merge; region is closed or has reference
> c.execute the transaction as the following:
> /**
>  * Set region as in transition, set it into MERGING state.
>  */
> SET_MERGING_IN_ZK,
> /**
>  * We created the temporary merge data directory.
>  */
> CREATED_MERGE_DIR,
> /**
>  * Closed the merging region A.
>  */
> CLOSED_REGION_A,
> /**
>  * The merging region A has been taken out of the server's online regions 
> list.
>  */
> OFFLINED_REGION_A,
> /**
>  * Closed the merging region B.
>  */
> CLOSED_REGION_B,
> /**
>  * The merging region B has been taken out of the server's online regions 
> list.
>  */
> OFFLINED_REGION_B,
> /**
>  * Started in on creation of the merged region.
>  */
> STARTED_MERGED_REGION_CREATION,
> /**
>  * Point of no return. If we got here, then transaction is not recoverable
>  * other than by crashing out the regionserver.
>  */
> PONR
> d.roll back if step c throws exception
> Usage:
> HBaseAdmin#mergeRegions
> See more details from the patch

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread chunhui shen (JIRA)

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

chunhui shen commented on HBASE-8163:
-

[~te...@apache.org]
The gap can be got through the metrics. e.g ganglia

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20.628
> *Improvement: YGC 40+%; WPS 5%+*
> review board :
> https://reviews.apache.org/r/10056/

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7403) Online Merge

2013-03-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-7403:
--

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

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

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

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

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

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

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

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

{color:red}-1 lineLengths{color}.  The patch introduces lines longer than 
100

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

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

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

This message is automatically generated.

> Online Merge
> 
>
> Key: HBASE-7403
> URL: https://issues.apache.org/jira/browse/HBASE-7403
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.95.0
>Reporter: chunhui shen
>Assignee: chunhui shen
>Priority: Critical
> Fix For: 0.95.0, 0.98.0
>
> Attachments: 7403-trunkv5.patch, 7403-trunkv6.patch, 7403v5.diff, 
> 7403-v5.txt, 7403v5.txt, hbase-7403-94v1.patch, hbase-7403-trunkv10.patch, 
> hbase-7403-trunkv11.patch, hbase-7403-trunkv12.patch, 
> hbase-7403-trunkv13.patch, hbase-7403-trunkv14.patch, 
> hbase-7403-trunkv15.patch, hbase-7403-trunkv16.patch, 
> hbase-7403-trunkv19.patch, hbase-7403-trunkv1.patch, 
> hbase-7403-trunkv20.patch, hbase-7403-trunkv22.patch, 
> hbase-7403-trunkv23.patch, hbase-7403-trunkv24.patch, 
> hbase-7403-trunkv26.patch, hbase-7403-trunkv28.patch, 
> hbase-7403-trunkv29.patch, hbase-7403-trunkv30.patch, 
> hbase-7403-trunkv5.patch, hbase-7403-trunkv6.patch, hbase-7403-trunkv7.patch, 
> hbase-7403-trunkv8.patch, hbase-7403-trunkv9.patch, merge region.pdf
>
>
> Support executing region merge transaction on Regionserver, similar with 
> split transaction
> Process of merging two regions:
> a.client sends RPC (dispatch merging regions) to master
> b.master moves the regions together (on the same regionserver where the more 
> heavily loaded region resided)
> c.master sends RPC (merge regions) to this regionserver
> d.Regionserver executes the region merge transaction in the thread pool
> e.the above b,c,d run asynchronously
> Process of region merge transaction:
> a.Construct a new region merge transaction.
> b.prepare for the merge transaction, the transaction will be canceled if it 
> is unavailable, 
> e.g. two regions don't belong to same table; two regions are not adjacent in 
> a non-compulsory merge; region is closed or has reference
> c.execute the transaction as the following:
> /**
>  * Set region as in transition, set it into MERGING state.
>  */
> SET_MERGING_IN_ZK,
> /**
>  * We created the temporary merge data di

[jira] [Updated] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread chunhui shen (JIRA)

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

chunhui shen updated HBASE-8163:


Attachment: hbase-8163v2.patch

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch, hbase-8163v2.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20.628
> *Improvement: YGC 40+%; WPS 5%+*
> review board :
> https://reviews.apache.org/r/10056/

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7403) Online Merge

2013-03-21 Thread chunhui shen (JIRA)

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

chunhui shen updated HBASE-7403:


Attachment: hbase-7403-trunkv31.patch

fix javadoc warning

> Online Merge
> 
>
> Key: HBASE-7403
> URL: https://issues.apache.org/jira/browse/HBASE-7403
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.95.0
>Reporter: chunhui shen
>Assignee: chunhui shen
>Priority: Critical
> Fix For: 0.95.0, 0.98.0
>
> Attachments: 7403-trunkv5.patch, 7403-trunkv6.patch, 7403v5.diff, 
> 7403-v5.txt, 7403v5.txt, hbase-7403-94v1.patch, hbase-7403-trunkv10.patch, 
> hbase-7403-trunkv11.patch, hbase-7403-trunkv12.patch, 
> hbase-7403-trunkv13.patch, hbase-7403-trunkv14.patch, 
> hbase-7403-trunkv15.patch, hbase-7403-trunkv16.patch, 
> hbase-7403-trunkv19.patch, hbase-7403-trunkv1.patch, 
> hbase-7403-trunkv20.patch, hbase-7403-trunkv22.patch, 
> hbase-7403-trunkv23.patch, hbase-7403-trunkv24.patch, 
> hbase-7403-trunkv26.patch, hbase-7403-trunkv28.patch, 
> hbase-7403-trunkv29.patch, hbase-7403-trunkv30.patch, 
> hbase-7403-trunkv31.patch, hbase-7403-trunkv5.patch, 
> hbase-7403-trunkv6.patch, hbase-7403-trunkv7.patch, hbase-7403-trunkv8.patch, 
> hbase-7403-trunkv9.patch, merge region.pdf
>
>
> Support executing region merge transaction on Regionserver, similar with 
> split transaction
> Process of merging two regions:
> a.client sends RPC (dispatch merging regions) to master
> b.master moves the regions together (on the same regionserver where the more 
> heavily loaded region resided)
> c.master sends RPC (merge regions) to this regionserver
> d.Regionserver executes the region merge transaction in the thread pool
> e.the above b,c,d run asynchronously
> Process of region merge transaction:
> a.Construct a new region merge transaction.
> b.prepare for the merge transaction, the transaction will be canceled if it 
> is unavailable, 
> e.g. two regions don't belong to same table; two regions are not adjacent in 
> a non-compulsory merge; region is closed or has reference
> c.execute the transaction as the following:
> /**
>  * Set region as in transition, set it into MERGING state.
>  */
> SET_MERGING_IN_ZK,
> /**
>  * We created the temporary merge data directory.
>  */
> CREATED_MERGE_DIR,
> /**
>  * Closed the merging region A.
>  */
> CLOSED_REGION_A,
> /**
>  * The merging region A has been taken out of the server's online regions 
> list.
>  */
> OFFLINED_REGION_A,
> /**
>  * Closed the merging region B.
>  */
> CLOSED_REGION_B,
> /**
>  * The merging region B has been taken out of the server's online regions 
> list.
>  */
> OFFLINED_REGION_B,
> /**
>  * Started in on creation of the merged region.
>  */
> STARTED_MERGED_REGION_CREATION,
> /**
>  * Point of no return. If we got here, then transaction is not recoverable
>  * other than by crashing out the regionserver.
>  */
> PONR
> d.roll back if step c throws exception
> Usage:
> HBaseAdmin#mergeRegions
> See more details from the patch

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (HBASE-8168) HMaster is not Running.

2013-03-21 Thread Nallapati T Krishna (JIRA)
Nallapati T Krishna created HBASE-8168:
--

 Summary: HMaster is not Running.
 Key: HBASE-8168
 URL: https://issues.apache.org/jira/browse/HBASE-8168
 Project: HBase
  Issue Type: Bug
  Components: shell
Affects Versions: 0.94.4
 Environment: Ubuntu 12.4
Reporter: Nallapati T Krishna
 Fix For: 0.94.4


When I used to start Hbase, for the first time Hmaster is running. If i type 
JPS for second consecutive time, Hmaster is not working. It is showing some 
thing like the below.

rg.apache.zookeeper.ClientCnxn: Opening socket connection to server 
ubuntu-1/172.16.78.122:. Will not attempt to authenticate using SASL 
(unknown error)
 2013-03-20 22:04:33,491 INFO org.apache.zookeeper.ClientCnxn: Socket 
connection established to ubuntu-1/172.16.78.122:, initiating session
 2013-03-20 22:04:33,492 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
additional data from server sessionid 0x0, likely server has closed socket, 
closing socket connection and attempting reconnect
 2013-03-20 22:04:33,592 WARN 
org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper: Possibly transient 
ZooKeeper exception: 
org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = 
ConnectionLoss for /hbase
 2013-03-20 22:04:33,593 INFO org.apache.hadoop.hbase.util.RetryCounter: 
Sleeping 4000ms before retry #2...
 2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
authenticate using SASL (unknown error)
 2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Socket 
connection established to CLBBLR-6196/172.16.78.91:, initiating session
 2013-03-20 22:04:33,761 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
additional data from server sessionid 0x0, likely server has closed socket, 
closing socket connection and attempting reconnect
 2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
connection to server CLBBLR-6176/172.16.78.136:. Will not attempt to 
authenticate using SASL (unknown error)
 2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Socket 
connection established to CLBBLR-6176/172.16.78.136:, initiating session
 2013-03-20 22:04:34,841 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
additional data from server sessionid 0x0, likely server has closed socket, 
closing socket connection and attempting reconnect
 2013-03-20 22:04:36,026 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
connection to server ubuntu-1/172.16.78.122:. Will not attempt to 
authenticate using SASL (unknown error)
 2013-03-20 22:04:36,027 INFO org.apache.zookeeper.ClientCnxn: Socket 
connection established to ubuntu-1/172.16.78.122:, initiating session
 2013-03-20 22:04:36,028 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
additional data from server sessionid 0x0, likely server has closed socket, 
closing socket connection and attempting reconnect
 2013-03-20 22:04:36,570 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
authenticate using SASL (unknown error)
 2013-03-20 22:04:36,571 INFO org.apache.zookeeper.ClientCnxn: Socket 
connection established to CLBBLR-6196/172.16.78.91:, initiating session
 2013-03-20 22:04:36,572 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
additional data from server sessionid 0x0, likely server has closed socket, 
closing socket connection and attempting reconnect
 2013-03-20 22:04:37,505 INFO org.apache.zookeeper.ClientCnxn: Op

As discussed.Hbase is starting properly without any issue. When we are trying 
to list the tables in Hbase or create the table, HMaster is not running.

 
 
 



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8168) HMaster is not Running.

2013-03-21 Thread Nallapati T Krishna (JIRA)

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

Nallapati T Krishna updated HBASE-8168:
---

Attachment: Hbase Error.png

> HMaster is not Running.
> ---
>
> Key: HBASE-8168
> URL: https://issues.apache.org/jira/browse/HBASE-8168
> Project: HBase
>  Issue Type: Bug
>  Components: shell
>Affects Versions: 0.94.4
> Environment: Ubuntu 12.4
>Reporter: Nallapati T Krishna
> Fix For: 0.94.4
>
> Attachments: Hbase Error.png
>
>
> When I used to start Hbase, for the first time Hmaster is running. If i type 
> JPS for second consecutive time, Hmaster is not working. It is showing some 
> thing like the below.
> rg.apache.zookeeper.ClientCnxn: Opening socket connection to server 
> ubuntu-1/172.16.78.122:. Will not attempt to authenticate using SASL 
> (unknown error)
>  2013-03-20 22:04:33,491 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to ubuntu-1/172.16.78.122:, initiating session
>  2013-03-20 22:04:33,492 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:33,592 WARN 
> org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper: Possibly transient 
> ZooKeeper exception: 
> org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode 
> = ConnectionLoss for /hbase
>  2013-03-20 22:04:33,593 INFO org.apache.hadoop.hbase.util.RetryCounter: 
> Sleeping 4000ms before retry #2...
>  2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6196/172.16.78.91:, initiating session
>  2013-03-20 22:04:33,761 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6176/172.16.78.136:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6176/172.16.78.136:, initiating session
>  2013-03-20 22:04:34,841 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:36,026 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server ubuntu-1/172.16.78.122:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:36,027 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to ubuntu-1/172.16.78.122:, initiating session
>  2013-03-20 22:04:36,028 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:36,570 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:36,571 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6196/172.16.78.91:, initiating session
>  2013-03-20 22:04:36,572 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:37,505 INFO org.apache.zookeeper.ClientCnxn: Op
> As discussed.Hbase is starting properly without any issue. When we are trying 
> to list the tables in Hbase or create the table, HMaster is not running.
>  
>  
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8168) HMaster is not Running.

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

Pls do not raise JIRA for this.  Send out a mail to the User list.  Folks will 
help you out.
BTW the problem here is i think the MAster is not able to connect to Zookeeper.
Check if there is any firewall and your configs.

The first time when you do JPS the process starts but it gets killed which 
means there is a setup/config related issue.

> HMaster is not Running.
> ---
>
> Key: HBASE-8168
> URL: https://issues.apache.org/jira/browse/HBASE-8168
> Project: HBase
>  Issue Type: Bug
>  Components: shell
>Affects Versions: 0.94.4
> Environment: Ubuntu 12.4
>Reporter: Nallapati T Krishna
> Fix For: 0.94.4
>
> Attachments: Hbase Error.png
>
>
> When I used to start Hbase, for the first time Hmaster is running. If i type 
> JPS for second consecutive time, Hmaster is not working. It is showing some 
> thing like the below.
> rg.apache.zookeeper.ClientCnxn: Opening socket connection to server 
> ubuntu-1/172.16.78.122:. Will not attempt to authenticate using SASL 
> (unknown error)
>  2013-03-20 22:04:33,491 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to ubuntu-1/172.16.78.122:, initiating session
>  2013-03-20 22:04:33,492 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:33,592 WARN 
> org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper: Possibly transient 
> ZooKeeper exception: 
> org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode 
> = ConnectionLoss for /hbase
>  2013-03-20 22:04:33,593 INFO org.apache.hadoop.hbase.util.RetryCounter: 
> Sleeping 4000ms before retry #2...
>  2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6196/172.16.78.91:, initiating session
>  2013-03-20 22:04:33,761 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6176/172.16.78.136:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6176/172.16.78.136:, initiating session
>  2013-03-20 22:04:34,841 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:36,026 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server ubuntu-1/172.16.78.122:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:36,027 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to ubuntu-1/172.16.78.122:, initiating session
>  2013-03-20 22:04:36,028 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:36,570 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:36,571 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6196/172.16.78.91:, initiating session
>  2013-03-20 22:04:36,572 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:37,505 INFO org.apache.zookeeper.ClientCnxn: Op
> As discussed.Hbase is starting properly without any issue. When we are trying 
> to list the tables in Hbase or create the table, HMaster is not running.
>  
>  
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (HBASE-8168) HMaster is not Running.

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

ramkrishna.s.vasudevan resolved HBASE-8168.
---

Resolution: Invalid

Pls raise in User list.

> HMaster is not Running.
> ---
>
> Key: HBASE-8168
> URL: https://issues.apache.org/jira/browse/HBASE-8168
> Project: HBase
>  Issue Type: Bug
>  Components: shell
>Affects Versions: 0.94.4
> Environment: Ubuntu 12.4
>Reporter: Nallapati T Krishna
> Fix For: 0.94.4
>
> Attachments: Hbase Error.png
>
>
> When I used to start Hbase, for the first time Hmaster is running. If i type 
> JPS for second consecutive time, Hmaster is not working. It is showing some 
> thing like the below.
> rg.apache.zookeeper.ClientCnxn: Opening socket connection to server 
> ubuntu-1/172.16.78.122:. Will not attempt to authenticate using SASL 
> (unknown error)
>  2013-03-20 22:04:33,491 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to ubuntu-1/172.16.78.122:, initiating session
>  2013-03-20 22:04:33,492 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:33,592 WARN 
> org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper: Possibly transient 
> ZooKeeper exception: 
> org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode 
> = ConnectionLoss for /hbase
>  2013-03-20 22:04:33,593 INFO org.apache.hadoop.hbase.util.RetryCounter: 
> Sleeping 4000ms before retry #2...
>  2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:33,760 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6196/172.16.78.91:, initiating session
>  2013-03-20 22:04:33,761 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6176/172.16.78.136:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:34,840 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6176/172.16.78.136:, initiating session
>  2013-03-20 22:04:34,841 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:36,026 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server ubuntu-1/172.16.78.122:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:36,027 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to ubuntu-1/172.16.78.122:, initiating session
>  2013-03-20 22:04:36,028 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:36,570 INFO org.apache.zookeeper.ClientCnxn: Opening socket 
> connection to server CLBBLR-6196/172.16.78.91:. Will not attempt to 
> authenticate using SASL (unknown error)
>  2013-03-20 22:04:36,571 INFO org.apache.zookeeper.ClientCnxn: Socket 
> connection established to CLBBLR-6196/172.16.78.91:, initiating session
>  2013-03-20 22:04:36,572 INFO org.apache.zookeeper.ClientCnxn: Unable to read 
> additional data from server sessionid 0x0, likely server has closed socket, 
> closing socket connection and attempting reconnect
>  2013-03-20 22:04:37,505 INFO org.apache.zookeeper.ClientCnxn: Op
> As discussed.Hbase is starting properly without any issue. When we are trying 
> to list the tables in Hbase or create the table, HMaster is not running.
>  
>  
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7403) Online Merge

2013-03-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-7403:
--

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

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

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

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

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

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

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

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

{color:red}-1 lineLengths{color}.  The patch introduces lines longer than 
100

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

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

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

This message is automatically generated.

> Online Merge
> 
>
> Key: HBASE-7403
> URL: https://issues.apache.org/jira/browse/HBASE-7403
> Project: HBase
>  Issue Type: New Feature
>Affects Versions: 0.95.0
>Reporter: chunhui shen
>Assignee: chunhui shen
>Priority: Critical
> Fix For: 0.95.0, 0.98.0
>
> Attachments: 7403-trunkv5.patch, 7403-trunkv6.patch, 7403v5.diff, 
> 7403-v5.txt, 7403v5.txt, hbase-7403-94v1.patch, hbase-7403-trunkv10.patch, 
> hbase-7403-trunkv11.patch, hbase-7403-trunkv12.patch, 
> hbase-7403-trunkv13.patch, hbase-7403-trunkv14.patch, 
> hbase-7403-trunkv15.patch, hbase-7403-trunkv16.patch, 
> hbase-7403-trunkv19.patch, hbase-7403-trunkv1.patch, 
> hbase-7403-trunkv20.patch, hbase-7403-trunkv22.patch, 
> hbase-7403-trunkv23.patch, hbase-7403-trunkv24.patch, 
> hbase-7403-trunkv26.patch, hbase-7403-trunkv28.patch, 
> hbase-7403-trunkv29.patch, hbase-7403-trunkv30.patch, 
> hbase-7403-trunkv31.patch, hbase-7403-trunkv5.patch, 
> hbase-7403-trunkv6.patch, hbase-7403-trunkv7.patch, hbase-7403-trunkv8.patch, 
> hbase-7403-trunkv9.patch, merge region.pdf
>
>
> Support executing region merge transaction on Regionserver, similar with 
> split transaction
> Process of merging two regions:
> a.client sends RPC (dispatch merging regions) to master
> b.master moves the regions together (on the same regionserver where the more 
> heavily loaded region resided)
> c.master sends RPC (merge regions) to this regionserver
> d.Regionserver executes the region merge transaction in the thread pool
> e.the above b,c,d run asynchronously
> Process of region merge transaction:
> a.Construct a new region merge transaction.
> b.prepare for the merge transaction, the transaction will be canceled if it 
> is unavailable, 
> e.g. two regions don't belong to same table; two regions are not adjacent in 
> a non-compulsory merge; region is closed or has reference
> c.execute the transaction as the following:
> /**
>  * Set region as in transition, set it into MERGING 

[jira] [Commented] (HBASE-8165) Update our protobuf to 2.5 from 2.4.1

2013-03-21 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-8165:
---

Is Hadoop using 2.5? Do we need two protocs installed to build Hadoop and HBase 
? Will a 2.5 shipped with HBase collide with 2.4 library shipped with the HDFS 
client on the classpath?

> Update our protobuf to 2.5 from 2.4.1
> -
>
> Key: HBASE-8165
> URL: https://issues.apache.org/jira/browse/HBASE-8165
> Project: HBase
>  Issue Type: Bug
>Reporter: stack
>Assignee: stack
> Fix For: 0.95.0
>
> Attachments: 8165.txt
>
>
> Update to new 2.5 pb.  Some speedups and a new PARSER idiom that bypasses 
> making a builder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7948) client doesn't need to refresh meta while the region is opening

2013-03-21 Thread Hudson (JIRA)

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

Hudson commented on HBASE-7948:
---

Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #457 (See 
[https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/457/])
HBASE-7948 client doesn't need to refresh meta while the region is opening 
(Revision 1459130)

 Result = FAILURE
sershe : 
Files : 
* /hbase/trunk/conf/log4j.properties
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/HRegionLocation.java
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/client/RetriesExhaustedWithDetailsException.java
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/exceptions/RegionOpeningException.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/TestHRegionLocation.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestCatalogTracker.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestMetaReaderEditorNoCluster.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/HConnectionTestingUtility.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestHCM.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestLoadIncrementalHFilesSplitRecovery.java
* /hbase/trunk/hbase-server/src/test/resources/log4j.properties


> client doesn't need to refresh meta while the region is opening
> ---
>
> Key: HBASE-7948
> URL: https://issues.apache.org/jira/browse/HBASE-7948
> Project: HBase
>  Issue Type: Improvement
>Reporter: Sergey Shelukhin
>Assignee: Sergey Shelukhin
> Attachments: HBASE-7948-v0.patch, HBASE-7948-v1.patch, 
> HBASE-7948-v1.patch, HBASE-7948-v2.patch, HBASE-7948-v3.patch, 
> HBASE-7948-v4.patch, HBASE-7948-v5-.patch, HBASE-7948-v5.patch
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-7953:
---

Status: Open  (was: Patch Available)

> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-7953:
---

Status: Patch Available  (was: Open)

Really need to get this in. Launching Hadoop QA again...

> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7848) Use ZK-based read/write lock to make flush-type snapshot robust against table enable/disable/alter

2013-03-21 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh commented on HBASE-7848:
---

Then I'm concerned that all the other handlers may have the same problem.

Other operations (ZK nodes in splitting for example) have had a history of 
assuming exn means failure (when it could mean success but temporary network 
partition).   Looking at 
https://github.com/apache/hbase/blob/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java#L223
 it seem that when interruptions and timeouts exceptions are thrown, the lock 
could be taken but reported as an exception.

Can you give me a pointer to some tests that exercies the timeout and/or 
interrupt path?  

A quick solution may be to use the is a slight modification of the canonical 
java lock pattern -- put the acquire inside the try block, and make sure the 
release is called and is able to differentiate between the different lock 
acquire failure modes or can release when acquire returned in the questionable 
state)

> Use ZK-based read/write lock to make flush-type snapshot robust against table 
> enable/disable/alter
> --
>
> Key: HBASE-7848
> URL: https://issues.apache.org/jira/browse/HBASE-7848
> Project: HBase
>  Issue Type: Improvement
>  Components: snapshots
>Affects Versions: 0.96.0
>Reporter: Ted Yu
>Assignee: Ted Yu
> Attachments: 7848-v1.txt, 7848-v2.txt, hbase-7848_v2.patch
>
>
> Current region split following flush would fail snapshot.
> We can utilize ZK-based read/write lock to make flush-type snapshot robust

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8160) HMaster#move doesn't check if master initialized

2013-03-21 Thread Jonathan Hsieh (JIRA)

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

Jonathan Hsieh commented on HBASE-8160:
---

The other uses of checkInitialized just wrap with ServiceException (no extra 
UnknownRegionException wrapping on init check fails).  Stick to the pattern 
(and remove comment)?

Other methods have a this structural pattern, consider using it in moveRegion 
as well?

{code}
ProtoResponse method(ProtoRequest) {
...
 actualMethod()
...
}

retType actualMethod(arg, arg, arg) {
  .. 
  checkInitialized() 
  .. do stuff
} 
{code}




> HMaster#move doesn't check if master initialized
> 
>
> Key: HBASE-8160
> URL: https://issues.apache.org/jira/browse/HBASE-8160
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Trivial
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 0.94-8160.patch, trunk-8160.patch
>
>
> Before the master is initialized, if a move request comes in, it could cause 
> the master to abort, if the region was already in transition before the 
> master started up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8156) Support for Namenode HA for non-idempotent operations

2013-03-21 Thread Himanshu Vashishtha (JIRA)

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

Himanshu Vashishtha commented on HBASE-8156:


org.apache.hadoop.hbase.mapreduce.TestHFileOutputFormat passes for me on local.

> Support for Namenode HA for non-idempotent operations
> -
>
> Key: HBASE-8156
> URL: https://issues.apache.org/jira/browse/HBASE-8156
> Project: HBase
>  Issue Type: Sub-task
>  Components: Filesystem Integration
>Affects Versions: 0.95.0
>Reporter: Himanshu Vashishtha
>Assignee: Himanshu Vashishtha
> Fix For: 0.98.0
>
> Attachments: HBase-8156-trunk-v1.patch, HBase-8156-trunk-v2.patch
>
>
> In hadoop 2 HA, non-idempotent operations are not retried at the hdfs side. 
> This is by design as retrying a non-idempotent operation might not be a good 
> design choice for some use case. 
> HBase needs to handle the retries for such operations at its end. 
> With HBase-7806, there is already some work going on for file system 
> abstractions. There, HReginFileSystem sits as an abstraction between region 
> and FS. This jira is a move in the same direction, where it adds retry 
> functionality for non-idempotent calls such as create, rename and delete in 
> HRegionFileSystem class.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-7878:
--

Attachment: 7878-trunk-v14.txt

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v14.txt, 7878-trunk-v14.txt, 
> 7878-trunk-v2.txt, 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 
> 7878-trunk-v6.txt, 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 
> 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-8163:
---

Does it make more sense to define maxsize as percentage of (total) memstore 
size ?

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch, hbase-8163v2.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20.628
> *Improvement: YGC 40+%; WPS 5%+*
> review board :
> https://reviews.apache.org/r/10056/

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-7878:
--

Attachment: (was: 7878-trunk-v14.txt)

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v2.txt, 7878-trunk-v3.txt, 7878-trunk-v4.txt, 
> 7878-trunk-v5.txt, 7878-trunk-v6.txt, 7878-trunk-v7.txt, 7878-trunk-v8.txt, 
> 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-7878:
--

Attachment: (was: 7878-trunk-v14.txt)

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v2.txt, 7878-trunk-v3.txt, 7878-trunk-v4.txt, 
> 7878-trunk-v5.txt, 7878-trunk-v6.txt, 7878-trunk-v7.txt, 7878-trunk-v8.txt, 
> 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-7878:
--

Attachment: (was: 7878-trunk-v14.txt)

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v2.txt, 7878-trunk-v3.txt, 7878-trunk-v4.txt, 
> 7878-trunk-v5.txt, 7878-trunk-v6.txt, 7878-trunk-v7.txt, 7878-trunk-v8.txt, 
> 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-7878:
--

Attachment: 7878-trunk-v14.txt

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v2.txt, 7878-trunk-v3.txt, 7878-trunk-v4.txt, 
> 7878-trunk-v5.txt, 7878-trunk-v6.txt, 7878-trunk-v7.txt, 7878-trunk-v8.txt, 
> 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7848) Use ZK-based read/write lock to make flush-type snapshot robust against table enable/disable/alter

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

HBASE-8131 modifies the way CreateTableHandler releases the lock.  It was me 
who changed that.
So even incase of exceptions while creating table the lock would be released.  
Otherwise the user was unable to perform the create table operation once again.
Pls do correct me if that was wrong.

> Use ZK-based read/write lock to make flush-type snapshot robust against table 
> enable/disable/alter
> --
>
> Key: HBASE-7848
> URL: https://issues.apache.org/jira/browse/HBASE-7848
> Project: HBase
>  Issue Type: Improvement
>  Components: snapshots
>Affects Versions: 0.96.0
>Reporter: Ted Yu
>Assignee: Ted Yu
> Attachments: 7848-v1.txt, 7848-v2.txt, hbase-7848_v2.patch
>
>
> Current region split following flush would fail snapshot.
> We can utilize ZK-based read/write lock to make flush-type snapshot robust

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-7953:
---

Can you use the following instead of calling System.out.println() ?
{code}
  static final Log LOG =
LogFactory.getLog(HFilePerformanceEvaluation.class.getName());
{code}
{code}
+  if (scanner.seekTo(b) < 0) {
+System.out.println("Not able to seekTo");
{code}
Include contents of b above.
{code}
+  if (scanner.seekTo(getGaussianRandomRowBytes()) < 0) {
+System.out.println("Not able to seekTo");
{code}
Store getGaussianRandomRowBytes() in a variable and include the contents of the 
variable in log, please.

> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8160) HMaster#move doesn't check if master initialized

2013-03-21 Thread Jimmy Xiang (JIRA)

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

Jimmy Xiang commented on HBASE-8160:


I noticed that pattern. Sure, will do.

> HMaster#move doesn't check if master initialized
> 
>
> Key: HBASE-8160
> URL: https://issues.apache.org/jira/browse/HBASE-8160
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Trivial
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 0.94-8160.patch, trunk-8160.patch
>
>
> Before the master is initialized, if a move request comes in, it could cause 
> the master to abort, if the region was already in transition before the 
> master started up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8137) Add failed to open/close region state

2013-03-21 Thread Jimmy Xiang (JIRA)

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

Jimmy Xiang updated HBASE-8137:
---

Resolution: Fixed
Status: Resolved  (was: Patch Available)

> Add failed to open/close region state
> -
>
> Key: HBASE-8137
> URL: https://issues.apache.org/jira/browse/HBASE-8137
> Project: HBase
>  Issue Type: Improvement
>  Components: Region Assignment
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Minor
> Fix For: 0.95.0, 0.98.0
>
> Attachments: trunk-8137.patch, trunk-8137_v2.patch
>
>
> Since we are going to remove assignment timeout monitor, we should add some 
> state to show if a region failed to open/close after max retries.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7845) optimize hfile index key

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari commented on HBASE-7845:


[~xieliang007] I ran 10 times the test in Trunk without your patch. I'm now 
running with your patch. I also used HBASE-7953 to make sure tests are not 
failing. I will post the results today.

> optimize hfile index key
> 
>
> Key: HBASE-7845
> URL: https://issues.apache.org/jira/browse/HBASE-7845
> Project: HBase
>  Issue Type: Improvement
>  Components: HFile
>Affects Versions: 0.96.0
>Reporter: Liang Xie
>Assignee: Liang Xie
> Fix For: 0.98.0
>
> Attachments: HBASE-7845.txt, HBASE-7845-v2.txt, HBASE-7845-v3.txt, 
> HBASE-7845-v4.txt, HBASE-7845-v5.txt, HBASE-7845-v6.txt, HBASE-7845-v7.txt, 
> HBASE-7845-v8.txt
>
>
> Leveldb uses ByteWiseComparatorImpl::FindShortestSeparator() & 
> FindShortSuccessor() to reduce index key size, it would be helpful under 
> special conditions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8165) Update our protobuf to 2.5 from 2.4.1

2013-03-21 Thread stack (JIRA)

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

stack commented on HBASE-8165:
--

[~andrew.purt...@gmail.com] Hadoop is not using 2.5.  Doubt hadoop1 will ever 
get pb2.5.  Ditto hadoop2.  Regards protoc, yeah, if you were going to gen pb 
classes, you might be in awkward position where you would different protocs.  
You think this a killer (2.5 has some purported speedups).

> Update our protobuf to 2.5 from 2.4.1
> -
>
> Key: HBASE-8165
> URL: https://issues.apache.org/jira/browse/HBASE-8165
> Project: HBase
>  Issue Type: Bug
>Reporter: stack
>Assignee: stack
> Fix For: 0.95.0
>
> Attachments: 8165.txt
>
>
> Update to new 2.5 pb.  Some speedups and a new PARSER idiom that bypasses 
> making a builder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8024) Make Store flush algorithm pluggable

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-8024:
---

Javadoc doesn't match actual parameter list:
{code}
+   * @param path The pathname of the tmp file into which the store was flushed
+   * @param logCacheFlushId
+   * @return StoreFile created.
+   * @throws IOException
+   */
+  public StoreFile commitStoreFile(final Path path,
{code}
{code}
+ * Default implementation of StoreFlusher.
+ */
+public class DefaultStoreFlusher implements StoreFlusher {
{code}
Add annotation for audience.


> Make Store flush algorithm pluggable
> 
>
> Key: HBASE-8024
> URL: https://issues.apache.org/jira/browse/HBASE-8024
> Project: HBase
>  Issue Type: Sub-task
>  Components: regionserver
>Affects Versions: 0.95.0, 0.96.0, 0.94.5
>Reporter: Maryann Xue
>Assignee: Maryann Xue
> Attachments: HBASE-8024-trunk.patch, HBASE-8024.v2.patch
>
>
> The idea is to make "StoreFlusher" an interface instead of an implementation 
> class, and have the original StoreFlusher as the default store flush impl.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8165) Update our protobuf to 2.5 from 2.4.1

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-8165:
---

Harsh opened HADOOP-9346 for Hadoop to compile with protoc 2.5

> Update our protobuf to 2.5 from 2.4.1
> -
>
> Key: HBASE-8165
> URL: https://issues.apache.org/jira/browse/HBASE-8165
> Project: HBase
>  Issue Type: Bug
>Reporter: stack
>Assignee: stack
> Fix For: 0.95.0
>
> Attachments: 8165.txt
>
>
> Update to new 2.5 pb.  Some speedups and a new PARSER idiom that bypasses 
> making a builder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8165) Update our protobuf to 2.5 from 2.4.1

2013-03-21 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-8165:
---

bq.  Regards protoc, yeah, if you were going to gen pb classes, you might be in 
awkward position where you would different protocs. You think this a killer 
(2.5 has some purported speedups).

I worry about collisions between different versions of the protobuf library jar 
on the classpath wrt. HBase and the HDFS client.

Needing distinct versions of protoc for building HBase and Hadoop is not a big 
deal (for me).

> Update our protobuf to 2.5 from 2.4.1
> -
>
> Key: HBASE-8165
> URL: https://issues.apache.org/jira/browse/HBASE-8165
> Project: HBase
>  Issue Type: Bug
>Reporter: stack
>Assignee: stack
> Fix For: 0.95.0
>
> Attachments: 8165.txt
>
>
> Update to new 2.5 pb.  Some speedups and a new PARSER idiom that bypasses 
> making a builder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8165) Update our protobuf to 2.5 from 2.4.1

2013-03-21 Thread Andrew Purtell (JIRA)

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

Andrew Purtell commented on HBASE-8165:
---

Hmm, HADOOP-9346 may indicate that if the PB 2.5 library is seen first on the 
classpath then code generated by 2.4 (e.g. HDFS client) will fail to link.

> Update our protobuf to 2.5 from 2.4.1
> -
>
> Key: HBASE-8165
> URL: https://issues.apache.org/jira/browse/HBASE-8165
> Project: HBase
>  Issue Type: Bug
>Reporter: stack
>Assignee: stack
> Fix For: 0.95.0
>
> Attachments: 8165.txt
>
>
> Update to new 2.5 pb.  Some speedups and a new PARSER idiom that bypasses 
> making a builder.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-7953:
---

Status: Open  (was: Patch Available)

> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch, HBASE-7953-v3-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-7953:
---

Attachment: HBASE-7953-v3-trunk.patch

> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch, HBASE-7953-v3-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-7953:
---

Status: Patch Available  (was: Open)

Thanks for the comments Ted.

I have also updated the existing System.out.printl() calls to use log instead. 


> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch, HBASE-7953-v3-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-7878:
--

{color:green}+1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12574820/7878-trunk-v14.txt
  against trunk revision .

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

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

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

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

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

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

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

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

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

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

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

This message is automatically generated.

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v2.txt, 7878-trunk-v3.txt, 7878-trunk-v4.txt, 
> 7878-trunk-v5.txt, 7878-trunk-v6.txt, 7878-trunk-v7.txt, 7878-trunk-v8.txt, 
> 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8158) Backport HBASE-8140 "TableMapReduceUtils#addDependencyJar fails when nested inside another MR job"

2013-03-21 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk commented on HBASE-8158:
-

That would be ideal, yes. Trouble is, JarFinder is from hadoop-common-test, 
which means it's likely not on the classpath for prod deployments. The comment 
in that bit of code suggests it was originally introduced only for the benefit 
of MRv2 test cases.

{noformat}
$ find . -name JarFinder.java
./hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/JarFinder.java
{noformat}

> Backport HBASE-8140 "TableMapReduceUtils#addDependencyJar fails when nested 
> inside another MR job"
> --
>
> Key: HBASE-8158
> URL: https://issues.apache.org/jira/browse/HBASE-8158
> Project: HBase
>  Issue Type: Bug
>  Components: mapreduce
>Affects Versions: 0.94.7
>Reporter: Nick Dimiduk
>Assignee: Nick Dimiduk
> Attachments: 8158-port-jarfinder-0.94.patch, 
> 8158-port-jarfinder-0.94.patch, 8158-port-jarfinder-0.94.patch
>
>
> Assess the stability of the JarFinder util class from Hadoop-2, as a 
> candidate for backporting to 0.94.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7953) Some HFilePerformanceEvaluation tests might fail because of scanner.getValue when there is no more rows

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-7953:
---

Patch v3 looks good.

> Some HFilePerformanceEvaluation tests might fail because of scanner.getValue 
> when there is no more rows
> ---
>
> Key: HBASE-7953
> URL: https://issues.apache.org/jira/browse/HBASE-7953
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-7953-v0-trunk.patch, HBASE-7953-v1-trunk.patch, 
> HBASE-7953-v2-trunk.patch, HBASE-7953-v3-trunk.patch
>
>
> There is 2 places in the code (Both trunk and 0.94) where we are trying to 
> get the row value even when scanner.next() returned null. Need to fix that.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-8163:
--

Status: Patch Available  (was: Open)

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch, hbase-8163v2.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20.628
> *Improvement: YGC 40+%; WPS 5%+*
> review board :
> https://reviews.apache.org/r/10056/

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

I went thro the patch and also the different errors that you got Ted.
First thanks for your patience and persistence.
https://issues.apache.org/jira/browse/HBASE-7878?focusedCommentId=13608535&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13608535
 - what was the error that you faced here  Ted?
I can see that the juliet HLog creation should have failed the split right?  
Did the OrphanHLogAfterSplitException was thrown?

I see that though the patch was simple now this JIRA is more of testcase 
correction.

I just rebased the List to SEt for processedLog and corruptedLogs. See whether 
you are ok with it.




> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v15.patch, 7878-trunk-v2.txt, 
> 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 7878-trunk-v6.txt, 
> 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

Attachment: 7878-trunk-v15.patch

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v15.patch, 7878-trunk-v2.txt, 
> 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 7878-trunk-v6.txt, 
> 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8160) HMaster#move doesn't check if master initialized

2013-03-21 Thread Jimmy Xiang (JIRA)

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

Jimmy Xiang updated HBASE-8160:
---

Status: Open  (was: Patch Available)

> HMaster#move doesn't check if master initialized
> 
>
> Key: HBASE-8160
> URL: https://issues.apache.org/jira/browse/HBASE-8160
> Project: HBase
>  Issue Type: Bug
>  Components: master
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Trivial
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 0.94-8160.patch, trunk-8160.patch
>
>
> Before the master is initialized, if a move request comes in, it could cause 
> the master to abort, if the region was already in transition before the 
> master started up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (HBASE-8147) Add Integration Test for "The HCat Scenario"

2013-03-21 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk reassigned HBASE-8147:
---

Assignee: Nick Dimiduk

> Add Integration Test for "The HCat Scenario"
> 
>
> Key: HBASE-8147
> URL: https://issues.apache.org/jira/browse/HBASE-8147
> Project: HBase
>  Issue Type: Test
>  Components: mapreduce, test
>Affects Versions: 0.95.0, 0.98.0
>Reporter: Nick Dimiduk
>Assignee: Nick Dimiduk
> Attachments: HBASE-8147-WIP.patch
>
>
> HBASE-8140 needs an integration test.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-7878:
---

Do we need to use Set for processedLogs and corruptedLogs ?
Each log would be either in processed or corrupted state. I think there 
wouldn't be duplicate entry in the List representation.

bq. that the juliet HLog creation should have failed the split right?
As I said above, that didn't happen due to check for orphan hlog missing the 
juliet HLog.

bq. I see that though the patch was simple now this JIRA is more of testcase 
correction.
I think my patch exposed different behavior in tests (w.r.t. 
ZombieNewLogWriterRegionServer) due to timing.
I am quite certain that patch v14 would make tests consistently pass.

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v15.patch, 7878-trunk-v2.txt, 
> 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 7878-trunk-v6.txt, 
> 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7848) Use ZK-based read/write lock to make flush-type snapshot robust against table enable/disable/alter

2013-03-21 Thread Enis Soztutar (JIRA)

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

Enis Soztutar commented on HBASE-7848:
--

bq. Looking at 
https://github.com/apache/hbase/blob/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java#L223
 it seem that when interruptions and timeouts exceptions are thrown, the lock 
could be taken but reported as an exception.
On timeout, we delete the lock znode already, ZKInterProcessLockBase, line 199. 
In case of interruptions, I think we should ensure that the lock znode is 
deleted before throwing the exception. This seems to be the model taken by 
ReentrantLock in java. I'll open a jira for that.
bq. Can you give me a pointer to some tests that exercies the timeout and/or 
interrupt path?
There are timeout tests in TestTableLockManager, and 
TestZKInterProcessReadWriteLock. 
bq. A quick solution may be to use the is a slight modification of the 
canonical java lock pattern – put the acquire inside the try block
>From the javadoc 
>http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/locks/ReentrantLock.html,
> the canonical model is not to put acquire() in try, but rest of the code 
>after acquire().
{code}
public void m() { 
 lock.lock();  // block until condition holds
 try {
   // ... method body
 } finally {
   lock.unlock()
 }
   }
{code}

Though you are right that we have to ensure lock is properly cleaned up on 
Interruption. This has not been a problem, since currently only the server 
shutdown interrupts the lock waiting, and zk cleans the znodes since they are 
EPHEMERAL. 

bq. HBASE-8131 modifies the way CreateTableHandler releases the lock. It was me 
who changed that.
Yes, in CreateTableHandler, we should have guarded against the whole process(), 
instead of the subcall handleCreateTable(). Your patch fixes the condition 
where lock is acquired(). What Jonathan is pointing to is inside the acquire() 
call. 


> Use ZK-based read/write lock to make flush-type snapshot robust against table 
> enable/disable/alter
> --
>
> Key: HBASE-7848
> URL: https://issues.apache.org/jira/browse/HBASE-7848
> Project: HBase
>  Issue Type: Improvement
>  Components: snapshots
>Affects Versions: 0.96.0
>Reporter: Ted Yu
>Assignee: Ted Yu
> Attachments: 7848-v1.txt, 7848-v2.txt, hbase-7848_v2.patch
>
>
> Current region split following flush would fail snapshot.
> We can utilize ZK-based read/write lock to make flush-type snapshot robust

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-5583) Master restart on create table with splitkeys does not recreate table with all the splitkey regions

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

Attachment: HBASE-5583_new_1.patch

> Master restart on create table with splitkeys does not recreate table with 
> all the splitkey regions
> ---
>
> Key: HBASE-5583
> URL: https://issues.apache.org/jira/browse/HBASE-5583
> Project: HBase
>  Issue Type: Bug
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 0.95.0
>
> Attachments: HBASE-5583_new_1.patch
>
>
> -> Create table using splitkeys
> -> MAster goes down before all regions are added to meta
> -> On master restart the table is again enabled but with less number of 
> regions than specified in splitkeys
> Anyway client will get an exception if i had called sync create table.  But 
> table exists or not check will say table exists. 
> Is this scenario to be handled by client only or can we have some mechanism 
> on the master side for this? Pls suggest.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8147) Add Integration Test for "The HCat Scenario"

2013-03-21 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk updated HBASE-8147:


Issue Type: Sub-task  (was: Test)
Parent: HBASE-8084

> Add Integration Test for "The HCat Scenario"
> 
>
> Key: HBASE-8147
> URL: https://issues.apache.org/jira/browse/HBASE-8147
> Project: HBase
>  Issue Type: Sub-task
>  Components: mapreduce, test
>Affects Versions: 0.95.0, 0.98.0
>Reporter: Nick Dimiduk
>Assignee: Nick Dimiduk
> Attachments: HBASE-8147-WIP.patch
>
>
> HBASE-8140 needs an integration test.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7845) optimize hfile index key

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari commented on HBASE-7845:


Here we go!
jmspaggi@hbasetest:~/hbase$ cat before.txt | grep took | grep Gaus
13/03/21 11:39:36 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 120260ms.
13/03/21 11:44:42 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119153ms.
13/03/21 11:49:49 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119066ms.
13/03/21 11:54:55 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 118865ms.
13/03/21 12:00:02 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119450ms.
13/03/21 12:05:11 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 122048ms.
13/03/21 12:10:14 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119197ms.
13/03/21 12:15:22 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119977ms.
13/03/21 12:20:32 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 121030ms.
13/03/21 12:25:38 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119880ms.
jmspaggi@hbasetest:~/hbase$ cat after.txt | grep took | grep Gaus
13/03/21 12:56:07 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119765ms.
13/03/21 13:01:14 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119730ms.
13/03/21 13:06:20 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119945ms.
13/03/21 13:11:24 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119283ms.
13/03/21 13:16:29 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 118535ms.
13/03/21 13:21:30 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 117409ms.
13/03/21 13:26:37 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119458ms.
13/03/21 13:31:43 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119178ms.
13/03/21 13:36:48 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 118427ms.
13/03/21 13:41:55 INFO hbase.HFilePerformanceEvaluation: Running 
GaussianRandomReadBenchmark for 100 rows took 119580ms.


jmspaggi@hbasetest:~/hbase$ cat before.txt | grep took | grep Write
13/03/21 11:35:42 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1307ms.
13/03/21 11:40:51 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1333ms.
13/03/21 11:45:58 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1328ms.
13/03/21 11:51:04 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1313ms.
13/03/21 11:56:09 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1302ms.
13/03/21 12:01:15 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1322ms.
13/03/21 12:06:23 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1304ms.
13/03/21 12:11:29 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1299ms.
13/03/21 12:16:37 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1329ms.
13/03/21 12:21:45 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1354ms.
jmspaggi@hbasetest:~/hbase$ cat after.txt | grep took | grep Write
13/03/21 12:52:14 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1261ms.
13/03/21 12:57:21 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1286ms.
13/03/21 13:02:27 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1338ms.
13/03/21 13:07:33 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1309ms.
13/03/21 13:12:39 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 1317ms.
13/03/21 13:17:41 INFO hbase.HFilePerformanceEvaluation: Running 
SequentialWriteBenchmark for 100 rows took 130

[jira] [Commented] (HBASE-7845) optimize hfile index key

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-7845:
---

Thanks Jean-Marc for doing the comparison.

Based on the above, I give +1 for Liang's patch.

> optimize hfile index key
> 
>
> Key: HBASE-7845
> URL: https://issues.apache.org/jira/browse/HBASE-7845
> Project: HBase
>  Issue Type: Improvement
>  Components: HFile
>Affects Versions: 0.96.0
>Reporter: Liang Xie
>Assignee: Liang Xie
> Fix For: 0.98.0
>
> Attachments: HBASE-7845.txt, HBASE-7845-v2.txt, HBASE-7845-v3.txt, 
> HBASE-7845-v4.txt, HBASE-7845-v5.txt, HBASE-7845-v6.txt, HBASE-7845-v7.txt, 
> HBASE-7845-v8.txt
>
>
> Leveldb uses ByteWiseComparatorImpl::FindShortestSeparator() & 
> FindShortSuccessor() to reduce index key size, it would be helpful under 
> special conditions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7995) Export$Exporter could be replaced with IdentityTableMapper

2013-03-21 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk commented on HBASE-7995:
-

bump.

> Export$Exporter could be replaced with IdentityTableMapper
> --
>
> Key: HBASE-7995
> URL: https://issues.apache.org/jira/browse/HBASE-7995
> Project: HBase
>  Issue Type: Sub-task
>  Components: mapreduce
>Reporter: Nick Dimiduk
>Assignee: Nick Dimiduk
>Priority: Minor
> Fix For: 0.95.0, 0.98.0
>
> Attachments: 
> 0001-HBASE-7995-Replace-Export-Exporter-with-IdentityTabl.patch
>
>
> The Mapper implementation in Export looks identical to IdentityTableMapper, 
> except for the (poor) exception handling. I'd like to consolidate on 
> IdentityTableMapper, but I'm looking for some historical perspective before 
> doing so (cc [~stack])
> Export$Exporter's map method:
> {code}
> public void map(ImmutableBytesWritable row, Result value, Context context)
> throws IOException {
>   try {
> context.write(row, value);
>   } catch (InterruptedException e) {
> e.printStackTrace();
>   }
> }
> {code}
> IdentityTableMapper's map method:
> {code}
>   public void map(ImmutableBytesWritable key, Result value, Context context)
>   throws IOException, InterruptedException {
> context.write(key, value);
>   }
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Assigned] (HBASE-6739) Single put should avoid batch overhead when autoflush is on

2013-03-21 Thread Nick Dimiduk (JIRA)

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

Nick Dimiduk reassigned HBASE-6739:
---

Assignee: (was: Nick Dimiduk)

> Single put should avoid  batch overhead when autoflush is on
> 
>
> Key: HBASE-6739
> URL: https://issues.apache.org/jira/browse/HBASE-6739
> Project: HBase
>  Issue Type: Improvement
>Reporter: Jimmy Xiang
>Priority: Minor
>
> Currently, even when autoflush is on, a single put is handled the same way as 
> if autoflush is off: convert the put to multi-action, create a callable, hand 
> it to an executor to process, wait for it to complete.
> We can avoid this overhead for single put if autoflush is on.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-5583) Master restart on create table with splitkeys does not recreate table with all the splitkey regions

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

I am attaching a patch here with the current state of work.
This is not the final one.

Still Exception handling and testing is pending.

I would like to get myself clarified whether am going in the right direction.
My first question would be
-> In order to maintain different states at which we are in while creating 
table should we go for a special node under the table znode or can we add new 
states to the existing table states like (DISABLING, ENABLING, DISABLED etc).?

BAsed on this i can rebase the patch.
Also pls note that the ZooKeeperProto.java is showing as a complete change with 
out which this patch should be comparitively smaller.  

-> This patch basically tries to handle table creation on master failure and 
restart.
-> Adds a new state CREATINGTABLE instead of ENABLING so that we know that this 
table is partially created.
-> Adds a status node under /table to maintain various states of the table 
creation process (is this seperate node needed or not is my doubt).
-> Table lock related things needs to be checked.

Even after we do all this HBaseAdmin.isTableAvailable(tableName, splitKeys) 
should be used by the client to check if all the regions are created.  
Feed back is appreciated.
I can do more testing and handle ZK exceptions in a better way in my further 
patches.
Thanks.

> Master restart on create table with splitkeys does not recreate table with 
> all the splitkey regions
> ---
>
> Key: HBASE-5583
> URL: https://issues.apache.org/jira/browse/HBASE-5583
> Project: HBase
>  Issue Type: Bug
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 0.95.0
>
> Attachments: HBASE-5583_new_1.patch
>
>
> -> Create table using splitkeys
> -> MAster goes down before all regions are added to meta
> -> On master restart the table is again enabled but with less number of 
> regions than specified in splitkeys
> Anyway client will get an exception if i had called sync create table.  But 
> table exists or not check will say table exists. 
> Is this scenario to be handled by client only or can we have some mechanism 
> on the master side for this? Pls suggest.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7845) optimize hfile index key

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

JM , thanks for your work.  


> optimize hfile index key
> 
>
> Key: HBASE-7845
> URL: https://issues.apache.org/jira/browse/HBASE-7845
> Project: HBase
>  Issue Type: Improvement
>  Components: HFile
>Affects Versions: 0.96.0
>Reporter: Liang Xie
>Assignee: Liang Xie
> Fix For: 0.98.0
>
> Attachments: HBASE-7845.txt, HBASE-7845-v2.txt, HBASE-7845-v3.txt, 
> HBASE-7845-v4.txt, HBASE-7845-v5.txt, HBASE-7845-v6.txt, HBASE-7845-v7.txt, 
> HBASE-7845-v8.txt
>
>
> Leveldb uses ByteWiseComparatorImpl::FindShortestSeparator() & 
> FindShortSuccessor() to reduce index key size, it would be helpful under 
> special conditions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8137) Add failed to open/close region state

2013-03-21 Thread Hudson (JIRA)

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

Hudson commented on HBASE-8137:
---

Integrated in HBase-TRUNK #3981 (See 
[https://builds.apache.org/job/HBase-TRUNK/3981/])
HBASE-8137 Add failed to open/close region state (Revision 1459384)

 Result = FAILURE
jxiang : 
Files : 
* 
/hbase/trunk/hbase-client/src/main/java/org/apache/hadoop/hbase/master/RegionState.java
* 
/hbase/trunk/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/ClusterStatusProtos.java
* /hbase/trunk/hbase-protocol/src/main/protobuf/ClusterStatus.proto
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/DeleteTableHandler.java
* 
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/DisableTableHandler.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/Mocking.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
* 
/hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java


> Add failed to open/close region state
> -
>
> Key: HBASE-8137
> URL: https://issues.apache.org/jira/browse/HBASE-8137
> Project: HBase
>  Issue Type: Improvement
>  Components: Region Assignment
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Minor
> Fix For: 0.95.0, 0.98.0
>
> Attachments: trunk-8137.patch, trunk-8137_v2.patch
>
>
> Since we are going to remove assignment timeout monitor, we should add some 
> state to show if a region failed to open/close after max retries.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread ramkrishna.s.vasudevan (JIRA)

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

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

bq.I am quite certain that patch v14 would make tests consistently pass.
I agree.
Changing to Set from List is upto you.  Just thought would help you from adding 
all the files once and again removing it in two for loops after that.


> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v15.patch, 7878-trunk-v2.txt, 
> 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 7878-trunk-v6.txt, 
> 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (HBASE-8169) TestMaster#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions may randomly be assigned to a RS

2013-03-21 Thread Jeffrey Zhong (JIRA)
Jeffrey Zhong created HBASE-8169:


 Summary: TestMaster#testMasterFailoverWithMockedRITOnDeadRS may 
fail due to regions may randomly be assigned to a RS
 Key: HBASE-8169
 URL: https://issues.apache.org/jira/browse/HBASE-8169
 Project: HBase
  Issue Type: Bug
  Components: test
Affects Versions: 0.98.0, 0.94.7
Reporter: Jeffrey Zhong
Assignee: Jeffrey Zhong
Priority: Minor
 Fix For: 0.94.7


In the test case, we use "master.assignRegion(hri);" to assign regions to live 
RS or dead RS(will be aborted during the test). While master.assignRegion may 
not always successfully assign a region to the expected RS due to following 
error:

1) We firstly try to open a region in region server, let's say RS1
2) For some reason the region open takes more than a time out period
3) AM tries to reassign it and force a new plan due to the time out
4) the Region is re-assigned to a random RS 

Then it cause the test case failure due to regions setup isn't in expected 
state.

I attached a log with extra added logging info and some stack traces(with (new 
Exception()).printStackTrace() so you can ignore java.lang.Exception). You can 
search region 36716be644bc9c78b3a96e0d4a43c183 to see master.assignRegion 
assigned a region to a randome RS. I saw the test failed once in 5 times in a 
loop.



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-5583) Master restart on create table with splitkeys does not recreate table with all the splitkey regions

2013-03-21 Thread Anoop Sam John (JIRA)

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

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

Ram
   Started going through the patch. It looks so big change but is it 
really? There generated file is fully rewritten!
ZooKeeper.proto
{code}
ENABLING = 3;
+CREATINGTABLE = 4;
{code}
Can we make CREATINGTABLE -> CREATING?

{code}
+  enum State {
+CREATED_TD = 0;
+CREATED_REGIONINFO = 1;
+MOVED_TO_ORIG_LOCATION = 2;
+ADD_TO_META = 3;
+ASSIGN_USER_REGIONS = 4;
+DONE = 4;
+  }
{code}
Repeated ordinal. Typo?
Will continue..

> Master restart on create table with splitkeys does not recreate table with 
> all the splitkey regions
> ---
>
> Key: HBASE-5583
> URL: https://issues.apache.org/jira/browse/HBASE-5583
> Project: HBase
>  Issue Type: Bug
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 0.95.0
>
> Attachments: HBASE-5583_new_1.patch
>
>
> -> Create table using splitkeys
> -> MAster goes down before all regions are added to meta
> -> On master restart the table is again enabled but with less number of 
> regions than specified in splitkeys
> Anyway client will get an exception if i had called sync create table.  But 
> table exists or not check will say table exists. 
> Is this scenario to be handled by client only or can we have some mechanism 
> on the master side for this? Pls suggest.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8169) TestMaster#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions may randomly be assigned to a RS

2013-03-21 Thread Jeffrey Zhong (JIRA)

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

Jeffrey Zhong updated HBASE-8169:
-

Attachment: RegionAssignedRandomly.txt

> TestMaster#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions 
> may randomly be assigned to a RS
> ---
>
> Key: HBASE-8169
> URL: https://issues.apache.org/jira/browse/HBASE-8169
> Project: HBase
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.98.0, 0.94.7
>Reporter: Jeffrey Zhong
>Assignee: Jeffrey Zhong
>Priority: Minor
> Fix For: 0.94.7
>
> Attachments: RegionAssignedRandomly.txt
>
>
> In the test case, we use "master.assignRegion(hri);" to assign regions to 
> live RS or dead RS(will be aborted during the test). While 
> master.assignRegion may not always successfully assign a region to the 
> expected RS due to following error:
> 1) We firstly try to open a region in region server, let's say RS1
> 2) For some reason the region open takes more than a time out period
> 3) AM tries to reassign it and force a new plan due to the time out
> 4) the Region is re-assigned to a random RS 
> Then it cause the test case failure due to regions setup isn't in expected 
> state.
> I attached a log with extra added logging info and some stack traces(with 
> (new Exception()).printStackTrace() so you can ignore java.lang.Exception). 
> You can search region 36716be644bc9c78b3a96e0d4a43c183 to see 
> master.assignRegion assigned a region to a randome RS. I saw the test failed 
> once in 5 times in a loop.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-5583) Master restart on create table with splitkeys does not recreate table with all the splitkey regions

2013-03-21 Thread Anoop Sam John (JIRA)

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

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

bq.In order to maintain different states at which we are in while creating 
table should we go for a special node under the table znode or can we add new 
states to the existing table states like (DISABLING, ENABLING, DISABLED etc)
IMO go with separate node.

> Master restart on create table with splitkeys does not recreate table with 
> all the splitkey regions
> ---
>
> Key: HBASE-5583
> URL: https://issues.apache.org/jira/browse/HBASE-5583
> Project: HBase
>  Issue Type: Bug
>Reporter: ramkrishna.s.vasudevan
>Assignee: ramkrishna.s.vasudevan
> Fix For: 0.95.0
>
> Attachments: HBASE-5583_new_1.patch
>
>
> -> Create table using splitkeys
> -> MAster goes down before all regions are added to meta
> -> On master restart the table is again enabled but with less number of 
> regions than specified in splitkeys
> Anyway client will get an exception if i had called sync create table.  But 
> table exists or not check will say table exists. 
> Is this scenario to be handled by client only or can we have some mechanism 
> on the master side for this? Pls suggest.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (HBASE-8151) Decode memstoreTS in HFileReaderV2 only when necessary

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl resolved HBASE-8151.
--

  Resolution: Fixed
Hadoop Flags: Reviewed

Committed the first patch (handling #1) to 0.94, 0.95, and 0.96.

> Decode memstoreTS in HFileReaderV2 only when necessary
> --
>
> Key: HBASE-8151
> URL: https://issues.apache.org/jira/browse/HBASE-8151
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8151-0.94.txt, 8151-0.94-v2.txt, 8151-0.96.txt, 
> 8151-0.96-v2.txt, 8151-0.96-v3.txt
>
>
> HFiles V2 store the memstoreTS of each KV.
> In many cases all the KVs in an HFile will have a memstoreTS of 0 (that is 
> the case when at the time the HFile was written there are no KVs that were 
> created after the oldest still active scanner - which is frequently the case).
> In that case we:
> # do not need to decode the memstoreTS (a vlong), since we know its value is 
> 0 and its length is 1 byte.
> # when we compact HFiles and all of the involved files have only KVs with 
> memstoreTS = 0 we know ahead of time that all KVs meet this condition and we 
> do not need to store the memstoreTS in the new HFile.
> This issue will cover the first part. The performance improvement will be 
> modest as it is fairly cheap to decode vlongs of size 1.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8169) TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions randomly assigned to a RS

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu updated HBASE-8169:
--

Summary: TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS may 
fail due to regions randomly assigned to a RS  (was: 
TestMaster#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions may 
randomly be assigned to a RS)

> TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS may fail due to 
> regions randomly assigned to a RS
> 
>
> Key: HBASE-8169
> URL: https://issues.apache.org/jira/browse/HBASE-8169
> Project: HBase
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.98.0, 0.94.7
>Reporter: Jeffrey Zhong
>Assignee: Jeffrey Zhong
>Priority: Minor
> Fix For: 0.94.7
>
> Attachments: hbase-8169.patch, RegionAssignedRandomly.txt
>
>
> In the test case, we use "master.assignRegion(hri);" to assign regions to 
> live RS or dead RS(will be aborted during the test). While 
> master.assignRegion may not always successfully assign a region to the 
> expected RS due to following error:
> 1) We firstly try to open a region in region server, let's say RS1
> 2) For some reason the region open takes more than a time out period
> 3) AM tries to reassign it and force a new plan due to the time out
> 4) the Region is re-assigned to a random RS 
> Then it cause the test case failure due to regions setup isn't in expected 
> state.
> I attached a log with extra added logging info and some stack traces(with 
> (new Exception()).printStackTrace() so you can ignore java.lang.Exception). 
> You can search region 36716be644bc9c78b3a96e0d4a43c183 to see 
> master.assignRegion assigned a region to a randome RS. I saw the test failed 
> once in 5 times in a loop.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8169) TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS may fail due to regions randomly assigned to a RS

2013-03-21 Thread Jeffrey Zhong (JIRA)

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

Jeffrey Zhong updated HBASE-8169:
-

Attachment: hbase-8169.patch

I think a region can be assigned randomly by design in a time out situation so 
I came up a patch for the issue in case someone else also stumble on this.
 

> TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS may fail due to 
> regions randomly assigned to a RS
> 
>
> Key: HBASE-8169
> URL: https://issues.apache.org/jira/browse/HBASE-8169
> Project: HBase
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.98.0, 0.94.7
>Reporter: Jeffrey Zhong
>Assignee: Jeffrey Zhong
>Priority: Minor
> Fix For: 0.94.7
>
> Attachments: hbase-8169.patch, RegionAssignedRandomly.txt
>
>
> In the test case, we use "master.assignRegion(hri);" to assign regions to 
> live RS or dead RS(will be aborted during the test). While 
> master.assignRegion may not always successfully assign a region to the 
> expected RS due to following error:
> 1) We firstly try to open a region in region server, let's say RS1
> 2) For some reason the region open takes more than a time out period
> 3) AM tries to reassign it and force a new plan due to the time out
> 4) the Region is re-assigned to a random RS 
> Then it cause the test case failure due to regions setup isn't in expected 
> state.
> I attached a log with extra added logging info and some stack traces(with 
> (new Exception()).printStackTrace() so you can ignore java.lang.Exception). 
> You can search region 36716be644bc9c78b3a96e0d4a43c183 to see 
> master.assignRegion assigned a region to a randome RS. I saw the test failed 
> once in 5 times in a loop.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl updated HBASE-8166:
-

Attachment: 8166-0.94.txt

0.94 patch (same patch as -v2 in HBASE-8155, with the already committed part 
removed)

> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt
>
>
> See discussion in HBASE-8151.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8028) Append, Increment: Adding rollback support

2013-03-21 Thread Himanshu Vashishtha (JIRA)

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

Himanshu Vashishtha commented on HBASE-8028:


Ping... :)

> Append, Increment: Adding rollback support
> --
>
> Key: HBASE-8028
> URL: https://issues.apache.org/jira/browse/HBASE-8028
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 0.94.5
>Reporter: Himanshu Vashishtha
>Assignee: Himanshu Vashishtha
> Fix For: 0.95.0
>
> Attachments: HBase-8028-v1.patch, HBase-8028-v2.patch, 
> HBase-8028-with-Increments-v1.patch
>
>
> In case there is an exception while doing the log-sync, the memstore is not 
> rollbacked, while the mvcc is _always_ forwarded to the writeentry created at 
> the beginning of the operation. This may lead to scanners seeing results 
> which are not synched to the fs.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl updated HBASE-8166:
-

Attachment: 8166-0.96.txt

Same for the 0.96 version.

> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt, 8166-0.96.txt
>
>
> See discussion in HBASE-8151.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl updated HBASE-8166:
-

Description: 
See discussion in HBASE-8151.
Upon compaction we can check all the involved HFiles. If all of them have a 
MAX_MEMSTORE_TS < the smallest scannner readpoint, we create a writer that does 
not write the memstoreTS.

  was:See discussion in HBASE-8151.


> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt, 8166-0.96.txt
>
>
> See discussion in HBASE-8151.
> Upon compaction we can check all the involved HFiles. If all of them have a 
> MAX_MEMSTORE_TS < the smallest scannner readpoint, we create a writer that 
> does not write the memstoreTS.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl updated HBASE-8166:
-

Status: Patch Available  (was: Open)

> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt, 8166-0.96.txt
>
>
> See discussion in HBASE-8151.
> Upon compaction we can check all the involved HFiles. If all of them have a 
> MAX_MEMSTORE_TS < the smallest scannner readpoint, we create a writer that 
> does not write the memstoreTS.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8127) Region of a disabling or disabled table could be stuck in transition state when RS dies during Master initialization

2013-03-21 Thread Jeffrey Zhong (JIRA)

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

Jeffrey Zhong commented on HBASE-8127:
--

[~rajesh23] If you run the test in a loop, you most likely will see it fail 
about once in 5 times due to the reason I logged in 
https://issues.apache.org/jira/browse/HBASE-8169. 

After I apply your fix + repro_hang + the fix of hbase-8169 on the test case, I 
was able to run the test successfully 20 times in a loop.(I saw it failed once 
due to RS could not start, which I think it's normal to other test cases as 
well).

If you like, you can reassign the JIRA to yourself.

> Region of a disabling or disabled table could be stuck in transition state 
> when RS dies during Master initialization
> 
>
> Key: HBASE-8127
> URL: https://issues.apache.org/jira/browse/HBASE-8127
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.94.5
>Reporter: Jeffrey Zhong
>Assignee: Jeffrey Zhong
> Fix For: 0.94.7
>
> Attachments: HBASE-8127_feedback.patch, HBASE-8127.patch, 
> hbase-8127_v1.patch, reproduce-hang.patch
>
>
> The issue happens when a RS dies during a master starts up. After the RS 
> reports open to the new master instance and dies immediately thereafter, the 
> RITs of disabling tables(or disabled table) on the died RS will be in RIT 
> state forever.
> I attached a patch to simulate the situation and you can run the following 
> command to reproduce the issue:
> {code}mvn test -PlocalTests 
> -Dtest=TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS{code}
> Basically, we skip regions of a dead server inside 
> AM.processDeadServersAndRecoverLostRegions as the following code and relies 
> on SSH to process those skipped regions:
> {code}
>   for (Pair deadRegion : deadServer.getValue()) {
> nodes.remove(deadRegion.getFirst().getEncodedName());
>   }
> {code} 
> While in SSH, we skip regions of disabling(or disabled table) again by 
> function processDeadRegion. Finally comes to the issue that RITs of 
> disabling(or disabled table) stuck there forever.
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread Sergey Shelukhin (JIRA)

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

Sergey Shelukhin commented on HBASE-8163:
-

some r comments

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch, hbase-8163v2.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20.628
> *Improvement: YGC 40+%; WPS 5%+*
> review board :
> https://reviews.apache.org/r/10056/

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7055) port HBASE-6371 tier-based compaction from 0.89-fb to trunk (with changes)

2013-03-21 Thread Sergey Shelukhin (JIRA)

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

Sergey Shelukhin commented on HBASE-7055:
-

Hmm... I don't think it makes sense to put description of all config params 
into release notes. There's separate doc in parent jira for that, we can add it 
to comments or book. 

> port HBASE-6371 tier-based compaction from 0.89-fb to trunk (with changes)
> --
>
> Key: HBASE-7055
> URL: https://issues.apache.org/jira/browse/HBASE-7055
> Project: HBase
>  Issue Type: Task
>  Components: Compaction
>Affects Versions: 0.96.0
>Reporter: Sergey Shelukhin
>Assignee: Sergey Shelukhin
> Fix For: 0.95.0
>
> Attachments: HBASE-6371-squashed.patch, HBASE-6371-v2-squashed.patch, 
> HBASE-6371-v3-refactor-only-squashed.patch, 
> HBASE-6371-v4-refactor-only-squashed.patch, 
> HBASE-6371-v5-refactor-only-squashed.patch, HBASE-7055-v0.patch, 
> HBASE-7055-v1.patch, HBASE-7055-v2.patch, HBASE-7055-v3.patch, 
> HBASE-7055-v4.patch, HBASE-7055-v5.patch, HBASE-7055-v6.patch, 
> HBASE-7055-v7.patch, HBASE-7055-v7.patch
>
>
> See HBASE-6371 for details.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-7878:
---

I see.
{code}
+  if (currFiles.length > processedLogs.size()
   + corruptedLogs.size()) {
{code}
Since the for loops are in the above if block which would lead to 
OrphanHLogAfterSplitException being thrown, I think the cost at runtime 
wouldn't be noticeable.

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v15.patch, 7878-trunk-v2.txt, 
> 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 7878-trunk-v6.txt, 
> 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Edward C. Skoviak (JIRA)
Edward C. Skoviak created HBASE-8170:


 Summary: HbaseAdmin.createTable cannot handle creating three 
regions
 Key: HBASE-8170
 URL: https://issues.apache.org/jira/browse/HBASE-8170
 Project: HBase
  Issue Type: Bug
  Components: Admin
Affects Versions: 0.94.5
Reporter: Edward C. Skoviak
Priority: Minor


createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
numRegions) (line #370) dictates that you must specify a minimum of three 
regions, however is not able to handle being fed a value three. This is a 
result of line #379 where it attempts to create the key splits, and calls 
Bytes.Split with a value of 0 for the third parameter. createTable should 
instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Created] (HBASE-8171) Perf issue with multiple client threads trying to prefetch Region Cache from META

2013-03-21 Thread Amitanand Aiyer (JIRA)
Amitanand Aiyer created HBASE-8171:
--

 Summary: Perf issue with multiple client threads trying to 
prefetch Region Cache from META
 Key: HBASE-8171
 URL: https://issues.apache.org/jira/browse/HBASE-8171
 Project: HBase
  Issue Type: Bug
Affects Versions: 0.94.5, 0.94.3, 0.89-fb
Reporter: Amitanand Aiyer
Assignee: Amitanand Aiyer


HBaseClient maintains a cache of Regions to region locations that gets cleared 
whenever the RS that the client talks to is unresponsive.

This will result in the Client having to talk to META to fetch the region 
location before doing the get/put.

https://issues.apache.org/jira/browse/HBASE-2468 introduces the feature to 
prewarm the cache, where the client gets some rows from META to warm the cache.

This is a costly operation. And,  it looks like all client threads that block 
on the regionLockObject, will go in and do the cache warmup; although the cache 
might have been already warmed up by an earlier thread. 

When there is a network issue going on, we see lots of Client threads blocking 
in locateRegionInMeta.


The fix would be to check the cache again; before we do the prefetch after 
grabbing the lock. Currently, the client threads look in the cache at the 
begining of the method. But a lot could have changed while waiting for the 
regionLockObject.




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7533) Write an RPC Specification for 0.96

2013-03-21 Thread stack (JIRA)

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

stack updated HBASE-7533:
-

Attachment: addendum.txt

Addendum that comes of review comments made by Jon Hsieh up on the google docs 
(thanks Jon).

> Write an RPC Specification for 0.96
> ---
>
> Key: HBASE-7533
> URL: https://issues.apache.org/jira/browse/HBASE-7533
> Project: HBase
>  Issue Type: Sub-task
>  Components: IPC/RPC
>Reporter: stack
>Assignee: stack
> Fix For: 0.95.0
>
> Attachments: 7533_proto_sketch.txt, 7533.txt, 7533v4.txt, 
> addendum.txt, rpc_spec3.txt, rpc_spec3.txt, rpc_spec.txt
>
>
> RPC format is changing for 0.96 to accomodate our protobufing all around.  
> Here is a first cut.  Please shred: 
> https://docs.google.com/document/d/1-1RJMLXzYldmHgKP7M7ynK6euRpucD03fZ603DlZfGI/edit

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari commented on HBASE-8170:


Sound like the split should use numRegions - 1 instead of numRegions - 3... 
Have you tried with other numbers, like 4 regions or more? Are you going to 
provide a patch?

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-7517) Preemptive fast fail exception should not be processed multiple times in the stack

2013-03-21 Thread Amitanand Aiyer (JIRA)

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

Amitanand Aiyer updated HBASE-7517:
---

Description: 
Preemptive fast fail exception is a mechanism to prevent client threads from 
blocking on talking to a unresponsive server.

This was introduced in HBASE-6629.

However, if a PFFE is thrown from an inner function (say locateRegionInMeta), 
then the outer functions should not process this exception as a failure in 
talking to the RS. We should just percolate this exception back to the client.



> Preemptive fast fail exception should not be processed multiple times in the 
> stack
> --
>
> Key: HBASE-7517
> URL: https://issues.apache.org/jira/browse/HBASE-7517
> Project: HBase
>  Issue Type: Bug
>Reporter: Amitanand Aiyer
>Priority: Minor
>
> Preemptive fast fail exception is a mechanism to prevent client threads from 
> blocking on talking to a unresponsive server.
> This was introduced in HBASE-6629.
> However, if a PFFE is thrown from an inner function (say locateRegionInMeta), 
> then the outer functions should not process this exception as a failure in 
> talking to the RS. We should just percolate this exception back to the client.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7878) recoverFileLease does not check return value of recoverLease

2013-03-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-7878:
--

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

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

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

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

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

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

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

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

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

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

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

 {color:red}-1 core zombie tests{color}.  There are 1 zombie test(s): 

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

This message is automatically generated.

> recoverFileLease does not check return value of recoverLease
> 
>
> Key: HBASE-7878
> URL: https://issues.apache.org/jira/browse/HBASE-7878
> Project: HBase
>  Issue Type: Bug
>  Components: util
>Affects Versions: 0.95.0, 0.94.6
>Reporter: Eric Newton
>Assignee: Ted Yu
>Priority: Critical
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 7878.94, 7878-94.addendum, 7878-94.addendum2, 
> 7878-trunk.addendum, 7878-trunk.addendum2, 7878-trunk-v10.txt, 
> 7878-trunk-v11-test.txt, 7878-trunk-v12.txt, 7878-trunk-v13.txt, 
> 7878-trunk-v14.txt, 7878-trunk-v15.patch, 7878-trunk-v2.txt, 
> 7878-trunk-v3.txt, 7878-trunk-v4.txt, 7878-trunk-v5.txt, 7878-trunk-v6.txt, 
> 7878-trunk-v7.txt, 7878-trunk-v8.txt, 7878-trunk-v9.txt, 7878-trunk-v9.txt
>
>
> I think this is a problem, so I'm opening a ticket so an HBase person takes a 
> look.
> Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease 
> recovery for Accumulo after HBase's lease recovery.  During testing, we 
> experienced data loss.  I found it is necessary to wait until recoverLease 
> returns true to know that the file has been truly closed.  In FSHDFSUtils, 
> the return result of recoverLease is not checked. In the unit tests created 
> to check lease recovery in HBASE-2645, the return result of recoverLease is 
> always checked.
> I think FSHDFSUtils should be modified to check the return result, and wait 
> until it returns true.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-8163:
--

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

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

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

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

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

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

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

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

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

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

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

 {color:red}-1 core zombie tests{color}.  There are 1 zombie test(s):   
at 
org.apache.hadoop.hbase.util.TestHBaseFsck.testHbckFixOrphanTable(TestHBaseFsck.java:427)

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

This message is automatically generated.

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch, hbase-8163v2.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20

[jira] [Commented] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari commented on HBASE-8170:


I just did some tests, and split returns n+2 splits.

So to get 3 splits, we need to ask for 1 and not for 0. So numRegions - 2 
should be passed.

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8137) Add failed to open/close region state

2013-03-21 Thread Hudson (JIRA)

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

Hudson commented on HBASE-8137:
---

Integrated in hbase-0.95 #93 (See 
[https://builds.apache.org/job/hbase-0.95/93/])
HBASE-8137 Add failed to open/close region state (Revision 1459385)

 Result = FAILURE
jxiang : 
Files : 
* 
/hbase/branches/0.95/hbase-client/src/main/java/org/apache/hadoop/hbase/master/RegionState.java
* 
/hbase/branches/0.95/hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/ClusterStatusProtos.java
* /hbase/branches/0.95/hbase-protocol/src/main/protobuf/ClusterStatus.proto
* 
/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java
* 
/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
* 
/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionStates.java
* 
/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/DeleteTableHandler.java
* 
/hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/master/handler/DisableTableHandler.java
* 
/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/master/Mocking.java
* 
/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManager.java
* 
/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestAssignmentManagerOnCluster.java


> Add failed to open/close region state
> -
>
> Key: HBASE-8137
> URL: https://issues.apache.org/jira/browse/HBASE-8137
> Project: HBase
>  Issue Type: Improvement
>  Components: Region Assignment
>Reporter: Jimmy Xiang
>Assignee: Jimmy Xiang
>Priority: Minor
> Fix For: 0.95.0, 0.98.0
>
> Attachments: trunk-8137.patch, trunk-8137_v2.patch
>
>
> Since we are going to remove assignment timeout monitor, we should add some 
> state to show if a region failed to open/close after max retries.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8163) MemStoreChunkPool: An improvement for JAVA GC when using MSLAB

2013-03-21 Thread stack (JIRA)

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

stack commented on HBASE-8163:
--

[~zjushch] Can we guarantee that pool size is 0 when memstores are full or near 
full?

[~lhofhansl] "If it is too big you'll waste space, if it is too small you'll 
just offset the GC for a bit."

Agree that pool should not be above and beyond memstore allocation.  Regards 
your comment that we just offset GC for a bit, don't we offset it period if 
successful reuse?

> MemStoreChunkPool: An improvement for JAVA GC when using MSLAB
> --
>
> Key: HBASE-8163
> URL: https://issues.apache.org/jira/browse/HBASE-8163
> Project: HBase
>  Issue Type: New Feature
>  Components: regionserver
>Reporter: chunhui shen
>Assignee: chunhui shen
> Attachments: hbase-8163v1.patch, hbase-8163v2.patch
>
>
> *Background*:
> When we use mslab,we will copy the keyvalue together in a structure called 
> *MemStoreLAB$Chunk*, therefore we could decrease the heap fragment. 
> *Problem*:
> When one chunk is full, we will create a new chunk, and then the old chunk 
> will be reclaimed by JVM if no reference to it.
> Mostly the chunk object would be promoted when doing Young GC, cause 
> increasing the cost of YGC 
> When a Chunk object has no reference? It should meet two following condition:
> 1.Memstore which this chunk belongs to is flushed
> 2.No scanner is opening on the memstore which this chunk belongs to
> *Solution:*
> 1.Create a chunk pool to manage the no-reference chunks, instead of being 
> reclaimed by JVM
> 2.When a Chunk has no reference, put it back to the pool
> 3.The pool has a max capacity, it will skip the chunks when achieve the max 
> size
> 4.When we need new Chunk to store KeyValue, get it from the pool if exists, 
> else create new one by pool, so we could be able to reuse the old chunks
> *Test results:*
> Environment:
> hbase-version:0.94
> -Xms4G -Xmx4G -Xmn2G
> Row size=50 bytes, Value size=1024 bytes
> 50 concurrent theads per client, insert 10,000,000 rows
> Before:
> Avg write request per second:12953
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 747 36.503 48 2.492 38.995
> After:
> Avg write request per second:14025
> After testing, final result of jstat -gcutil :
> YGC YGCT FGC FGCT GCT 
> 711 20.344 4 0.284 20.628
> *Improvement: YGC 40+%; WPS 5%+*
> review board :
> https://reviews.apache.org/r/10056/

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7845) optimize hfile index key

2013-03-21 Thread stack (JIRA)

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

stack commented on HBASE-7845:
--

[~jmspaggi] Nice.  Thanks.

> optimize hfile index key
> 
>
> Key: HBASE-7845
> URL: https://issues.apache.org/jira/browse/HBASE-7845
> Project: HBase
>  Issue Type: Improvement
>  Components: HFile
>Affects Versions: 0.96.0
>Reporter: Liang Xie
>Assignee: Liang Xie
> Fix For: 0.98.0
>
> Attachments: HBASE-7845.txt, HBASE-7845-v2.txt, HBASE-7845-v3.txt, 
> HBASE-7845-v4.txt, HBASE-7845-v5.txt, HBASE-7845-v6.txt, HBASE-7845-v7.txt, 
> HBASE-7845-v8.txt
>
>
> Leveldb uses ByteWiseComparatorImpl::FindShortestSeparator() & 
> FindShortSuccessor() to reduce index key size, it would be helpful under 
> special conditions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Edward C. Skoviak (JIRA)

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

Edward C. Skoviak commented on HBASE-8170:
--

Perhaps I am wrong, but as I understand it each splitKey defines the border 
where the split happens. So in this scenario the three regions would be 
everything before startKey, startKey to endKey, and then everything after 
endKey. The other createTable() function, which is called at the end of this 
function, works that way. This can be verified by calling it with two keys and 
calling HTable.getRegionLocations().size() and getting a return value of 3. So 
if we did numRegions - 2 we would always be getting an additional region (so in 
this case, 4).

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8127) Region of a disabling or disabled table could be stuck in transition state when RS dies during Master initialization

2013-03-21 Thread rajeshbabu (JIRA)

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

rajeshbabu updated HBASE-8127:
--

Assignee: rajeshbabu  (was: Jeffrey Zhong)

> Region of a disabling or disabled table could be stuck in transition state 
> when RS dies during Master initialization
> 
>
> Key: HBASE-8127
> URL: https://issues.apache.org/jira/browse/HBASE-8127
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 0.94.5
>Reporter: Jeffrey Zhong
>Assignee: rajeshbabu
> Fix For: 0.94.7
>
> Attachments: HBASE-8127_feedback.patch, HBASE-8127.patch, 
> hbase-8127_v1.patch, reproduce-hang.patch
>
>
> The issue happens when a RS dies during a master starts up. After the RS 
> reports open to the new master instance and dies immediately thereafter, the 
> RITs of disabling tables(or disabled table) on the died RS will be in RIT 
> state forever.
> I attached a patch to simulate the situation and you can run the following 
> command to reproduce the issue:
> {code}mvn test -PlocalTests 
> -Dtest=TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS{code}
> Basically, we skip regions of a dead server inside 
> AM.processDeadServersAndRecoverLostRegions as the following code and relies 
> on SSH to process those skipped regions:
> {code}
>   for (Pair deadRegion : deadServer.getValue()) {
> nodes.remove(deadRegion.getFirst().getEncodedName());
>   }
> {code} 
> While in SSH, we skip regions of disabling(or disabled table) again by 
> function processDeadRegion. Finally comes to the issue that RITs of 
> disabling(or disabled table) stuck there forever.
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Edward C. Skoviak (JIRA)

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

Edward C. Skoviak commented on HBASE-8170:
--

This is confirmed here[1]. {quote}The start key specified will become the end 
key of the first region of the table, and the end key specified will become the 
start key of the last region of the table (the first region has a null start 
key and the last region has a null end key). BigInteger math will be used to 
divide the key range specified into enough segments to make the required number 
of total regions.{quote}

[1] 
"http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/client/HBaseAdmin.html#createTable(org.apache.hadoop.hbase.HTableDescriptor,
 byte[], byte[], int)"

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-7845) optimize hfile index key

2013-03-21 Thread stack (JIRA)

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

stack commented on HBASE-7845:
--

[~xieliang007] I don't think you answered all my review questions above.  
Thanks.

getFakedKey is a bad name for what you are about.  How about 
getShortMidpointKey?  Also, in the comment, say what the method is trying to 
achieve.  You point at the issue but that is being a little (lazy) and besides 
the issue subject is 'optimize' which is pretty general.

Do you need to do this copy?

+  if (leftKey == null) {
+return Arrays.copyOf(rightKey, rightKey.length);
+  }

I suppose it is safer.

This define should be in HFile rather than in HConstants so it is beside where 
it is used:

HConstants.FAKE_INDEX_KEY_MAGIC

Also, 'FAKE' has negative connotations whereas what you are doing here is 
clever in a good way; would suggest you drop use of 'fake' and just say 
INDEX_KEY_MAGIC (ditto for method names).

Why this now:

{code}
-  // Expected block reads: 2. [HBASE-4443]
-  kvs = getData(FAMILY, "row", Arrays.asList("col5"), 2);
+  // Expected block reads: 1. [HBASE-4443]&[HBASE-7845]
+  kvs = getData(FAMILY, "row", Arrays.asList("col5"), 1);
{code}

You have a good few tests of new functionality.  That is good.  I'd think we 
should try this as part of a long-running job before commit.  I can volunteer 
to do that... 


> optimize hfile index key
> 
>
> Key: HBASE-7845
> URL: https://issues.apache.org/jira/browse/HBASE-7845
> Project: HBase
>  Issue Type: Improvement
>  Components: HFile
>Affects Versions: 0.96.0
>Reporter: Liang Xie
>Assignee: Liang Xie
> Fix For: 0.98.0
>
> Attachments: HBASE-7845.txt, HBASE-7845-v2.txt, HBASE-7845-v3.txt, 
> HBASE-7845-v4.txt, HBASE-7845-v5.txt, HBASE-7845-v6.txt, HBASE-7845-v7.txt, 
> HBASE-7845-v8.txt
>
>
> Leveldb uses ByteWiseComparatorImpl::FindShortestSeparator() & 
> FindShortSuccessor() to reduce index key size, it would be helpful under 
> special conditions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-8166:
--

{color:green}+1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12574846/8166-0.96.txt
  against trunk revision .

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

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

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

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

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

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 1.3.9) warnings.

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

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

  {color:green}+1 site{color}.  The mvn site goal succeeds with this patch.

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

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

This message is automatically generated.

> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt, 8166-0.96.txt
>
>
> See discussion in HBASE-8151.
> Upon compaction we can check all the involved HFiles. If all of them have a 
> MAX_MEMSTORE_TS < the smallest scannner readpoint, we create a writer that 
> does not write the memstoreTS.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari commented on HBASE-8170:


The method you are calling is using the Bytes.split function to split the keys 
and then is calling HBaseAdmin.createTable(final HTableDescriptor desc, byte 
[][] splitKeys)

In this method you can see this in the documentation: The total number of 
regions created will be the number of split keys plus one.

Which mean that each key you are passing is defining the end or/and the 
beginning of a region, without any overlap.

As an example:
{code}
  byte[] a = "a".getBytes();
  byte[] b = "z".getBytes();
  byte[][] splits = Bytes.split(a, b, 1);
{code}
Will give you 3 splits. "a", "m" and "z".
If you give that to createTable, that will give you 4 regions. Something like 
#00 to "a", "a" to "m", "m" to "z" and finally  "z" to #ff. (but without the 
overlaps).

So if you want to have only 3 regions, you need  to call split (a, b, 0). Which 
is why it's calling it with numRegions - 3.

But Bytes.split is not working with 0. So we have 2 options here.
1) We change (numRegions < 3) by (numRegions < 4) to force at least 4 regions. 
That way split is called with at least 1.
2) We implement a special scenario when numRegions = 3 and use the 2 keys


Something like  that:
{code}
  public void createTable(HTableDescriptor desc, byte [] startKey,
  byte [] endKey, int numRegions)
  throws IOException {
HTableDescriptor.isLegalTableName(desc.getName());
if(numRegions < 3) {
  throw new IllegalArgumentException("Must create at least three regions");
} else if(Bytes.compareTo(startKey, endKey) >= 0) {
  throw new IllegalArgumentException("Start key must be smaller than end 
key");
}
if (numRegions == 3) {
  createTable(desc, new byte[][]{startKey, endKey});
  return;
}
byte [][] splitKeys = Bytes.split(startKey, endKey, numRegions - 3);
if(splitKeys == null || splitKeys.length != numRegions - 1) {
  throw new IllegalArgumentException("Unable to split key range into enough 
regions");
}
createTable(desc, splitKeys);
  }
{code}


> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8156) Support for Namenode HA for non-idempotent operations

2013-03-21 Thread stack (JIRA)

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

stack commented on HBASE-8156:
--

You do not check the return here:

+createDir(storeDir);
 return storeDir;

Is it because it will either return true or throw an exception?  Never false?

Stuff will run slower now we are doing more trips to NN I suppose:

+if (!fs.exists(familyDir)) return;
+if(!deleteDir(familyDir))

e.g. the addition of the exists check above (Not the fault of this patch... 
just saying).

Again we do not check the return.  Should we?

-fs.mkdirs(storeDir);
+createDir(storeDir);

Here the model is a little different in that we check the return and if not 
what we want, then we throw exception:

-if (!fs.rename(buildPath, dstPath)) {
+
+if (!rename(buildPath, dstPath)) {

I suppose the createDir just throws an exception if it fails?  That is probably 
ok but different shape on these methods.

Yeah, do you need doc on this method saying how it works?

+   boolean createDir(Path dir) throws IOException {

You ahve this:

+   * @return

I'd think this'd generate a javadoc warning but doesn't look like it does.  
Want to fill in what it means on rename, etc?

rename has doc. Others don't.  Be consistent I'd say.

I don't think you need these kinda banners:

+  // 
===
+  //  Non-Idempotent calls to DFS, helpers for static calls
+  // 
===

They tend to get ignored and methods that don't belong get inserted w/o 
updating the banner scope

You have two sleepBeforeRetry ?  Shouldn't one call the other?  Why have two at 
all?

Patch is looking good.  Lets get it in.

> Support for Namenode HA for non-idempotent operations
> -
>
> Key: HBASE-8156
> URL: https://issues.apache.org/jira/browse/HBASE-8156
> Project: HBase
>  Issue Type: Sub-task
>  Components: Filesystem Integration
>Affects Versions: 0.95.0
>Reporter: Himanshu Vashishtha
>Assignee: Himanshu Vashishtha
> Fix For: 0.98.0
>
> Attachments: HBase-8156-trunk-v1.patch, HBase-8156-trunk-v2.patch
>
>
> In hadoop 2 HA, non-idempotent operations are not retried at the hdfs side. 
> This is by design as retrying a non-idempotent operation might not be a good 
> design choice for some use case. 
> HBase needs to handle the retries for such operations at its end. 
> With HBase-7806, there is already some work going on for file system 
> abstractions. There, HReginFileSystem sits as an abstraction between region 
> and FS. This jira is a move in the same direction, where it adds retry 
> functionality for non-idempotent calls such as create, rename and delete in 
> HRegionFileSystem class.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl commented on HBASE-8166:
--

Comments/Concerns?

This is a straightforward and backward compatible change.

> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt, 8166-0.96.txt
>
>
> See discussion in HBASE-8151.
> Upon compaction we can check all the involved HFiles. If all of them have a 
> MAX_MEMSTORE_TS < the smallest scannner readpoint, we create a writer that 
> does not write the memstoreTS.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Edward C. Skoviak (JIRA)

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

Edward C. Skoviak commented on HBASE-8170:
--

+1 to option #2

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Resolved] (HBASE-8014) Backport HBASE-6915 to 0.94.

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl resolved HBASE-8014.
--

Resolution: Fixed

> Backport HBASE-6915 to 0.94.
> 
>
> Key: HBASE-8014
> URL: https://issues.apache.org/jira/browse/HBASE-8014
> Project: HBase
>  Issue Type: Bug
>Reporter: Jean-Marc Spaggiari
>Assignee: Jean-Marc Spaggiari
>Priority: Critical
> Fix For: 0.94.7
>
> Attachments: HBASE-8014-v0-0.94.patch
>
>
> JDK 1.7 changed some data size. Goal of this JIRA is to backport HBASE-6915 
> to 0.94

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8067) TestHFileArchiving.testArchiveOnTableDelete sometimes fails

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl commented on HBASE-8067:
--

Also failed in 0.94 again:
{code}
java.lang.AssertionError: Archived files are missing some of the store files!
at org.junit.Assert.fail(Assert.java:93)
at org.junit.Assert.assertTrue(Assert.java:43)
at 
org.apache.hadoop.hbase.backup.TestHFileArchiving.testArchiveOnTableDelete(TestHFileArchiving.java:266)
{code}

(Just including the info from jenkins here, so we won't loose the context)

> TestHFileArchiving.testArchiveOnTableDelete sometimes fails
> ---
>
> Key: HBASE-8067
> URL: https://issues.apache.org/jira/browse/HBASE-8067
> Project: HBase
>  Issue Type: Bug
>  Components: Admin, master, test
>Affects Versions: 0.96.0, 0.94.6
>Reporter: Matteo Bertozzi
>Assignee: Matteo Bertozzi
> Fix For: 0.95.0, 0.94.7
>
> Attachments: HBASE-8067-debug.patch, HBASE-8067-v0.patch
>
>
> it seems that testArchiveOnTableDelete() fails because the archiving in 
> DeleteTableHandler is still in progress when admin.deleteTable() returns.
> {code}
> Error Message
> Archived files are missing some of the store files!
> Stacktrace
> java.lang.AssertionError: Archived files are missing some of the store files!
>   at org.junit.Assert.fail(Assert.java:88)
>   at org.junit.Assert.assertTrue(Assert.java:41)
>   at 
> org.apache.hadoop.hbase.backup.TestHFileArchiving.testArchiveOnTableDelete(TestHFileArchiving.java:262)
> {code}
> (Looking at the problem in a more generic way, we don't have any way to 
> inform the client when an async operation is completed)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Comment Edited] (HBASE-8067) TestHFileArchiving.testArchiveOnTableDelete sometimes fails

2013-03-21 Thread Lars Hofhansl (JIRA)

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

Lars Hofhansl edited comment on HBASE-8067 at 3/21/13 7:55 PM:
---

Also failed in 0.94 again.

Edit: Same exception as in description.

  was (Author: lhofhansl):
Also failed in 0.94 again:
{code}
java.lang.AssertionError: Archived files are missing some of the store files!
at org.junit.Assert.fail(Assert.java:93)
at org.junit.Assert.assertTrue(Assert.java:43)
at 
org.apache.hadoop.hbase.backup.TestHFileArchiving.testArchiveOnTableDelete(TestHFileArchiving.java:266)
{code}

(Just including the info from jenkins here, so we won't loose the context)
  
> TestHFileArchiving.testArchiveOnTableDelete sometimes fails
> ---
>
> Key: HBASE-8067
> URL: https://issues.apache.org/jira/browse/HBASE-8067
> Project: HBase
>  Issue Type: Bug
>  Components: Admin, master, test
>Affects Versions: 0.96.0, 0.94.6
>Reporter: Matteo Bertozzi
>Assignee: Matteo Bertozzi
> Fix For: 0.95.0, 0.94.7
>
> Attachments: HBASE-8067-debug.patch, HBASE-8067-v0.patch
>
>
> it seems that testArchiveOnTableDelete() fails because the archiving in 
> DeleteTableHandler is still in progress when admin.deleteTable() returns.
> {code}
> Error Message
> Archived files are missing some of the store files!
> Stacktrace
> java.lang.AssertionError: Archived files are missing some of the store files!
>   at org.junit.Assert.fail(Assert.java:88)
>   at org.junit.Assert.assertTrue(Assert.java:41)
>   at 
> org.apache.hadoop.hbase.backup.TestHFileArchiving.testArchiveOnTableDelete(TestHFileArchiving.java:262)
> {code}
> (Looking at the problem in a more generic way, we don't have any way to 
> inform the client when an async operation is completed)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-8170:
---

Attachment: HBASE-8170-v0-trunk.patch

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
> Attachments: HBASE-8170-v0-trunk.patch
>
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-8166) Avoid writing the memstoreTS into HFiles when possible

2013-03-21 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-8166:
---

+1 from me.

> Avoid writing the memstoreTS into HFiles when possible
> --
>
> Key: HBASE-8166
> URL: https://issues.apache.org/jira/browse/HBASE-8166
> Project: HBase
>  Issue Type: Bug
>Reporter: Lars Hofhansl
>Assignee: Lars Hofhansl
> Fix For: 0.95.0, 0.98.0, 0.94.7
>
> Attachments: 8166-0.94.txt, 8166-0.96.txt
>
>
> See discussion in HBASE-8151.
> Upon compaction we can check all the involved HFiles. If all of them have a 
> MAX_MEMSTORE_TS < the smallest scannner readpoint, we create a writer that 
> does not write the memstoreTS.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-8170:
---

Assignee: Jean-Marc Spaggiari

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Assignee: Jean-Marc Spaggiari
>Priority: Minor
> Attachments: HBASE-8170-v0-trunk.patch
>
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (HBASE-8170) HbaseAdmin.createTable cannot handle creating three regions

2013-03-21 Thread Jean-Marc Spaggiari (JIRA)

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

Jean-Marc Spaggiari updated HBASE-8170:
---

Status: Patch Available  (was: Open)

Patch for option #2 attached. If fine, I will also upload it for 0.94.

> HbaseAdmin.createTable cannot handle creating three regions
> ---
>
> Key: HBASE-8170
> URL: https://issues.apache.org/jira/browse/HBASE-8170
> Project: HBase
>  Issue Type: Bug
>  Components: Admin
>Affects Versions: 0.94.5
>Reporter: Edward C. Skoviak
>Priority: Minor
> Attachments: HBASE-8170-v0-trunk.patch
>
>
> createTable(HTableDescriptor desc, byte [] startKey, byte [] endKey, int 
> numRegions) (line #370) dictates that you must specify a minimum of three 
> regions, however is not able to handle being fed a value three. This is a 
> result of line #379 where it attempts to create the key splits, and calls 
> Bytes.Split with a value of 0 for the third parameter. createTable should 
> instead just create a byte[][] with the startKey and endKey in this scenario.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


  1   2   3   >