phoenix-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Josh Elser (JIRA)" <>
Subject [jira] [Commented] (PHOENIX-5213) Phoenix-client improvements: add more relocations, exclude log binding, change naming
Date Mon, 08 Apr 2019 15:57:00 GMT


Josh Elser commented on PHOENIX-5213:

[~vincentpoon], nothing terrible jumps out at me in v2

Big "however: I'm worried about how you want to omit the slf4j-log4j12 impl and not break
all of our users. phoenix-client needs to be a self-contained artifact so that we can pass
that around and meet the normal JDBC contract. I'm not against creating an artifact that omits
a logging implementation, but I do not think you are doing a service if you change what phoenix-client
+              <shadedArtifactAttached>false</shadedArtifactAttached>{code}
Aren't you undo'ing the work you did in PHOENIX-1567 with this?
+                  <exclude>org.apache.phoenix:phoenix-client</exclude>
Why are you excluding the artifact that is being built?

> Phoenix-client improvements:  add more relocations, exclude log binding, change naming
> --------------------------------------------------------------------------------------
>                 Key: PHOENIX-5213
>                 URL:
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 5.0.0, 4.15.0
>            Reporter: Vincent Poon
>            Assignee: Vincent Poon
>            Priority: Major
>         Attachments: PHOENIX-5213.4.x-HBase-1.4.v1.patch, PHOENIX-5213.4.x-HBase-1.4.v2.patch
> To make the existing phoenix-client, I'm proposing the following changes:
> 1)  Add additional relocations of some packages
> 2)  Exclude the slf4j-log4j12 binding.  Apparently this isn't pulled in directly from
phoenix-core itself, but transitively from other projects.  It's generally considered best
practice to not impose a log binding on downstream projects.  The slf4j-log4j12 jar will still
be in the phoenix tarball's /lib folder.
> 3)  Changing the jar naming from phoenix\-\[version\]\-client.jar to phoenix-client-\[version\].jar
> The reason for this is that there is no way, AFAIK, to change the naming convention in
maven's repo.  You can change the jar name locally, but when it gets installed to the repo,
it always has to follow the artfiactname-version naming convention.  To avoid confusion of
having two separate jar file names, I propose we just change it to Maven's convention so we
can publish releases of phoenix-client.
> 4)  Create a source jar for phoenix-client.
> 5)  Create a dependency-reduced pom, so that the client can be used directly in downstream
projects without having to exclude transitive artifacts.

This message was sent by Atlassian JIRA

View raw message