[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


SUCCESS: Integrated in Jenkins build HBase-1.3-JDK8 #224 (See 
[https://builds.apache.org/job/HBase-1.3-JDK8/224/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (chia7712: 
rev f18f916f050cf4dc106543d3dc7c6d2f78077661)
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


SUCCESS: Integrated in Jenkins build HBase-1.2-JDK8 #170 (See 
[https://builds.apache.org/job/HBase-1.2-JDK8/170/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (chia7712: 
rev 670e9431d40d35df4802bc0445012271ee904efc)
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


FAILURE: Integrated in Jenkins build HBase-1.3-JDK7 #209 (See 
[https://builds.apache.org/job/HBase-1.3-JDK7/209/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (chia7712: 
rev f18f916f050cf4dc106543d3dc7c6d2f78077661)
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


FAILURE: Integrated in Jenkins build HBase-1.2-JDK7 #175 (See 
[https://builds.apache.org/job/HBase-1.2-JDK7/175/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (chia7712: 
rev 670e9431d40d35df4802bc0445012271ee904efc)
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


SUCCESS: Integrated in Jenkins build HBase-1.2-IT #909 (See 
[https://builds.apache.org/job/HBase-1.2-IT/909/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (chia7712: 
rev 670e9431d40d35df4802bc0445012271ee904efc)
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


SUCCESS: Integrated in Jenkins build HBase-1.3-IT #147 (See 
[https://builds.apache.org/job/HBase-1.3-IT/147/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (chia7712: 
rev f18f916f050cf4dc106543d3dc7c6d2f78077661)
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-28 Thread Chia-Ping Tsai (JIRA)

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

Chia-Ping Tsai commented on HBASE-17131:


The failed tests pass locally. Will commit it later.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.2.v0.patch, 
> HBASE-17131.branch-1.3.v0.patch, HBASE-17131.branch-1.v0.patch, 
> HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17131:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
21s{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green}  0m  
0s{color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green}  0m  
0s{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:green}+1{color} | {color:green} test4tests {color} | {color:green}  0m 
 0s{color} | {color:green} The patch appears to include 1 new or modified test 
files. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  1m 
27s{color} | {color:green} branch-1.2 passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
29s{color} | {color:green} branch-1.2 passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
32s{color} | {color:green} branch-1.2 passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  0m 
54s{color} | {color:green} branch-1.2 passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green}  0m 
15s{color} | {color:green} branch-1.2 passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  1m 
47s{color} | {color:green} branch-1.2 passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
24s{color} | {color:green} branch-1.2 passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
33s{color} | {color:green} branch-1.2 passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  0m 
42s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
28s{color} | {color:green} the patch passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
28s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
32s{color} | {color:green} the patch passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
32s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  0m 
54s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green}  0m 
15s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green}  0m 
 0s{color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
11m 57s{color} | {color:green} The patch does not cause any errors with Hadoop 
2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m  
0s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
23s{color} | {color:green} the patch passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
32s{color} | {color:green} the patch passed with JDK v1.7.0_131 {color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red} 77m 16s{color} 
| {color:red} hbase-server in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
16s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black}102m 27s{color} | 
{color:black} {color} |
\\
\\
|| Reason || Tests ||
| Failed junit tests | hadoop.hbase.mapreduce.TestMultiTableSnapshotInputFormat 
|
| Timed out junit tests | 
org.apache.hadoop.hbase.snapshot.TestSecureExportSnapshot |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:933f4b3 |
| JIRA Issue | HBASE-17131 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12879283/HBASE-17131.branch-1.2.v0.patch
 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux 960bbe8f639d 3.13.0-119-generic #166-Ubuntu SMP Wed May 3 
12:18:55 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | 

[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-17131:
-

+1

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.6
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.3.v0.patch, 
> HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17131:
---

| (/) *{color:green}+1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
30s{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green}  0m  
0s{color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green}  0m  
0s{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:green}+1{color} | {color:green} test4tests {color} | {color:green}  0m 
 0s{color} | {color:green} The patch appears to include 1 new or modified test 
files. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  6m 
56s{color} | {color:green} branch-1.3 passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
31s{color} | {color:green} branch-1.3 passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
33s{color} | {color:green} branch-1.3 passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  1m 
 6s{color} | {color:green} branch-1.3 passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green}  0m 
21s{color} | {color:green} branch-1.3 passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  1m 
51s{color} | {color:green} branch-1.3 passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
33s{color} | {color:green} branch-1.3 passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
32s{color} | {color:green} branch-1.3 passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  0m 
43s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
31s{color} | {color:green} the patch passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
31s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
32s{color} | {color:green} the patch passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
32s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  0m 
53s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green}  0m 
17s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green}  0m 
 0s{color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
16m 40s{color} | {color:green} The patch does not cause any errors with Hadoop 
2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green}  2m 
15s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
29s{color} | {color:green} the patch passed with JDK v1.8.0_131 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green}  0m 
35s{color} | {color:green} the patch passed with JDK v1.7.0_131 {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green}111m 
11s{color} | {color:green} hbase-server in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
25s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black}148m  0s{color} | 
{color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=17.03.0-ce Server=17.03.0-ce Image:yetus/hbase:b3a2a00 |
| JIRA Issue | HBASE-17131 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12879228/HBASE-17131.branch-1.3.v0.patch
 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux 32ffec47cf75 3.13.0-119-generic #166-Ubuntu SMP Wed May 3 
12:18:55 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | /testptch/patchprocess/precommit/personality/hbase.sh |
| git revision | branch-1.3 / 22233a2 |
| Default Java | 1.7.0_131 |
| Multi-JDK versions |  

[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Chia-Ping Tsai (JIRA)

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

Chia-Ping Tsai commented on HBASE-17131:


bq. this issue hasn't gone out in a release yet, let's just do the backport 
here and update the fix versions.
Okay, copy that.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.2, 1.2.7
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-17131:
-

this issue hasn't gone out in a release yet, let's just do the backport here 
and update the fix versions.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Chia-Ping Tsai (JIRA)

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

Chia-Ping Tsai commented on HBASE-17131:


see HBASE-18464

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Chia-Ping Tsai (JIRA)

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

Chia-Ping Tsai commented on HBASE-17131:


bq. Any reason we can't backport this to the other active 1.y branches?
No, it is my careless. Will open a jira to backport this. 

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-07-27 Thread Sean Busbey (JIRA)

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

Sean Busbey commented on HBASE-17131:
-

Any reason we can't backport this to the other active 1.y branches?

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>  Components: regionserver
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-05-04 Thread Chia-Ping Tsai (JIRA)

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

Chia-Ping Tsai commented on HBASE-17131:


bq. anything interesting about that issue, was that in our code base?
Not much. It is inconvenient to use the transaction within single region, but i 
had noticed another issue HBASE-16933.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-05-04 Thread Esteban Gutierrez (JIRA)

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

Esteban Gutierrez commented on HBASE-17131:
---

[~chia7712] anything interesting about that issue, was that in our code base? 
Thanks!

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-05-04 Thread Chia-Ping Tsai (JIRA)

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

Chia-Ping Tsai commented on HBASE-17131:


code reading. I investigated the transaction over hbase and then found this 
issue. Does the patch cause any problem? If yes, I will fix it asap.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2017-05-04 Thread stack (JIRA)

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

stack commented on HBASE-17131:
---

You saw this issue in production or this code reading [~chia7712]?

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: Chia-Ping Tsai
>Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


SUCCESS: Integrated in Jenkins build HBase-1.4 #542 (See 
[https://builds.apache.org/job/HBase-1.4/542/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (tedyu: rev 
e8f056935ba90bb46b960d3a6086a99730c95abd)
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai commented on HBASE-17131:
---

Thanks for the help.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
> Fix For: 2.0.0, 1.4.0
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-17131:


Reproduced the following failure with branch-1 patch:
{code}
testClientScannerIsResetWhenScanThrowsIOException(org.apache.hadoop.hbase.client.TestFromClientSide)
  Time elapsed: 1.667 sec  <<< FAILURE!
java.lang.AssertionError: expected:<17576> but was:<0>
at 
org.apache.hadoop.hbase.client.TestFromClientSide.testClientScannerIsResetWhenScanThrowsIOException(TestFromClientSide.java:702)
{code}
Please investigate.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.1
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai commented on HBASE-17131:
---

The testClientScannerIsResetWhenScanThrowsIOException fails frequently. It is 
nor related to this patch.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.1
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17131:


SUCCESS: Integrated in Jenkins build HBase-Trunk_matrix #1988 (See 
[https://builds.apache.org/job/HBase-Trunk_matrix/1988/])
HBASE-17131 Avoid livelock caused by HRegion#processRowsWithLocks (tedyu: rev 
bb645bcfda74ad1f96b16e6e47543d44fbca5a98)
* (edit) 
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestFromClientSide3.java
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java


> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.1
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17131:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 16s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 
0s {color} | {color:green} The patch appears to include 1 new or modified test 
files. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 
57s {color} | {color:green} branch-1 passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 31s 
{color} | {color:green} branch-1 passed with JDK v1.8.0_111 {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 33s 
{color} | {color:green} branch-1 passed with JDK v1.7.0_80 {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
55s {color} | {color:green} branch-1 passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
17s {color} | {color:green} branch-1 passed {color} |
| {color:red}-1{color} | {color:red} findbugs {color} | {color:red} 1m 54s 
{color} | {color:red} hbase-server in branch-1 has 2 extant Findbugs warnings. 
{color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 27s 
{color} | {color:green} branch-1 passed with JDK v1.8.0_111 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 33s 
{color} | {color:green} branch-1 passed with JDK v1.7.0_80 {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
41s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 30s 
{color} | {color:green} the patch passed with JDK v1.8.0_111 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 30s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 35s 
{color} | {color:green} the patch passed with JDK v1.7.0_80 {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 35s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
55s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
16s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
14m 43s {color} | {color:green} The patch does not cause any errors with Hadoop 
2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1. {color} |
| {color:green}+1{color} | {color:green} hbaseprotoc {color} | {color:green} 0m 
15s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 6s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 25s 
{color} | {color:green} the patch passed with JDK v1.8.0_111 {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 33s 
{color} | {color:green} the patch passed with JDK v1.7.0_80 {color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red} 83m 18s {color} 
| {color:red} hbase-server in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
21s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 112m 25s {color} 
| {color:black} {color} |
\\
\\
|| Reason || Tests ||
| Failed junit tests | hadoop.hbase.client.TestFromClientSide |
|   | hadoop.hbase.client.TestFromClientSideWithCoprocessor |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:e01ee2f |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12839726/HBASE-17131.branch-1.v0.patch
 |
| JIRA Issue | HBASE-17131 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux 0d9908e98e27 3.13.0-93-generic #140-Ubuntu SMP Mon Jul 18 
21:21:05 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 

[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread ChiaPing Tsai (JIRA)

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

ChiaPing Tsai commented on HBASE-17131:
---

copy that.

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
>Assignee: ChiaPing Tsai
> Fix For: 2.0.0, 1.4.0, 1.3.1
>
> Attachments: HBASE-17131.branch-1.v0.patch, HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-17131:


Mind attaching patch for branch-1 ?

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
> Fix For: 2.0.0
>
> Attachments: HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Ted Yu (JIRA)

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

Ted Yu commented on HBASE-17131:


+1

The test fails without patch:
{code}
testMultiRowMutations(org.apache.hadoop.hbase.client.TestFromClientSide3)  Time 
elapsed: 20.962 sec  <<< FAILURE!
java.lang.AssertionError: expected:<0> but was:<1>
at 
org.apache.hadoop.hbase.client.TestFromClientSide3.assertNoLocks(TestFromClientSide3.java:648)
at 
org.apache.hadoop.hbase.client.TestFromClientSide3.testMultiRowMutations(TestFromClientSide3.java:642)
{code}

> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
> Fix For: 2.0.0
>
> Attachments: HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {
>   // STEP 2. Acquire the row lock(s)
>   acquiredRowLocks = new ArrayList(rowsToLock.size());
>   for (byte[] row : rowsToLock) {
> // Attempt to lock all involved rows, throw if any lock times out
> // use a writer lock for mixed reads and writes
> acquiredRowLocks.add(getRowLockInternal(row, false));
>   }
>   // STEP 3. Region lock
>   lock(this.updatesLock.readLock(), acquiredRowLocks.size() == 0 ? 1 : 
> acquiredRowLocks.size());
>   locked = true;
>   boolean success = false;
>   long now = EnvironmentEdgeManager.currentTime();
>   try {
> {code}
> We should lock all involved rows in the second try-finally. Otherwise, we 
> won’t release the previous locks if any subsequent lock times out.



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


[jira] [Commented] (HBASE-17131) Avoid livelock caused by HRegion#processRowsWithLocks

2016-11-20 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17131:
---

| (/) *{color:green}+1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 10s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 
0s {color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 
0s {color} | {color:green} The patch appears to include 1 new or modified test 
files. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 
50s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 34s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
43s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
14s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 
40s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 26s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
40s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 35s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 35s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
44s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
13s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
25m 16s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha1. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 
49s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 27s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 88m 25s 
{color} | {color:green} hbase-server in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
14s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 125m 17s {color} 
| {color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:8d52d23 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12839715/HBASE-17131.v0.patch |
| JIRA Issue | HBASE-17131 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux 8b0235ef31e5 3.13.0-95-generic #142-Ubuntu SMP Fri Aug 12 
17:00:09 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh
 |
| git revision | master / ec9c9e2 |
| Default Java | 1.8.0_111 |
| findbugs | v3.0.0 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/4546/testReport/ |
| modules | C: hbase-server U: hbase-server |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/4546/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> Avoid livelock caused by HRegion#processRowsWithLocks
> -
>
> Key: HBASE-17131
> URL: https://issues.apache.org/jira/browse/HBASE-17131
> Project: HBase
>  Issue Type: Bug
>Affects Versions: 2.0.0, 1.4.0, 1.3.1
>Reporter: ChiaPing Tsai
> Fix For: 2.0.0
>
> Attachments: HBASE-17131.v0.patch
>
>
> {code:title=HRegion.java|borderStyle=solid}
> try {