[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16876359#comment-16876359 ] Munendra S N commented on SOLR-7442: I'm marking this as resolved, please reopen if that is not the case > HttpClient replacement for HTTP/2.0 > --- > > Key: SOLR-7442 > URL: https://issues.apache.org/jira/browse/SOLR-7442 > Project: Solr > Issue Type: New Feature >Reporter: Ishan Chattopadhyaya >Priority: Major > > Given that it would take about a year for Apache HC's HttpClient to support > HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the > way forward. It would be preferable to move to HTTP/2 and be able to use > features like async http calls. Maybe we could look for alternatives to HC > HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16873803#comment-16873803 ] Munendra S N commented on SOLR-7442: Based on discussion with [~ichattopadhyaya] this looks good to be closed, as HttpSolrClient equivalent for http/2 is added in SOLR-13276. [~caomanhdat] WDYT? > HttpClient replacement for HTTP/2.0 > --- > > Key: SOLR-7442 > URL: https://issues.apache.org/jira/browse/SOLR-7442 > Project: Solr > Issue Type: New Feature >Reporter: Ishan Chattopadhyaya >Priority: Major > > Given that it would take about a year for Apache HC's HttpClient to support > HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the > way forward. It would be preferable to move to HTTP/2 and be able to use > features like async http calls. Maybe we could look for alternatives to HC > HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16330456#comment-16330456 ] Oleg Kalnichevski commented on SOLR-7442: - For what it is worth to you HttpClient 5.0 has officially gone BETA today. Given Lucene being my favorite project in ASF I'll happily help with migration to HC 5.0 or building a completely new HTTP/2 capable transport for Solr based on HC 5.0. Oleg > HttpClient replacement for HTTP/2.0 > --- > > Key: SOLR-7442 > URL: https://issues.apache.org/jira/browse/SOLR-7442 > Project: Solr > Issue Type: New Feature >Reporter: Ishan Chattopadhyaya >Priority: Major > > Given that it would take about a year for Apache HC's HttpClient to support > HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the > way forward. It would be preferable to move to HTTP/2 and be able to use > features like async http calls. Maybe we could look for alternatives to HC > HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15101986#comment-15101986 ] Mark Miller commented on SOLR-7442: --- bq. How much pain would it cause to have support for both HttpClient and another library in SolrJ 6.x? A ton - way too much. One is more than enough to try and support in this area. Even switching is something that would take a tremendous amount of effort to get right. I think the reasons would have to be pretty weighty to go through such an effort. SolrCloud is very sensitive to this stuff. > HttpClient replacement for HTTP/2.0 > --- > > Key: SOLR-7442 > URL: https://issues.apache.org/jira/browse/SOLR-7442 > Project: Solr > Issue Type: New Feature >Reporter: Ishan Chattopadhyaya > > Given that it would take about a year for Apache HC's HttpClient to support > HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the > way forward. It would be preferable to move to HTTP/2 and be able to use > features like async http calls. Maybe we could look for alternatives to HC > HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15101965#comment-15101965 ] Shawn Heisey commented on SOLR-7442: While looking into SOLR-8539, I remembered this issue. Netty also supports HTTP/2, so that's another possible option for a replacement. How much pain would it cause to have support for both HttpClient and another library in SolrJ 6.x? We could add a second library for HTTP/2 without dropping support for existing code. Once HttpClient finally gets HTTP/2 support, we can evaluate which client we want to stick with on a long term basis, deprecate the other, and remove it in 7.0. Based on my reading of the HTTP/2 spec, I believe it will allow for some performance improvement for Solr and SolrJ. It probably will not be a significant improvement on a LAN, but there are service providers that set up Solr for customers that access it over the Internet, where HTTP/2 really shines. > HttpClient replacement for HTTP/2.0 > --- > > Key: SOLR-7442 > URL: https://issues.apache.org/jira/browse/SOLR-7442 > Project: Solr > Issue Type: New Feature >Reporter: Ishan Chattopadhyaya > > Given that it would take about a year for Apache HC's HttpClient to support > HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the > way forward. It would be preferable to move to HTTP/2 and be able to use > features like async http calls. Maybe we could look for alternatives to HC > HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15102335#comment-15102335 ] Shawn Heisey commented on SOLR-7442: Thanks. I realized that I didn't quite ask the exact question that I wanted: How much *additional* pain would it cause to support two libraries, rather than switch completely? I suspect the difference would not be large, and if switching is something we actually pursue, it might make the transition easier. On the subject of easing the pain that *users* feel, I offer this as a possible approach for a switch: * In 6.x, add classes/methods to support another library, but keep the default as HttpClient. * If the new library works well once it's stabilized, then we have a choice to make when HttpClient finally gets HTTP/2 support. We would choose one library, make sure it's default, and deprecate the other. * Remove the deprecated library in the unstable branch, whatever we end up calling it after the git migration. ASF loyalty would have us stick with HttpClient, but I have not seen any evidence that HTTP/2 work has even started on HttpClient. I believe they have laid some groundwork to add support in the future, but the HTTP/2 spec is really complicated, so if they started right now, I think that the code would be unstable for several months or longer. There's part of me that still thinks short-term HTTP/2 support is simply not worth the pain, that we should just wait for HttpClient to catch up with the world. The primary argument for this position is "if it ain't broke, don't fix it." If there's consensus that we should move on HTTP/2 right now, then we must decide how to approach it. I am not suggesting that there is consensus, just thinking out loud. > HttpClient replacement for HTTP/2.0 > --- > > Key: SOLR-7442 > URL: https://issues.apache.org/jira/browse/SOLR-7442 > Project: Solr > Issue Type: New Feature >Reporter: Ishan Chattopadhyaya > > Given that it would take about a year for Apache HC's HttpClient to support > HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the > way forward. It would be preferable to move to HTTP/2 and be able to use > features like async http calls. Maybe we could look for alternatives to HC > HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14516941#comment-14516941 ] Shalin Shekhar Mangar commented on SOLR-7442: - Well, of course the Java API will be different. I was talking about protocol or wire level compatibility between old SolrJ and new Solr server and vice-versa. You could upgrade to the new SolrJ which may have an alternate client but it will have a way of configuring whatever you were configuring earlier or you can continue to use the old SolrJ which should be able to talk new Solr installs for a while. Again, all these are very early discussions. We're not even sure if http2 is the right way or what client should we use or whether we want to use async IO only between servers for a start and not between server and clients. It is also possible, as you said earlier, that we may have a different Solrj implementation for http2 than the current one and continue to support both for a while. HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14516934#comment-14516934 ] Karl Wright commented on SOLR-7442: --- bq. So I see no reason why a new httpclient such as Jetty's http client will not work with old Solr installations. The API for Jetty's HttpClient is completely different from the API for HttpComponents/HttpClient. There are supported API entrypoints in SolrJ which accept an HttpClient object, and for Solr Cloud there are methods you can override which do the construction. Those obviously are not going to be supported anymore if you ditch HttpComponents/HttpClient. Please see https://svn.apache.org/repos/asf/manifoldcf/trunk/connectors/solr/connector/src/main/java/org/apache/manifoldcf/agents/output/solr/HttpPoster.java . HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14516840#comment-14516840 ] Shalin Shekhar Mangar commented on SOLR-7442: - bq. Technically... Yes, you're right :) HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14516847#comment-14516847 ] Karl Wright commented on SOLR-7442: --- ManifoldCF uses SolrJ at the moment to index into Solr. If you went with a non-httpclient solution to HTTP/2.0, I presume this would require breaking completely all backwards compatibility with previous versions of Solr. Our project would therefore find itself in a very difficult position. And I'm not sure that saving a couple of months is worth that kind of pain. HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14516880#comment-14516880 ] Shalin Shekhar Mangar commented on SOLR-7442: - You misunderstand Karl. HTTP/2 is not a back-compat break. Clients which support HTTP/2 can negotiate an ugprade whereas old HTTP/1.1 clients will just continue to work as-is. So I see no reason why a new httpclient such as Jetty's http client will not work with old Solr installations. Similiarily an old Solrj can continue to work with Solr which has http/2 enabled. Of course, we will test such combinations before we release. HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14516601#comment-14516601 ] Ramkumar Aiyengar commented on SOLR-7442: - Technically you can switch to JettyClient without that blocker right (as a prereq for HTTP/2)? Or am I missing something? HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14506295#comment-14506295 ] Shawn Heisey commented on SOLR-7442: HTTP/2 support would be awesome. Incredibly awesome. I'm absolutely sure it would be more efficient. I read the entire draft RFC, and I'm *really* excited about the technology and how it is going to improve performance on the world wide web. I do not think, however, that most users would see an *ENORMOUS* efficiency increase from HTTP/2, particularly if they are on a switched LAN that's gigabit or faster. If you're accessing your Solr instance across a high-latency network like the Internet or a private WAN, then you probably would see a noticeable performance boost ... but I don't think this describes most users. If switching http libraries is a significant amount of change to the codebase, which I suspect it would be, I don't think HTTP/2 is enough of a reason to endure the pain. We should only switch if there are significant advantages in other areas, such as ease of use, stability, a significant jump in LAN-based performance benchmarks, etc. I could be wrong about how invasive a change in libraries is, of course. If it's not a major pain, let's give it a try and see whether there is any verifiable advantage on a well-configured LAN. HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org
[jira] [Commented] (SOLR-7442) HttpClient replacement for HTTP/2.0
[ https://issues.apache.org/jira/browse/SOLR-7442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14506387#comment-14506387 ] Shalin Shekhar Mangar commented on SOLR-7442: - This is blocked by SOLR-7339 HttpClient replacement for HTTP/2.0 --- Key: SOLR-7442 URL: https://issues.apache.org/jira/browse/SOLR-7442 Project: Solr Issue Type: New Feature Reporter: Ishan Chattopadhyaya Given that it would take about a year for Apache HC's HttpClient to support HTTP/2 (as per [~olegk] in SOLR-6865), adding this issue for exploring the way forward. It would be preferable to move to HTTP/2 and be able to use features like async http calls. Maybe we could look for alternatives to HC HttpClient, (e.g. Jetty's HttpClient)? -- This message was sent by Atlassian JIRA (v6.3.4#6332) - To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org