[
https://issues.apache.org/jira/browse/PHOENIX-2535?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15237095#comment-15237095
]
Enis Soztutar commented on PHOENIX-2535:
----------------------------------------
bq. I know some of these Enis Soztutar already pointed out (mortbay,
specifically), but com.google.common, pig/flume/hadoop/hbase, asm, and jersey
worry me
Not sure about the HBase dependency, but we can assume that if a client wants
to depend on Phoenix, they will also want to depend on HBase. Since Phoenix
version and HBase version HAS TO go together, I think the HBase non-shaded
dependency is fine.
Flume, Pig and (upcoming Hive) should not be shaded, otherwise the integration
will not work. For example, phoenix-flume implements Sources and Sinks which
are flume classes. Good thing is that these are already different modules, so
that regular clients do not have to depend on these modules.
> Create shaded clients (thin + thick)
> -------------------------------------
>
> Key: PHOENIX-2535
> URL: https://issues.apache.org/jira/browse/PHOENIX-2535
> Project: Phoenix
> Issue Type: Bug
> Reporter: Enis Soztutar
> Assignee: Sergey Soldatov
> Fix For: 4.8.0
>
> Attachments: PHOENIX-2535-1.patch, PHOENIX-2535-2.patch,
> PHOENIX-2535-3.patch, PHOENIX-2535-4.patch, PHOENIX-2535-5.patch
>
>
> Having shaded client artifacts helps greatly in minimizing the dependency
> conflicts at the run time. We are seeing more of Phoenix JDBC client being
> used in Storm topologies and other settings where guava versions become a
> problem.
> I think we can do a parallel artifact for the thick client with shaded
> dependencies and also using shaded hbase. For thin client, maybe shading
> should be the default since it is new?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)