You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Christopher Tubbs (JIRA)" <ji...@apache.org> on 2014/04/28 21:06:36 UTC
[jira] [Updated] (ACCUMULO-1889) ZooKeeperInstance close method
should mark instance closed.
[ https://issues.apache.org/jira/browse/ACCUMULO-1889?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christopher Tubbs updated ACCUMULO-1889:
----------------------------------------
Affects Version/s: (was: 1.6.0)
> 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
> Reporter: Sean Busbey
> Assignee: Sean Busbey
> Fix For: 1.4.5, 1.5.1, 1.6.0
>
> Attachments: ACCUMULO-1889.1.patch.txt
>
>
> (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.2#6252)