[jira] [Commented] (SOLR-5091) Clean up Servlets APIs, Kill SolrDispatchFilter, simplify API creation

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[jira] [Commented] (SOLR-5091) Clean up Servlets APIs, Kill SolrDispatchFilter, simplify API creation

Tim Allison (Jira)

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

Grant Ingersoll commented on SOLR-5091:

Should be noted, there is a lot left to do:

# Handle existing request handlers
# Deal w/ collections, etc
# Kill the SolrDispatchFilter
# Decide on what tests still need to pass and what don't

Also, I'd like to suggest some sub tasks that simplify some other things, namely, I'm not sure why we need to have response writers be per core, but we can cover that later.

> Clean up Servlets APIs, Kill SolrDispatchFilter, simplify API creation
> ----------------------------------------------------------------------
>                 Key: SOLR-5091
>                 URL: https://issues.apache.org/jira/browse/SOLR-5091
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Grant Ingersoll
>            Assignee: Grant Ingersoll
>             Fix For: 5.0
>         Attachments: SOLR-5091.patch
> This is an issue to track a series of sub issues related to deprecated and crufty Servlet/REST API code.  I'll create sub-tasks to manage them.
> # Clean up all the old UI stuff (old redirects)
> # Kill/Simplify SolrDispatchFilter -- for instance, why not make the user always have a core name in 5.0?  i.e. /collection1 is the default core
> ## I'd like to move to just using Guice's servlet extension to do this, which, I think will also make it easier to run Solr in other containers (i.e. non-servlet environments) due to the fact that you don't have to tie the request handling logic specifically to a Servlet.
> # Simplify the creation and testing of REST and other APIs via Guice + Restlet, which I've done on a number of occasions.
> ## It might be also possible to move all of the APIs onto Restlet and maintain back compat through a simple restlet proxy (still exploring this).  This would also have the benefit of abstracting the core request processing out of the Servlet context and make that an implementation detail.
> ## Moving to Guice, IMO, will make it easier to isolate and test individual components by being able to inject mocks easier.
> I am close to a working patch for some of this.  I will post incremental updates/issues as I move forward on this, but I think we should take 5.x as an opportunity to be more agnostic of container and I believe the approach I have in mind will do so.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]