accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Busbey (JIRA)" <j...@apache.org>
Subject [jira] [Created] (ACCUMULO-1889) ZooKeeperInstance close method should mark instance closed.
Date Wed, 13 Nov 2013 16:55:20 GMT
Sean Busbey created ACCUMULO-1889:
-------------------------------------

             Summary: ZooKeeperInstance close method should mark instance closed.
                 Key: ACCUMULO-1889
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1889
             Project: Accumulo
          Issue Type: Bug
    Affects Versions: 1.4.5, 1.5.1, 1.6.0
            Reporter: Sean Busbey
            Assignee: Sean Busbey


(1.4.5 and 1.5.1 impact presumes ACCUMULO-1858 gets applied)

The current close() implementation on ZooKeeperInstance only marks a given instance as closed
if the outstanding client count is 0.

{code}
  public synchronized void close() throws AccumuloException {
    if (!closed && clientInstances.decrementAndGet() == 0) {
      try {
        zooCache.close();
        ThriftUtil.close();
      } catch (InterruptedException e) {
        clientInstances.incrementAndGet();
        throw new AccumuloException("Issues closing ZooKeeper.");
      }
      closed = true;
    }
  }
{code}

This is incorrect for two reason:

1) It allows continued operations on a given ZKI after it has had close() called on it

2) It allows a given ZKI to decrement the number of open clients more than once




--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message