but I don't understand why there needs to be special APIs.
These are not really "special" APIs. It is just another requesthandler which anyone can register in any core.
We should be able to support binary field types, and if our support is lacking
yes. But it also needs to do more things to make this usable. This requesthandler really makes that very convenient. I don't see how can a generic binary field API be as useful. Suggestions are welcome
But can a request handler / component in solrconfig.xml make use of a jar in .system? Does this mean that .system will somehow need to come up before every other collection in a cloud setup
All the handlers loaded from .system will be automatically be startup="lazy . So , any request fired to those handlers must respond with " .system collection not yet available " , till .system is loaded
Does this stuff relate at all to the goal of providing a smaller download and having an easier plugin mechanism for the stuff that's in contrib
No , this is not conceived for a smaller download. I don't yet plan to make the contribs plugged in through this
The usecase is this.
I have a fairly large solrcloud cluster where I deploy a custom component. The current solution is to go to all the nodes and put a jar file there and do a rolling restart of the entire cluster. And, for every new version of the component , the user has to go through the same steps. For Lucidworks , it is a fairly common usecase and will make our product easier to manage
The other usecase is to manage other files like synonyms / stopwords (or any other files required by any other component) in Solr so that we don't load very large files into Zookeeper
In some ways it feels like we're starting from the bottom up (which can be a fine approach) without the use-cases / high level designs / goals
We are rethinking the way Solr is being used. The objective is to make it less painful to do what we experts can do with Solr. I'm glad that people are asking . NO , you haven't missed anything . This JIRA is the first piece of documentation ever to happen on this topic and all questions are welcome .
Let's build it together