You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Jordan Zimmerman (JIRA)" <ji...@apache.org> on 2014/02/03 15:30:11 UTC

[jira] [Issue Comment Deleted] (CURATOR-85) curator-client ConnectionState uses deprecated Closeables method

     [ https://issues.apache.org/jira/browse/CURATOR-85?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jordan Zimmerman updated CURATOR-85:
------------------------------------

    Comment: was deleted

(was: OK - I just pushed your patch. Please retest and validate so that we can close this.)

> curator-client ConnectionState uses deprecated Closeables method
> ----------------------------------------------------------------
>
>                 Key: CURATOR-85
>                 URL: https://issues.apache.org/jira/browse/CURATOR-85
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Client, Framework, Recipes
>    Affects Versions: 2.2.0-incubating, 2.3.0
>            Reporter: Dave Cohrs
>         Attachments: curator-85.diff
>
>
> Tried to upgrade to guava-16 and started getting these errors from Curator on exit:
> Exception in thread "Thread-1" java.lang.NoSuchMethodError: com.google.common.io.Closeables.closeQuietly(Ljava/io/Closeable;)V
> 	at org.apache.curator.ConnectionState.close(ConnectionState.java:109)
> 	at org.apache.curator.CuratorZookeeperClient.close(CuratorZookeeperClient.java:196)
> 	at org.apache.curator.framework.imps.CuratorFrameworkImpl.close(CuratorFrameworkImpl.java:284)
> 	at com.virident.fmc.service.AbstractService.closeCF(AbstractService.java:199)
> 	at com.virident.fmc.service.AbstractService.shutdown(AbstractService.java:215)
> 	at com.virident.fmc.service.AbstractService.access$000(AbstractService.java:31)
> 	at com.virident.fmc.service.AbstractService$1.run(AbstractService.java:98)
> tail: /var/lib/vgccluster/manager.out: file truncated
> Investigation shows this code:
>     public void close() throws IOException
>     {
>         log.debug("Closing");
>         Closeables.closeQuietly(ensembleProvider);
> This closeQuietly() method is deprecated as of guava 14, and it gone in guava 16.  The 2-parameter closeQuietly() needs to be called, eg:
>         Closeables.closeQuietly(ensembleProvider, true);
> Curator master source still seems to have this bug.  The 2-parameter closeQuietly is already be available in guava-14 and the 1-parameter version is marked decorated as deprecated in that release which should have generated deprecation warnings.
> A visual inspection of the various curator projects shows that this deprecated API is used in many places.  They all should be corrected to use the 2-parameter Closeables.closeQuietly().



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)