[
https://issues.apache.org/jira/browse/SOLR-303?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12548032
]
Yonik Seeley commented on SOLR-303:
-----------------------------------
I've been prototyping distributed search in python...
The current methods I have for a component are something like
{code}
// returns the current stage this component is at... stage starts at -1 and
the next stage is the minimum returned
// by all components on the previous calls to process()
int process(RequestBuilder rb, int stage);
// callback for a single response received (optional... this could be left
out)
// all components have this called, regardless of who queued the request
void singleResponse(ResponseBuilder rb, int stage, Request req, Response
rsp);
// callback when all responses (from all shards) to a request have been
received
void allResponses(ResponseBuilder rb, int stage, Request req);
{code}
Any of these methods can add another request to the outgoing queue. The
current stage is only over after all
requests have been sent, responses received, and the outgoing queue is empty.
When all components return maxint from process(), we are done.
> Distributed Search over HTTP
> ----------------------------
>
> Key: SOLR-303
> URL: https://issues.apache.org/jira/browse/SOLR-303
> Project: Solr
> Issue Type: New Feature
> Components: search
> Reporter: Sharad Agarwal
> Attachments: fedsearch.patch, fedsearch.patch, fedsearch.patch,
> fedsearch.patch, fedsearch.patch, fedsearch.stu.patch, fedsearch.stu.patch
>
>
> Searching over multiple shards and aggregating results.
> Motivated by http://wiki.apache.org/solr/DistributedSearch
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.