You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Josh Elser (JIRA)" <ji...@apache.org> on 2015/12/15 22:59:46 UTC
[jira] [Created] (PHOENIX-2531) Phoenix thin-client jar has
incorrect META-INF/services/java.sql.Driver file
Josh Elser created PHOENIX-2531:
-----------------------------------
Summary: Phoenix thin-client jar has incorrect META-INF/services/java.sql.Driver file
Key: PHOENIX-2531
URL: https://issues.apache.org/jira/browse/PHOENIX-2531
Project: Phoenix
Issue Type: Bug
Reporter: Josh Elser
Assignee: Josh Elser
Priority: Blocker
Fix For: 4.7.0
Trying to hook up the thin-client to pherf, I was having some troubles with being unable to find the thin-client Driver. I knew that we should be getting it loaded by the service definition contained in the jar {{META-INF/services/java.sql.Driver}}.
Upon inspection of the "normal" jar produced by {{phoenix-server-client}}, the contents of the file were as we expect {{org.apache.phoenix.queryserver.client.Driver}}. However, the top-level "thin-client" jar we bundle in the tarball had a value of {{org.apache.calcite.avatica.remote.Driver}} instead.
It seems like when we built {{phoenix-$VERSION-thin-client.jar}} (jar-with-dependencies is all it is, really), Avatica's {{META-INF/services/java.sql.Driver}} was overwriting the copy we had in {{phoenix-server-client/src/main/resources}}. I'm not sure how/why we didn't notice this yet (for example, why did sqlline-thin.py work?), but it's definitely busted for how it _should_ work.
It's a simple enough fix to explicitly set the file in the assembly descriptor.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)