You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Appy (JIRA)" <ji...@apache.org> on 2017/11/21 23:42:00 UTC

[jira] [Created] (HBASE-19319) Fix bug in synchronizing over ProcedureEvent

Appy created HBASE-19319:
----------------------------

             Summary: Fix bug in synchronizing over ProcedureEvent
                 Key: HBASE-19319
                 URL: https://issues.apache.org/jira/browse/HBASE-19319
             Project: HBase
          Issue Type: Bug
            Reporter: Appy
            Assignee: Appy


Following synchronizes over local variable rather than the original ProcedureEvent object. Clearly a bug since this code block won't follow exclusion with many of the synchronized methods in ProcedureEvent class.
{code}
 @Override
  public void wakeEvents(final int count, final ProcedureEvent... events) {
    final boolean traceEnabled = LOG.isTraceEnabled();
    schedLock();
    try {
      int waitingCount = 0;
      for (int i = 0; i < count; ++i) {
        final ProcedureEvent event = events[i];
        synchronized (event) {
          if (!event.isReady()) {
{code}



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