You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@htrace.apache.org by "Colin Patrick McCabe (JIRA)" <ji...@apache.org> on 2014/12/12 04:15:13 UTC

[jira] [Updated] (HTRACE-16) Remove guava dependency for htrace-core

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

Colin Patrick McCabe updated HTRACE-16:
---------------------------------------
    Attachment: HTRACE-16.001.patch

It turns out Guava was only actually being used in one place, {{TraceTree}}.  Other places had imports, but they were not using the imports.  We can get by fine without Guava, just using sorted sets with a custom comparator here. 

The new {{implentation}} of {{TraceTree}} should be more efficient too, since we're not copying stuff around all the time, just dealing with immutable {{TreeMaps}}.

{{htrace-hbase}} continues to list Guava as a "provided" dependency.  I believe pulling in the HBase client libs pull in guava... because they pull in Hadoop, and Hadoop brings its own (ancient) version.

Not sure whether we should eliminate guava from the zipkin module... can consider that separately.

> Remove guava dependency for htrace-core
> ---------------------------------------
>
>                 Key: HTRACE-16
>                 URL: https://issues.apache.org/jira/browse/HTRACE-16
>             Project: HTrace
>          Issue Type: Improvement
>            Reporter: Colin Patrick McCabe
>            Assignee: Colin Patrick McCabe
>         Attachments: HTRACE-16.001.patch
>
>
> htrace-core currently depends on Guava.  It seems like there are a few Guava types exposed in public interfaces too.  This is unfortunate because Guava has a history of making non-backwards compatible changes without changing the namespace of the library.  So we could end up locked to a specific (old) version of Guava due to this.  It also interacts poorly with the shading we're doing.  We should just remove guava as a depdency so we don't have to worry about this issue in the future.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)