[jira] [Commented] (HBASE-4833) HRegionServer stops could be 0,5s faster
[ https://issues.apache.org/jira/browse/HBASE-4833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13157478#comment-13157478 ] nkeywal commented on HBASE-4833: The v2 is for the new trunk, can be integrated after or together with hbase-4832. HRegionServer stops could be 0,5s faster Key: HBASE-4833 URL: https://issues.apache.org/jira/browse/HBASE-4833 Project: HBase Issue Type: Improvement Components: regionserver, test Affects Versions: 0.94.0 Environment: all Reporter: nkeywal Assignee: nkeywal Priority: Minor Attachments: 4833_trunk_hregionserver.patch, 4833_trunk_hregionserver.v2.patch The current implementation of HRegionServer#stop is {noformat} public void stop(final String msg) { this.stopped = true; LOG.info(STOPPED: + msg); synchronized (this) { // Wakes run() if it is sleeping notifyAll(); // FindBugs NN_NAKED_NOTIFY } } {noformat} The notification is sent on the wrong object and does nothing. As a consequence, the region server continues to sleep instead of waking up and stopping immediately. A correct implementation is: {noformat} public void stop(final String msg) { this.stopped = true; LOG.info(STOPPED: + msg); // Wakes run() if it is sleeping sleeper.skipSleepCycle(); } {noformat} Then the region server stops immediately. This makes the region server stops 0,5s faster on average, which is quite useful for unit tests. However, with this fix, TestRegionServerCoprocessorExceptionWithAbort does not work. It likely because the code does no expect the region server to stop that fast. See HBASE-4832 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4833) HRegionServer stops could be 0,5s faster
[ https://issues.apache.org/jira/browse/HBASE-4833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13154129#comment-13154129 ] nkeywal commented on HBASE-4833: I created HBASE-4832 to follow the fix on TestRegionServerCoprocessorExceptionWithAbort and added a link. HRegionServer stops could be 0,5s faster Key: HBASE-4833 URL: https://issues.apache.org/jira/browse/HBASE-4833 Project: HBase Issue Type: Improvement Components: regionserver, test Affects Versions: 0.94.0 Environment: all Reporter: nkeywal Assignee: nkeywal Priority: Minor Attachments: 4833_trunk_hregionserver.patch The current implementation of HRegionServer#stop is {noformat} public void stop(final String msg) { this.stopped = true; LOG.info(STOPPED: + msg); synchronized (this) { // Wakes run() if it is sleeping notifyAll(); // FindBugs NN_NAKED_NOTIFY } } {noformat} The notification is sent on the wrong object and does nothing. As a consequence, the region server continues to sleep instead of waking up and stopping immediately. A correct implementation is: {noformat} public void stop(final String msg) { this.stopped = true; LOG.info(STOPPED: + msg); // Wakes run() if it is sleeping sleeper.skipSleepCycle(); } {noformat} Then the region server stops immediately. This makes the region server stops 0,5s faster on average, which is quite useful for unit tests. However, with this fix, TestRegionServerCoprocessorExceptionWithAbort does not work. It likely because the code does no expect the region server to stop that fast. See HBASE-4832 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (HBASE-4833) HRegionServer stops could be 0,5s faster
[ https://issues.apache.org/jira/browse/HBASE-4833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13153981#comment-13153981 ] stack commented on HBASE-4833: -- +1 on patch but can't commit it if it breaks TestRegionServerCoprocessorExceptionWithAbort. Any chance of including fix for that N? HRegionServer stops could be 0,5s faster Key: HBASE-4833 URL: https://issues.apache.org/jira/browse/HBASE-4833 Project: HBase Issue Type: Improvement Components: regionserver, test Affects Versions: 0.94.0 Environment: all Reporter: nkeywal Assignee: nkeywal Priority: Minor Attachments: 4833_trunk_hregionserver.patch The current implementation of HRegionServer#stop is {noformat} public void stop(final String msg) { this.stopped = true; LOG.info(STOPPED: + msg); synchronized (this) { // Wakes run() if it is sleeping notifyAll(); // FindBugs NN_NAKED_NOTIFY } } {noformat} The notification is sent on the wrong object and does nothing. As a consequence, the region server continues to sleep instead of waking up and stopping immediately. A correct implementation is: {noformat} public void stop(final String msg) { this.stopped = true; LOG.info(STOPPED: + msg); // Wakes run() if it is sleeping sleeper.skipSleepCycle(); } {noformat} Then the region server stops immediately. This makes the region server stops 0,5s faster on average, which is quite useful for unit tests. However, with this fix, TestRegionServerCoprocessorExceptionWithAbort does not work. It likely because the code does no expect the region server to stop that fast. See HBASE-4832 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira