You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by yo...@apache.org on 2008/07/22 04:34:01 UTC
svn commit: r678620 - in
/lucene/solr/trunk/src/java/org/apache/solr/handler/component:
DebugComponent.java FacetComponent.java HighlightComponent.java
QueryComponent.java SearchHandler.java ShardRequest.java ShardResponse.java
Author: yonik
Date: Mon Jul 21 19:34:00 2008
New Revision: 678620
URL: http://svn.apache.org/viewvc?rev=678620&view=rev
Log:
SOLR-642: make ShardResponse public
Added:
lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java (with props)
Modified:
lucene/solr/trunk/src/java/org/apache/solr/handler/component/DebugComponent.java
lucene/solr/trunk/src/java/org/apache/solr/handler/component/FacetComponent.java
lucene/solr/trunk/src/java/org/apache/solr/handler/component/HighlightComponent.java
lucene/solr/trunk/src/java/org/apache/solr/handler/component/QueryComponent.java
lucene/solr/trunk/src/java/org/apache/solr/handler/component/SearchHandler.java
lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardRequest.java
Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/component/DebugComponent.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/DebugComponent.java?rev=678620&r1=678619&r2=678620&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/DebugComponent.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/DebugComponent.java Mon Jul 21 19:34:00 2008
@@ -113,7 +113,7 @@
for (ShardRequest sreq : rb.finished) {
if ((sreq.purpose & ShardRequest.PURPOSE_GET_DEBUG) == 0) continue;
for (ShardResponse srsp : sreq.responses) {
- NamedList sdebug = (NamedList)srsp.rsp.getResponse().get("debug");
+ NamedList sdebug = (NamedList)srsp.getSolrResponse().getResponse().get("debug");
info = (NamedList)merge(sdebug, info, excludeSet);
NamedList sexplain = (NamedList)sdebug.get("explain");
Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/component/FacetComponent.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/FacetComponent.java?rev=678620&r1=678619&r2=678620&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/FacetComponent.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/FacetComponent.java Mon Jul 21 19:34:00 2008
@@ -198,8 +198,8 @@
FacetInfo fi = rb._facetInfo;
for (ShardResponse srsp: sreq.responses) {
- int shardNum = rb.getShardNum(srsp.shard);
- NamedList facet_counts = (NamedList)srsp.rsp.getResponse().get("facet_counts");
+ int shardNum = rb.getShardNum(srsp.getShard());
+ NamedList facet_counts = (NamedList)srsp.getSolrResponse().getResponse().get("facet_counts");
// handle facet queries
NamedList facet_queries = (NamedList)facet_counts.get("facet_queries");
@@ -287,7 +287,7 @@
for (ShardResponse srsp: sreq.responses) {
// int shardNum = rb.getShardNum(srsp.shard);
- NamedList facet_counts = (NamedList)srsp.rsp.getResponse().get("facet_counts");
+ NamedList facet_counts = (NamedList)srsp.getSolrResponse().getResponse().get("facet_counts");
NamedList facet_queries = (NamedList)facet_counts.get("facet_queries");
// These are single term queries used to fill in missing counts
Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/component/HighlightComponent.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/HighlightComponent.java?rev=678620&r1=678619&r2=678620&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/HighlightComponent.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/HighlightComponent.java Mon Jul 21 19:34:00 2008
@@ -114,7 +114,7 @@
for (ShardRequest sreq : rb.finished) {
if ((sreq.purpose & ShardRequest.PURPOSE_GET_HIGHLIGHTS) == 0) continue;
for (ShardResponse srsp : sreq.responses) {
- NamedList hl = (NamedList)srsp.rsp.getResponse().get("highlighting");
+ NamedList hl = (NamedList)srsp.getSolrResponse().getResponse().get("highlighting");
for (int i=0; i<hl.size(); i++) {
String id = hl.getName(i);
ShardDoc sdoc = rb.resultIds.get(id);
Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/component/QueryComponent.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/QueryComponent.java?rev=678620&r1=678619&r2=678620&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/QueryComponent.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/QueryComponent.java Mon Jul 21 19:34:00 2008
@@ -354,7 +354,7 @@
long numFound = 0;
Float maxScore=null;
for (ShardResponse srsp : sreq.responses) {
- SolrDocumentList docs = (SolrDocumentList)srsp.rsp.getResponse().get("response");
+ SolrDocumentList docs = (SolrDocumentList)srsp.getSolrResponse().getResponse().get("response");
// calculate global maxScore and numDocsFound
if (docs.getMaxScore() != null) {
@@ -362,7 +362,7 @@
}
numFound += docs.getNumFound();
- NamedList sortFieldValues = (NamedList)(srsp.rsp.getResponse().get("sort_values"));
+ NamedList sortFieldValues = (NamedList)(srsp.getSolrResponse().getResponse().get("sort_values"));
// go through every doc in this response, construct a ShardDoc, and
// put it in the priority queue so it can be ordered.
@@ -370,7 +370,7 @@
SolrDocument doc = docs.get(i);
Object id = doc.getFieldValue(uniqueKeyField.getName());
- String prevShard = uniqueDoc.put(id, srsp.shard);
+ String prevShard = uniqueDoc.put(id, srsp.getShard());
if (prevShard != null) {
// duplicate detected
numFound--;
@@ -388,7 +388,7 @@
ShardDoc shardDoc = new ShardDoc();
shardDoc.id = id;
- shardDoc.shard = srsp.shard;
+ shardDoc.shard = srsp.getShard();
shardDoc.orderInShard = i;
Object scoreObj = doc.getFieldValue("score");
if (scoreObj != null) {
@@ -502,7 +502,7 @@
assert(sreq.responses.size() == 1);
ShardResponse srsp = sreq.responses.get(0);
- SolrDocumentList docs = (SolrDocumentList)srsp.rsp.getResponse().get("response");
+ SolrDocumentList docs = (SolrDocumentList)srsp.getSolrResponse().getResponse().get("response");
String keyFieldName = rb.req.getSchema().getUniqueKeyField().getName();
Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/component/SearchHandler.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/SearchHandler.java?rev=678620&r1=678619&r2=678620&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/SearchHandler.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/SearchHandler.java Mon Jul 21 19:34:00 2008
@@ -235,20 +235,20 @@
// Was there an exception? If so, abort everything and
// rethrow
- if (srsp.exception != null) {
+ if (srsp.getException() != null) {
comm.cancelAll();
- if (srsp.exception instanceof SolrException) {
- throw (SolrException)srsp.exception;
+ if (srsp.getException() instanceof SolrException) {
+ throw (SolrException)srsp.getException();
} else {
- throw new SolrException(SolrException.ErrorCode.SERVER_ERROR, srsp.exception);
+ throw new SolrException(SolrException.ErrorCode.SERVER_ERROR, srsp.getException());
}
}
- rb.finished.add(srsp.req);
+ rb.finished.add(srsp.getShardRequest());
// let the components see the responses to the request
for(SearchComponent c : components) {
- c.handleResponses(rb, srsp.req);
+ c.handleResponses(rb, srsp.getShardRequest());
}
}
}
@@ -346,10 +346,10 @@
public ShardResponse call() throws Exception {
ShardResponse srsp = new ShardResponse();
- srsp.req = sreq;
- srsp.shard = shard;
+ srsp.setShardRequest(sreq);
+ srsp.setShard(shard);
SimpleSolrResponse ssr = new SimpleSolrResponse();
- srsp.rsp = ssr;
+ srsp.setSolrResponse(ssr);
long startTime = System.currentTimeMillis();
try {
@@ -370,11 +370,11 @@
ssr.nl = server.request(req);
} catch (Throwable th) {
- srsp.exception = th;
+ srsp.setException(th);
if (th instanceof SolrException) {
- srsp.rspCode = ((SolrException)th).code();
+ srsp.setResponseCode(((SolrException)th).code());
} else {
- srsp.rspCode = -1;
+ srsp.setResponseCode(-1);
}
}
@@ -394,8 +394,8 @@
Future<ShardResponse> future = completionService.take();
pending.remove(future);
ShardResponse rsp = future.get();
- rsp.req.responses.add(rsp);
- if (rsp.req.responses.size() == rsp.req.actualShards.length) {
+ rsp.getShardRequest().responses.add(rsp);
+ if (rsp.getShardRequest().responses.size() == rsp.getShardRequest().actualShards.length) {
return rsp;
}
} catch (InterruptedException e) {
@@ -419,13 +419,13 @@
Future<ShardResponse> future = completionService.take();
pending.remove(future);
ShardResponse rsp = future.get();
- if (rsp.exception != null) return rsp; // if exception, return immediately
+ if (rsp.getException() != null) return rsp; // if exception, return immediately
// add response to the response list... we do this after the take() and
// not after the completion of "call" so we know when the last response
// for a request was received. Otherwise we might return the same
// request more than once.
- rsp.req.responses.add(rsp);
- if (rsp.req.responses.size() == rsp.req.actualShards.length) {
+ rsp.getShardRequest().responses.add(rsp);
+ if (rsp.getShardRequest().responses.size() == rsp.getShardRequest().actualShards.length) {
return rsp;
}
} catch (InterruptedException e) {
Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardRequest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardRequest.java?rev=678620&r1=678619&r2=678620&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardRequest.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardRequest.java Mon Jul 21 19:34:00 2008
@@ -16,14 +16,11 @@
*/
package org.apache.solr.handler.component;
-import org.apache.solr.client.solrj.SolrResponse;
-import org.apache.solr.common.params.ModifiableSolrParams;
-import org.apache.solr.common.SolrException;
-import org.apache.solr.common.util.NamedList;
-
import java.util.ArrayList;
import java.util.List;
+import org.apache.solr.common.params.ModifiableSolrParams;
+
// todo... when finalized make accessors
public class ShardRequest {
@@ -66,21 +63,3 @@
+ "}";
}
}
-
-
-class ShardResponse {
- public ShardRequest req;
- public String shard;
- public String shardAddress; // the specific shard that this response was received from
- public int rspCode;
- public Throwable exception;
- public SolrResponse rsp;
-
- public String toString() {
- return "ShardResponse:{shard="+shard+",shardAddress="+shardAddress
- +"\n\trequest=" + req
- +"\n\tresponse=" + rsp
- + (exception==null ? "" : "\n\texception="+ SolrException.toStr(exception))
- +"\n}";
- }
-}
\ No newline at end of file
Added: lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java?rev=678620&view=auto
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java (added)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java Mon Jul 21 19:34:00 2008
@@ -0,0 +1,66 @@
+package org.apache.solr.handler.component;
+
+import org.apache.solr.client.solrj.SolrResponse;
+import org.apache.solr.common.SolrException;
+
+public final class ShardResponse {
+ private ShardRequest req;
+ private String shard;
+ private String shardAddress; // the specific shard that this response was received from
+ private int rspCode;
+ private Throwable exception;
+ private SolrResponse rsp;
+
+ public String toString() {
+ return "ShardResponse:{shard="+shard+",shardAddress="+shardAddress
+ +"\n\trequest=" + req
+ +"\n\tresponse=" + rsp
+ + (exception==null ? "" : "\n\texception="+ SolrException.toStr(exception))
+ +"\n}";
+ }
+
+ public Throwable getException()
+ {
+ return exception;
+ }
+
+ public ShardRequest getShardRequest()
+ {
+ return req;
+ }
+
+ public SolrResponse getSolrResponse()
+ {
+ return rsp;
+ }
+
+ public String getShard()
+ {
+ return shard;
+ }
+
+ void setShardRequest(ShardRequest rsp)
+ {
+ this.req = rsp;
+ }
+
+ void setSolrResponse(SolrResponse rsp)
+ {
+ this.rsp = rsp;
+ }
+
+ void setShard(String shard)
+ {
+ this.shard = shard;
+ }
+
+ void setException(Throwable exception)
+ {
+ this.exception = exception;
+ }
+
+ void setResponseCode(int rspCode)
+ {
+ this.rspCode = rspCode;
+ }
+}
Propchange: lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: lucene/solr/trunk/src/java/org/apache/solr/handler/component/ShardResponse.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL