+1 on that its been a dependency pain for me as well. -Dan sent from my mobile. On Sep 12, 2014 7:19 AM, "Gabriel Reid (JIRA)" <[email protected]> wrote:
> > [ > https://issues.apache.org/jira/browse/PHOENIX-1250?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14131590#comment-14131590 > ] > > Gabriel Reid commented on PHOENIX-1250: > --------------------------------------- > > Upgrading Phoenix itself to a different version of Guava than what HBase > uses is pretty dangerous, because it could easily lead to the Phoenix > coprocessors (running within HBase) depending on methods that don't exist > in the version of guava running in the VM. > > My proposal would be to stick with the same version of Guava as HBase > uses, but remove the use of {{Closeables.closeQuietly}} (and anything else > that has been removed in recent versions of Guava) to remain binary > compatible with recent versions of Guava. > > > guava dependency out-dated causing NoSuchMethod error > > ----------------------------------------------------- > > > > Key: PHOENIX-1250 > > URL: https://issues.apache.org/jira/browse/PHOENIX-1250 > > Project: Phoenix > > Issue Type: Bug > > Affects Versions: 4.1 > > Environment: CentOS, Phoenix 4.1, HBase 0.98.5 > > Reporter: Jerry Chabot > > > > Phoenix has a dependency on Guava 12.0.1 (released in 2012). My project > uses Guava 16.0.1. The latest version is 18. Apparently, the > Closeables.closeQuitely(Closeable) no longer exists in 16.0.1 and later. > Possibly earlier versions. > > I get the error below when attempting to get a connection. This is > blocking any attempts to integrate Phoenix because I cannot downgrade our > project dependency to a 2 year old version. > > Please review all project dependencies and consider uprading to more > recent versions. > > java.sql.SQLException: java.lang.NoSuchMethodError: > com.google.common.io.Closeables.closeQuietly(Ljava/io/Closeable;)V > > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.metaDataCoprocessorExec(ConnectionQueryServicesImpl.java:947) > > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.createTable(ConnectionQueryServicesImpl.java:1144) > > at > org.apache.phoenix.query.DelegateConnectionQueryServices.createTable(DelegateConnectionQueryServices.java:114) > > at > org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1315) > > at > org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:445) > > at > org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:183) > > at > org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:256) > > at > org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:248) > > at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) > > at > org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:246) > > at > org.apache.phoenix.jdbc.PhoenixStatement.executeUpdate(PhoenixStatement.java:960) > > at > org.apache.phoenix.query.ConnectionQueryServicesImpl$9.call(ConnectionQueryServicesImpl.java:1519) > > at > org.apache.phoenix.query.ConnectionQueryServicesImpl$9.call(ConnectionQueryServicesImpl.java:1489) > > at > org.apache.phoenix.util.PhoenixContextExecutor.call(PhoenixContextExecutor.java:77) > > at > org.apache.phoenix.query.ConnectionQueryServicesImpl.init(ConnectionQueryServicesImpl.java:1489) > > at > org.apache.phoenix.jdbc.PhoenixDriver.getConnectionQueryServices(PhoenixDriver.java:162) > > at > org.apache.phoenix.jdbc.PhoenixEmbeddedDriver.connect(PhoenixEmbeddedDriver.java:129) > > at > org.apache.phoenix.jdbc.PhoenixDriver.connect(PhoenixDriver.java:133) > > at java.sql.DriverManager.getConnection(DriverManager.java:571) > > at java.sql.DriverManager.getConnection(DriverManager.java:187) > > > > -- > This message was sent by Atlassian JIRA > (v6.3.4#6332) >
