You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Jan Høydahl (Jira)" <ji...@apache.org> on 2020/02/19 15:52:00 UTC

[jira] [Commented] (SOLR-599) Lightweight SolrJ client

    [ https://issues.apache.org/jira/browse/SOLR-599?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17040183#comment-17040183 ] 

Jan Høydahl commented on SOLR-599:
----------------------------------

We now have 29 dependencies:
{noformat}
commons-io-2.6.jar
commons-math3-3.6.1.jar
http2-client-9.4.24.v20191120.jar
http2-common-9.4.24.v20191120.jar
http2-hpack-9.4.24.v20191120.jar
http2-http-client-transport-9.4.24.v20191120.jar
httpclient-4.5.10.jar
httpcore-4.4.12.jar
httpmime-4.5.10.jar
jcl-over-slf4j-1.7.24.jar
jetty-alpn-client-9.4.24.v20191120.jar
jetty-alpn-java-client-9.4.24.v20191120.jar
jetty-client-9.4.24.v20191120.jar
jetty-http-9.4.24.v20191120.jar
jetty-io-9.4.24.v20191120.jar
jetty-util-9.4.24.v20191120.jar
netty-buffer-4.1.29.Final.jar
netty-codec-4.1.29.Final.jar
netty-common-4.1.29.Final.jar
netty-handler-4.1.29.Final.jar
netty-resolver-4.1.29.Final.jar
netty-transport-4.1.29.Final.jar
netty-transport-native-epoll-4.1.29.Final.jar
netty-transport-native-unix-common-4.1.29.Final.jar
slf4j-api-1.7.24.jar
stax2-api-3.1.4.jar
woodstox-core-asl-4.4.1.jar
zookeeper-3.5.5.jar
zookeeper-jute-3.5.5.jar{noformat}
See [mailing list thread "SolrJ has 29 compile-time dependencies"|https://lists.apache.org/thread.html/r637d3a728102c262b3355e10c2b9a25731f7e7225d70f5dd87d56929%40%3Cdev.lucene.apache.org%3E] for more discussion.

It has been suggested to create a new client for 9.0 based on Java's built-in HTTP2 client, and without the Zookeeper dependencies. I guess that would let us skip most of the other dependencies as well?

What about all the classes in {{o.a.s.common}} - many of those depend on Zookeeper. But SolrJ code also depend on many of these such as {{common.util}}. How to break it up so that we do not need to depend on all or nothing for SolrJ?

> Lightweight SolrJ client
> ------------------------
>
>                 Key: SOLR-599
>                 URL: https://issues.apache.org/jira/browse/SOLR-599
>             Project: Solr
>          Issue Type: Improvement
>          Components: clients - java, SolrJ
>            Reporter: Shalin Shekhar Mangar
>            Assignee: Noble Paul
>            Priority: Minor
>             Fix For: 4.9, 6.0
>
>         Attachments: SOLR-599-fix-for-SolrJ-on-GAE.patch, SOLR-599.patch, SOLR-599.patch
>
>
> SolrJ provides a SolrServer implementation backed by commons-httpclient which introduces many dependency jars (commons-codec, commons-io and commons-logging). Apart from that SolrJ also uses StAX API for XML parsing which introduces dependencies like stax-api, stax and stax-utils.
> This enhancement will add a SolrServer implementation backed by java.net.HttpUrlConnection and will use BinaryResponseParser as the default response parser. Using this basic implementation out of the box would require no dependencies on either commons-httpclient or StAX. The only dependency would be on solr-commons making this a very lightweight and distribution friendly Java client for Solr.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org