[
https://issues.apache.org/jira/browse/LUCENE-9851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17303835#comment-17303835
]
Robert Muir commented on LUCENE-9851:
-------------------------------------
Currently all dependencies in question (servlet-api, httpclient, jetty) are
non-test...
{noformat}
<dependencies>
<dependency>
<!-- lucene-test-framework dependency must be declared before lucene-core
-->
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-test-framework</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-facet</artifactId>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-continuation</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-http</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-io</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-servlet</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-util</artifactId>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-codecs</artifactId>
<scope>test</scope>
</dependency>
{noformat}
> look at reducing depencies for lucene/replicator
> ------------------------------------------------
>
> Key: LUCENE-9851
> URL: https://issues.apache.org/jira/browse/LUCENE-9851
> Project: Lucene - Core
> Issue Type: Wish
> Reporter: Robert Muir
> Priority: Major
>
> Lucene/replicator brings in a lot of dependencies (some test-only) for http
> communication (httpclient, jetty, servet-api, etc), I think it is worth
> looking at reducing these.
> It isn't gonna need to be used as a typical high-qps webserver, instead low
> level transfer of index segments. IMO this is a more delicate operation where
> we actually care about stuff like how/if data is compressed and want it done
> efficiently.
> I've had good experiences in production with java 11's new http client:
> https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/package-summary.html
> It is maintained by openjdk and built into java's core, so we could remove
> the httpclient dependency and not cause conflicts with downstream projects.
> On the server side I think jetty may be overkill, we could use jdk's built-in
> Http/HttpsServer, too. Because we don't need fancy nonblocking io / resource
> pooling / whatever, its smaller number but MUCH BIGGER than average http
> transfers going on.
> We can keep replicators apis generic so that users can still use different
> protocols or methods, this is really just about the *implementations* and
> *tests* that we supply.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]