You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by to...@apache.org on 2018/05/28 11:18:44 UTC
svn commit: r1832379 - in
/jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr:
configuration/nodestate/NodeStateSolrServersObserver.java
query/FilterQueryParser.java query/SolrQueryIndex.java
Author: tommaso
Date: Mon May 28 11:18:44 2018
New Revision: 1832379
URL: http://svn.apache.org/viewvc?rev=1832379&view=rev
Log:
OAK-7513 - avoid NPE in exact size calculation, adjusted some log statements
Modified:
jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/configuration/nodestate/NodeStateSolrServersObserver.java
jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/FilterQueryParser.java
jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryIndex.java
Modified: jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/configuration/nodestate/NodeStateSolrServersObserver.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/configuration/nodestate/NodeStateSolrServersObserver.java?rev=1832379&r1=1832378&r2=1832379&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/configuration/nodestate/NodeStateSolrServersObserver.java (original)
+++ jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/configuration/nodestate/NodeStateSolrServersObserver.java Mon May 28 11:18:44 2018
@@ -117,7 +117,6 @@ public class NodeStateSolrServersObserve
}
private boolean isSolrServerNode(String name, NodeState nodeState) {
- log.info("checking {} in {}", name, nodeState);
return "server".equals(name) && nodeState.hasProperty("solrServerType");
}
Modified: jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/FilterQueryParser.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/FilterQueryParser.java?rev=1832379&r1=1832378&r2=1832379&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/FilterQueryParser.java (original)
+++ jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/FilterQueryParser.java Mon May 28 11:18:44 2018
@@ -65,8 +65,8 @@ class FilterQueryParser {
}
}
- List<QueryIndex.OrderEntry> sortOrder = plan.getSortOrder();
- if (sortOrder != null) {
+ if (plan != null && plan.getSortOrder() != null) {
+ List<QueryIndex.OrderEntry> sortOrder = plan.getSortOrder();
for (QueryIndex.OrderEntry orderEntry : sortOrder) {
SolrQuery.ORDER order;
if (QueryIndex.OrderEntry.Order.ASCENDING.equals(orderEntry.getOrder())) {
Modified: jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryIndex.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryIndex.java?rev=1832379&r1=1832378&r2=1832379&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryIndex.java (original)
+++ jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/SolrQueryIndex.java Mon May 28 11:18:44 2018
@@ -152,7 +152,7 @@ public class SolrQueryIndex implements F
match++;
}
}
-
+ log.debug("{}Â matched restrictions for filter {} and configuration {}", match, filter, configuration);
return match;
}
@@ -587,12 +587,14 @@ public class SolrQueryIndex implements F
private IndexPlan getIndexPlan(Filter filter, OakSolrConfiguration configuration, LMSEstimator estimator,
List<OrderEntry> sortOrder, String path) {
if (getMatchingFilterRestrictions(filter, configuration) > 0) {
- return planBuilder(filter)
- .setEstimatedEntryCount(estimator.estimate(filter))
- .setSortOrder(sortOrder)
- .setPlanName(path)
- .setPathPrefix(getPathPrefix(path))
- .build();
+ IndexPlan indexPlan = planBuilder(filter)
+ .setEstimatedEntryCount(estimator.estimate(filter))
+ .setSortOrder(sortOrder)
+ .setPlanName(path)
+ .setPathPrefix(getPathPrefix(path))
+ .build();
+ log.debug("index plan {}", indexPlan);
+ return indexPlan;
} else {
return null;
}
@@ -792,7 +794,7 @@ public class SolrQueryIndex implements F
switch (precision) {
case EXACT:
// query solr
- SolrQuery countQuery = FilterQueryParser.getQuery(plan.getFilter(), null, this.configuration);
+ SolrQuery countQuery = FilterQueryParser.getQuery(plan.getFilter(), plan, this.configuration);
countQuery.setRows(0);
try {
estimate = this.solrServer.query(countQuery).getResults().getNumFound();