I'm working on https://issues.apache.org/jira/browse/SOLR-651 and also trying to write up http://wiki.apache.org/solr/WritingDistributedSearchComponents

Couple of questions on writing distributed SearchComponents

1. Can someone describe the stages (I think I know them, but there isn't much docs on it)? What if you feel you need a new stage? What would be the method for adding it? (not saying I need one, but I wouldn't mind writing it up on the Wiki page above). I think, I would just need to have my mythical component return a value (in distributedProcess) that is in between the values of whatever stage I wish to interject in, right? The stages seem to be very query-centric (which makes some sense)

2. How does the modifyRequest piece work? I think the idea is that a component later in the chain can piggyback onto an existing request, right? So, perhaps in looking at my latest patch for S-651, I really should just piggyback onto the retrieve docs request, right, that is likely coming from the QueryComponent anyway?

3. Anyone have suggestions on testing distributed SearchComponents? Right now, S-651 is just calling the distributeProcess call directly, but I was wondering whether we want to think about abstracting a test harness from the TestDistributedSearch class that starts up multiple Jetty instances. Thoughts?

4. Seems like we should put some effort into making the other components support distributed operations, right? Is there an existing issue for this? I see https://issues.apache.org/jira/browse/SOLR-785 . Should we handle it on an ad-hoc basis and just open issues for each one?

-Grant

Reply via email to