You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2012/08/25 12:06:16 UTC
svn commit: r1377246 [6/7] - in /lucene/dev/branches/lucene3312: ./
dev-tools/ dev-tools/idea/lucene/analysis/morfologik/
dev-tools/idea/lucene/analysis/phonetic/ dev-tools/maven/
dev-tools/scripts/ lucene/ lucene/analysis/ lucene/analysis/common/ luce...
Modified: lucene/dev/branches/lucene3312/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queries/src/java/org/apache/lucene/queries/function/valuesource/NumDocsValueSource.java Sat Aug 25 10:06:07 2012
@@ -17,6 +17,7 @@
package org.apache.lucene.queries.function.valuesource;
import org.apache.lucene.index.AtomicReaderContext;
+import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.ReaderUtil;
import org.apache.lucene.queries.function.FunctionValues;
import org.apache.lucene.queries.function.ValueSource;
@@ -24,6 +25,11 @@ import org.apache.lucene.queries.functio
import java.io.IOException;
import java.util.Map;
+/**
+ * Returns the value of {@link IndexReader#numDocs()}
+ * for every document. This is the number of documents
+ * excluding deletions.
+ */
public class NumDocsValueSource extends ValueSource {
public String name() {
return "numdocs";
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java Sat Aug 25 10:06:07 2012
@@ -36,6 +36,9 @@ import org.apache.lucene.queryparser.fle
*/
public class ModifierQueryNode extends QueryNodeImpl {
+ /**
+ * Modifier type: such as required (REQ), prohibited (NOT)
+ */
public enum Modifier {
MOD_NONE, MOD_NOT, MOD_REQ;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java Sat Aug 25 10:06:07 2012
@@ -41,6 +41,9 @@ import org.apache.lucene.queryparser.fle
*/
public class PathQueryNode extends QueryNodeImpl {
+ /**
+ * Term text with a beginning and end position
+ */
public static class QueryText implements Cloneable {
CharSequence value = null;
/**
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PhraseSlopQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PhraseSlopQueryNode.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PhraseSlopQueryNode.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PhraseSlopQueryNode.java Sat Aug 25 10:06:07 2012
@@ -17,11 +17,15 @@ package org.apache.lucene.queryparser.fl
* limitations under the License.
*/
+import org.apache.lucene.search.PhraseQuery; // javadocs
import org.apache.lucene.queryparser.flexible.messages.MessageImpl;
import org.apache.lucene.queryparser.flexible.core.QueryNodeError;
import org.apache.lucene.queryparser.flexible.core.messages.QueryParserMessages;
import org.apache.lucene.queryparser.flexible.core.parser.EscapeQuerySyntax;
+/**
+ * Query node for {@link PhraseQuery}'s slop factor.
+ */
public class PhraseSlopQueryNode extends QueryNodeImpl implements FieldableNode {
private int value = 0;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ProximityQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ProximityQueryNode.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ProximityQueryNode.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ProximityQueryNode.java Sat Aug 25 10:06:07 2012
@@ -33,6 +33,9 @@ import org.apache.lucene.queryparser.fle
*/
public class ProximityQueryNode extends BooleanQueryNode {
+ /**
+ * Distance condition: PARAGRAPH, SENTENCE, or NUMBER
+ */
public enum Type {
PARAGRAPH {
@Override
@@ -50,7 +53,7 @@ public class ProximityQueryNode extends
abstract CharSequence toQueryString();
}
- // utility class
+ /** utility class containing the distance condition and number */
static public class ProximityType {
int pDistance = 0;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/TextableQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/TextableQueryNode.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/TextableQueryNode.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/TextableQueryNode.java Sat Aug 25 10:06:07 2012
@@ -18,7 +18,7 @@ package org.apache.lucene.queryparser.fl
*/
/**
- *
+ * Interface for a node that has text as a {@link CharSequence}
*/
public interface TextableQueryNode {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/parser/EscapeQuerySyntax.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/parser/EscapeQuerySyntax.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/parser/EscapeQuerySyntax.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/parser/EscapeQuerySyntax.java Sat Aug 25 10:06:07 2012
@@ -24,6 +24,10 @@ import java.util.Locale;
* to escape the queries, when the toQueryString method is called.
*/
public interface EscapeQuerySyntax {
+ /**
+ * Type of escaping: String for escaping syntax,
+ * NORMAL for escaping reserved words (like AND) in terms
+ */
public enum Type {
STRING, NORMAL;
}
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/StringUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/StringUtils.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/StringUtils.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/StringUtils.java Sat Aug 25 10:06:07 2012
@@ -17,6 +17,9 @@ package org.apache.lucene.queryparser.fl
* limitations under the License.
*/
+/**
+ * String manipulation routines
+ */
final public class StringUtils {
public static String toString(Object obj) {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/CommonQueryParserConfiguration.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/CommonQueryParserConfiguration.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/CommonQueryParserConfiguration.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/CommonQueryParserConfiguration.java Sat Aug 25 10:06:07 2012
@@ -27,6 +27,9 @@ import org.apache.lucene.search.MultiTer
* limitations under the License.
*/
+/**
+ * Configuration options common across queryparser implementations.
+ */
public interface CommonQueryParserConfiguration {
/**
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/AnyQueryNodeBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/AnyQueryNodeBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/AnyQueryNodeBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/AnyQueryNodeBuilder.java Sat Aug 25 10:06:07 2012
@@ -30,6 +30,10 @@ import org.apache.lucene.search.BooleanQ
import org.apache.lucene.search.Query;
import org.apache.lucene.search.BooleanQuery.TooManyClauses;
+/**
+ * Builds a BooleanQuery of SHOULD clauses, possibly with
+ * some minimum number to match.
+ */
public class AnyQueryNodeBuilder implements StandardQueryBuilder {
public AnyQueryNodeBuilder() {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/FuzzyConfig.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/FuzzyConfig.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/FuzzyConfig.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/FuzzyConfig.java Sat Aug 25 10:06:07 2012
@@ -19,6 +19,9 @@ package org.apache.lucene.queryparser.fl
import org.apache.lucene.search.FuzzyQuery;
+/**
+ * Configuration parameters for {@link FuzzyQuery}s
+ */
public class FuzzyConfig {
private int prefixLength = FuzzyQuery.defaultPrefixLength;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/StandardQueryConfigHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/StandardQueryConfigHandler.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/StandardQueryConfigHandler.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/config/StandardQueryConfigHandler.java Sat Aug 25 10:06:07 2012
@@ -44,6 +44,9 @@ import org.apache.lucene.search.MultiTer
*/
public class StandardQueryConfigHandler extends QueryConfigHandler {
+ /**
+ * Class holding keys for StandardQueryNodeProcessorPipeline options.
+ */
final public static class ConfigurationKeys {
/**
@@ -182,6 +185,9 @@ public class StandardQueryConfigHandler
}
+ /**
+ * Boolean Operator: AND or OR
+ */
public static enum Operator {
AND, OR;
}
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/EscapeQuerySyntaxImpl.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/EscapeQuerySyntaxImpl.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/EscapeQuerySyntaxImpl.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/EscapeQuerySyntaxImpl.java Sat Aug 25 10:06:07 2012
@@ -25,6 +25,8 @@ import org.apache.lucene.queryparser.fle
import org.apache.lucene.queryparser.flexible.core.util.UnescapedCharSequence;
/**
+ * Implementation of {@link EscapeQuerySyntax} for the standard lucene
+ * syntax.
*/
public class EscapeQuerySyntaxImpl implements EscapeQuerySyntax {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java Sat Aug 25 10:06:07 2012
@@ -40,6 +40,9 @@ import org.apache.lucene.queryparser.fle
import org.apache.lucene.queryparser.flexible.core.parser.SyntaxParser;
import org.apache.lucene.queryparser.flexible.standard.nodes.TermRangeQueryNode;
+/**
+ * Parser for the standard Lucene syntax
+ */
public class StandardSyntaxParser implements SyntaxParser, StandardSyntaxParserConstants {
private static final int CONJ_NONE =0;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.jj
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.jj?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.jj (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.jj Sat Aug 25 10:06:07 2012
@@ -52,6 +52,9 @@ import org.apache.lucene.queryparser.fle
import org.apache.lucene.queryparser.flexible.core.parser.SyntaxParser;
import org.apache.lucene.queryparser.flexible.standard.nodes.TermRangeQueryNode;
+/**
+ * Parser for the standard Lucene syntax
+ */
public class StandardSyntaxParser implements SyntaxParser {
private static final int CONJ_NONE =0;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/OpenRangeQueryNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/OpenRangeQueryNodeProcessor.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/OpenRangeQueryNodeProcessor.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/OpenRangeQueryNodeProcessor.java Sat Aug 25 10:06:07 2012
@@ -19,6 +19,7 @@ package org.apache.lucene.queryparser.fl
import java.util.List;
+import org.apache.lucene.search.TermRangeQuery; // javadocs
import org.apache.lucene.queryparser.flexible.core.QueryNodeException;
import org.apache.lucene.queryparser.flexible.core.nodes.FieldQueryNode;
import org.apache.lucene.queryparser.flexible.core.nodes.QueryNode;
@@ -26,6 +27,9 @@ import org.apache.lucene.queryparser.fle
import org.apache.lucene.queryparser.flexible.core.util.UnescapedCharSequence;
import org.apache.lucene.queryparser.flexible.standard.nodes.TermRangeQueryNode;
+/**
+ * Processes {@link TermRangeQuery}s with open ranges.
+ */
public class OpenRangeQueryNodeProcessor extends QueryNodeProcessorImpl {
final public static String OPEN_RANGE_TOKEN = "*";
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/AndQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/AndQuery.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/AndQuery.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/AndQuery.java Sat Aug 25 10:06:07 2012
@@ -21,6 +21,9 @@ import java.util.List;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.BooleanClause;
+/**
+ * Factory for conjunctions
+ */
public class AndQuery extends ComposedQuery {
public AndQuery(List<SrndQuery> queries, boolean inf, String opName) {
super(queries, inf, opName);
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/OrQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/OrQuery.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/OrQuery.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/OrQuery.java Sat Aug 25 10:06:07 2012
@@ -23,6 +23,9 @@ import org.apache.lucene.search.BooleanC
import java.io.IOException;
+/**
+ * Factory for disjunctions
+ */
public class OrQuery extends ComposedQuery implements DistanceSubQuery {
public OrQuery(List<SrndQuery> queries, boolean infix, String opName) {
super(queries, infix, opName);
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java Sat Aug 25 10:06:07 2012
@@ -64,6 +64,9 @@ import org.apache.lucene.search.spans.Sp
import org.apache.lucene.search.spans.SpanTermQuery;
+/**
+ * Factory for {@link SpanOrQuery}
+ */
public class SpanNearClauseFactory { // FIXME: rename to SpanClauseFactory
public SpanNearClauseFactory(IndexReader reader, String fieldName, BasicQueryFactory qf) {
this.reader = reader;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/TooManyBasicQueries.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/TooManyBasicQueries.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/TooManyBasicQueries.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/TooManyBasicQueries.java Sat Aug 25 10:06:07 2012
@@ -18,6 +18,10 @@ package org.apache.lucene.queryparser.su
import java.io.IOException; /* subclass to be usable from within Query.rewrite() */
+/**
+ * Exception thrown when {@link BasicQueryFactory} would exceed the limit
+ * of query clauses.
+ */
public class TooManyBasicQueries extends IOException {
public TooManyBasicQueries(int maxBasicQueries) {
super("Exceeded maximum of " + maxBasicQueries + " basic queries.");
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilder.java Sat Aug 25 10:06:07 2012
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Interface for building {@link Filter}s
*/
public interface FilterBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java Sat Aug 25 10:06:07 2012
@@ -25,7 +25,7 @@ import java.util.HashMap;
*/
/**
- *
+ * Factory for {@link FilterBuilder}
*/
public class FilterBuilderFactory implements FilterBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java Sat Aug 25 10:06:07 2012
@@ -25,7 +25,7 @@ import java.util.HashMap;
*/
/**
- *
+ * Factory for {@link QueryBuilder}
*/
public class QueryBuilderFactory implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanFilterBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanFilterBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanFilterBuilder.java Sat Aug 25 10:06:07 2012
@@ -32,7 +32,7 @@ import org.w3c.dom.NodeList;
*/
/**
- *
+ * Builder for {@link BooleanFilter}
*/
public class BooleanFilterBuilder implements FilterBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BooleanQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -30,7 +30,7 @@ import org.w3c.dom.NodeList;
*/
/**
- *
+ * Builder for {@link BooleanQuery}
*/
public class BooleanQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -24,7 +24,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link BoostingQuery}
*/
public class BoostingQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingTermBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingTermBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingTermBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/BoostingTermBuilder.java Sat Aug 25 10:06:07 2012
@@ -26,7 +26,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link PayloadTermQuery}
*/
public class BoostingTermBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/ConstantScoreQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/ConstantScoreQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/ConstantScoreQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/ConstantScoreQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -25,7 +25,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link ConstantScoreQuery}
*/
public class ConstantScoreQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DisjunctionMaxQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DisjunctionMaxQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DisjunctionMaxQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DisjunctionMaxQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -26,7 +26,7 @@ import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
/**
- * Build a DisjunctionMaxQuery.
+ * Builder for {@link DisjunctionMaxQuery}
*/
public class DisjunctionMaxQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DuplicateFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DuplicateFilterBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DuplicateFilterBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/DuplicateFilterBuilder.java Sat Aug 25 10:06:07 2012
@@ -28,7 +28,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link DuplicateFilter}
*/
public class DuplicateFilterBuilder implements FilterBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FilteredQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FilteredQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FilteredQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FilteredQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -30,7 +30,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link FilteredQuery}
*/
public class FilteredQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FuzzyLikeThisQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FuzzyLikeThisQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FuzzyLikeThisQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/FuzzyLikeThisQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -28,7 +28,7 @@ import org.w3c.dom.NodeList;
*/
/**
- *
+ * Builder for {@link FuzzyLikeThisQuery}
*/
public class FuzzyLikeThisQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -35,7 +35,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link MoreLikeThisQuery}
*/
public class LikeThisQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/MatchAllDocsQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/MatchAllDocsQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/MatchAllDocsQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/MatchAllDocsQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link MatchAllDocsQuery}
*/
public class MatchAllDocsQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/RangeFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/RangeFilterBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/RangeFilterBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/RangeFilterBuilder.java Sat Aug 25 10:06:07 2012
@@ -28,7 +28,7 @@ import org.w3c.dom.Element;
/**
- *
+ * Builder for {@link TermRangeFilter}
*/
public class RangeFilterBuilder implements FilterBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanBuilderBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanBuilderBase.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanBuilderBase.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanBuilderBase.java Sat Aug 25 10:06:07 2012
@@ -1,6 +1,7 @@
package org.apache.lucene.queryparser.xml.builders;
import org.apache.lucene.search.Query;
+import org.apache.lucene.search.spans.SpanQuery; // javadocs
import org.apache.lucene.queryparser.xml.ParserException;
import org.w3c.dom.Element;
/*
@@ -21,7 +22,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Base class for building {@link SpanQuery}s
*/
public abstract class SpanBuilderBase implements SpanQueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanFirstBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanFirstBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanFirstBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanFirstBuilder.java Sat Aug 25 10:06:07 2012
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link SpanFirstQuery}
*/
public class SpanFirstBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java Sat Aug 25 10:06:07 2012
@@ -27,7 +27,7 @@ import java.util.List;
*/
/**
- *
+ * Builder for {@link SpanNearQuery}
*/
public class SpanNearBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNotBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNotBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNotBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNotBuilder.java Sat Aug 25 10:06:07 2012
@@ -23,7 +23,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link SpanNotQuery}
*/
public class SpanNotBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java Sat Aug 25 10:06:07 2012
@@ -27,7 +27,7 @@ import java.util.List;
*/
/**
- *
+ * Builder for {@link SpanOrQuery}
*/
public class SpanOrBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java Sat Aug 25 10:06:07 2012
@@ -34,7 +34,7 @@ import java.util.List;
*/
/**
- *
+ * Builder that analyzes the text into a {@link SpanOrQuery}
*/
public class SpanOrTermsBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -20,6 +20,9 @@ import org.apache.lucene.queryparser.xml
import org.apache.lucene.queryparser.xml.QueryBuilder;
import org.w3c.dom.Element;
+/**
+ * Interface for retrieving a {@link SpanQuery}.
+ */
public interface SpanQueryBuilder extends QueryBuilder {
public SpanQuery getSpanQuery(Element e) throws ParserException;
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java Sat Aug 25 10:06:07 2012
@@ -25,7 +25,7 @@ import java.util.Map;
*/
/**
- *
+ * Factory for {@link SpanQueryBuilder}s
*/
public class SpanQueryBuilderFactory implements SpanQueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanTermBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanTermBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanTermBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanTermBuilder.java Sat Aug 25 10:06:07 2012
@@ -24,7 +24,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link SpanTermQuery}
*/
public class SpanTermBuilder extends SpanBuilderBase {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermQueryBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermQueryBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermQueryBuilder.java Sat Aug 25 10:06:07 2012
@@ -25,7 +25,7 @@ import org.w3c.dom.Element;
*/
/**
- *
+ * Builder for {@link TermQuery}
*/
public class TermQueryBuilder implements QueryBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java (original)
+++ lucene/dev/branches/lucene3312/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java Sat Aug 25 10:06:07 2012
@@ -33,7 +33,7 @@ import java.io.StringReader;
*/
/**
- *
+ * Builder for {@link TermsFilter}
*/
public class TermsFilterBuilder implements FilterBuilder {
Modified: lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgs.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgs.java (original)
+++ lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgs.java Sat Aug 25 10:06:07 2012
@@ -35,10 +35,6 @@ public class SpatialArgs {
private Shape shape;
private double distPrecision = DEFAULT_DIST_PRECISION;
- // Useful for 'distance' calculations
- private Double min;
- private Double max;
-
public SpatialArgs(SpatialOperation operation) {
this.operation = operation;
}
@@ -60,12 +56,6 @@ public class SpatialArgs {
StringBuilder str = new StringBuilder();
str.append(operation.getName()).append('(');
str.append(shape.toString());
- if (min != null) {
- str.append(" min=").append(min);
- }
- if (max != null) {
- str.append(" max=").append(max);
- }
str.append(" distPrec=").append(String.format(Locale.ROOT, "%.2f%%", distPrecision / 100d));
str.append(')');
return str.toString();
@@ -111,19 +101,4 @@ public class SpatialArgs {
this.distPrecision = distPrecision;
}
- public Double getMin() {
- return min;
- }
-
- public void setMin(Double min) {
- this.min = min;
- }
-
- public Double getMax() {
- return max;
- }
-
- public void setMax(Double max) {
- this.max = max;
- }
}
Modified: lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java (original)
+++ lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java Sat Aug 25 10:06:07 2012
@@ -75,8 +75,6 @@ public class SpatialArgsParser {
body = v.substring(edx + 1).trim();
if (body.length() > 0) {
Map<String, String> aa = parseMap(body);
- args.setMin(readDouble(aa.remove("min")));
- args.setMax(readDouble(aa.remove("max")));
args.setDistPrecision(readDouble(aa.remove("distPrec")));
if (!aa.isEmpty()) {
throw new InvalidSpatialArgument("unused parameters: " + aa, null);
Modified: lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/UnsupportedSpatialOperation.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/UnsupportedSpatialOperation.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/UnsupportedSpatialOperation.java (original)
+++ lucene/dev/branches/lucene3312/lucene/spatial/src/java/org/apache/lucene/spatial/query/UnsupportedSpatialOperation.java Sat Aug 25 10:06:07 2012
@@ -18,6 +18,7 @@ package org.apache.lucene.spatial.query;
*/
/**
+ * Exception thrown when the strategy cannot implement the requested operation.
* @lucene.experimental
*/
public class UnsupportedSpatialOperation extends UnsupportedOperationException {
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockCharFilter.java Sat Aug 25 10:06:07 2012
@@ -42,11 +42,6 @@ public class MockCharFilter extends Char
public MockCharFilter(Reader in) {
this(in, 0);
}
-
- @Override
- public void close() throws IOException {
- in.close();
- }
int currentOffset = -1;
int delta = 0;
@@ -66,7 +61,7 @@ public class MockCharFilter extends Char
}
// otherwise actually read one
- int ch = in.read();
+ int ch = input.read();
if (ch < 0)
return ch;
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/analysis/MockTokenizer.java Sat Aug 25 10:06:07 2012
@@ -19,12 +19,16 @@ package org.apache.lucene.analysis;
import java.io.IOException;
import java.io.Reader;
+import java.nio.CharBuffer;
+import java.util.Random;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.util.automaton.CharacterRunAutomaton;
import org.apache.lucene.util.automaton.RegExp;
+import com.carrotsearch.randomizedtesting.RandomizedContext;
+
/**
* Tokenizer for testing.
* <p>
@@ -77,6 +81,9 @@ public class MockTokenizer extends Token
private int lastOffset = 0; // only for asserting
private boolean enableChecks = true;
+ // evil: but we don't change the behavior with this random, we only switch up how we read
+ private final Random random = new Random(RandomizedContext.current().getRandom().nextLong());
+
public MockTokenizer(AttributeFactory factory, Reader input, CharacterRunAutomaton runAutomaton, boolean lowerCase, int maxTokenLength) {
super(factory, input);
this.runAutomaton = runAutomaton;
@@ -139,14 +146,14 @@ public class MockTokenizer extends Token
}
protected int readCodePoint() throws IOException {
- int ch = input.read();
+ int ch = readChar();
if (ch < 0) {
return ch;
} else {
assert !Character.isLowSurrogate((char) ch) : "unpaired low surrogate: " + Integer.toHexString(ch);
off++;
if (Character.isHighSurrogate((char) ch)) {
- int ch2 = input.read();
+ int ch2 = readChar();
if (ch2 >= 0) {
off++;
assert Character.isLowSurrogate((char) ch2) : "unpaired high surrogate: " + Integer.toHexString(ch) + ", followed by: " + Integer.toHexString(ch2);
@@ -158,6 +165,33 @@ public class MockTokenizer extends Token
return ch;
}
}
+
+ protected int readChar() throws IOException {
+ switch(random.nextInt(10)) {
+ case 0: {
+ // read(char[])
+ char c[] = new char[1];
+ int ret = input.read(c);
+ return ret < 0 ? ret : c[0];
+ }
+ case 1: {
+ // read(char[], int, int)
+ char c[] = new char[2];
+ int ret = input.read(c, 1, 1);
+ return ret < 0 ? ret : c[1];
+ }
+ case 2: {
+ // read(CharBuffer)
+ char c[] = new char[1];
+ CharBuffer cb = CharBuffer.wrap(c);
+ int ret = input.read(cb);
+ return ret < 0 ? ret : c[0];
+ }
+ default:
+ // read()
+ return input.read();
+ }
+ }
protected boolean isTokenChar(int c) {
state = runAutomaton.step(state, c);
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingPostingsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingPostingsFormat.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingPostingsFormat.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingPostingsFormat.java Sat Aug 25 10:06:07 2012
@@ -83,14 +83,9 @@ public class AssertingPostingsFormat ext
}
@Override
- public int size() throws IOException {
+ public int size() {
return in.size();
}
-
- @Override
- public long getUniqueTermCount() throws IOException {
- return in.getUniqueTermCount();
- }
}
static class AssertingFieldsConsumer extends FieldsConsumer {
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/mocksep/MockSingleIntIndexInput.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/mocksep/MockSingleIntIndexInput.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/mocksep/MockSingleIntIndexInput.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/mocksep/MockSingleIntIndexInput.java Sat Aug 25 10:06:07 2012
@@ -46,7 +46,7 @@ public class MockSingleIntIndexInput ext
@Override
public Reader reader() throws IOException {
- return new Reader((IndexInput) in.clone());
+ return new Reader(in.clone());
}
@Override
@@ -87,7 +87,7 @@ public class MockSingleIntIndexInput ext
}
@Override
- public void set(IntIndexInput.Index other) {
+ public void copyFrom(IntIndexInput.Index other) {
fp = ((MockSingleIntIndexInputIndex) other).fp;
}
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/ramonly/RAMOnlyPostingsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/ramonly/RAMOnlyPostingsFormat.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/ramonly/RAMOnlyPostingsFormat.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/codecs/ramonly/RAMOnlyPostingsFormat.java Sat Aug 25 10:06:07 2012
@@ -19,6 +19,7 @@ package org.apache.lucene.codecs.ramonly
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
@@ -49,7 +50,6 @@ import org.apache.lucene.store.IndexOutp
import org.apache.lucene.util.Bits;
import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.IOUtils;
-import org.apache.lucene.util.UnmodifiableIterator;
/** Stores all postings data in RAM, but writes a small
* token (header + single int) to identify which "slot" the
@@ -113,7 +113,7 @@ public class RAMOnlyPostingsFormat exten
@Override
public Iterator<String> iterator() {
- return new UnmodifiableIterator<String>(fieldToTerms.keySet().iterator());
+ return Collections.unmodifiableSet(fieldToTerms.keySet()).iterator();
}
@Override
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/index/RandomCodec.java Sat Aug 25 10:06:07 2012
@@ -29,6 +29,7 @@ import java.util.Set;
import org.apache.lucene.codecs.PostingsFormat;
import org.apache.lucene.codecs.asserting.AssertingPostingsFormat;
+import org.apache.lucene.codecs.block.BlockPostingsFormat;
import org.apache.lucene.codecs.bloom.TestBloomFilteredLucene40Postings;
import org.apache.lucene.codecs.lucene40.Lucene40Codec;
import org.apache.lucene.codecs.lucene40.Lucene40PostingsFormat;
@@ -94,6 +95,7 @@ public class RandomCodec extends Lucene4
add(avoidCodecs,
new Lucene40PostingsFormat(minItemsPerBlock, maxItemsPerBlock),
+ new BlockPostingsFormat(minItemsPerBlock, maxItemsPerBlock),
new DirectPostingsFormat(LuceneTestCase.rarely(random) ? 1 : (LuceneTestCase.rarely(random) ? Integer.MAX_VALUE : maxItemsPerBlock),
LuceneTestCase.rarely(random) ? 1 : (LuceneTestCase.rarely(random) ? Integer.MAX_VALUE : lowFreqCutoff)),
new Pulsing40PostingsFormat(1 + random.nextInt(20), minItemsPerBlock, maxItemsPerBlock),
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/store/MockIndexInputWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/store/MockIndexInputWrapper.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/store/MockIndexInputWrapper.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/store/MockIndexInputWrapper.java Sat Aug 25 10:06:07 2012
@@ -68,7 +68,7 @@ public class MockIndexInputWrapper exten
public MockIndexInputWrapper clone() {
ensureOpen();
dir.inputCloneCount.incrementAndGet();
- IndexInput iiclone = (IndexInput) delegate.clone();
+ IndexInput iiclone = delegate.clone();
MockIndexInputWrapper clone = new MockIndexInputWrapper(dir, name, iiclone);
clone.isClone = true;
// Pending resolution on LUCENE-686 we may want to
Modified: lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/util/LuceneTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/util/LuceneTestCase.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/util/LuceneTestCase.java (original)
+++ lucene/dev/branches/lucene3312/lucene/test-framework/src/java/org/apache/lucene/util/LuceneTestCase.java Sat Aug 25 10:06:07 2012
@@ -310,9 +310,7 @@ public abstract class LuceneTestCase ext
"MockFixedIntBlock",
"MockVariableIntBlock",
"MockSep",
- "MockRandom",
- "For",
- "PFor"
+ "MockRandom"
));
// -----------------------------------------------------------------
@@ -767,6 +765,11 @@ public abstract class LuceneTestCase ext
} else {
logmp.setMergeFactor(_TestUtil.nextInt(r, 10, 50));
}
+ logmp.setUseCompoundFile(r.nextBoolean());
+ logmp.setNoCFSRatio(0.1 + r.nextDouble()*0.8);
+ if (rarely()) {
+ logmp.setMaxCFSSegmentSizeMB(0.2 + r.nextDouble() * 2.0);
+ }
return logmp;
}
@@ -793,6 +796,9 @@ public abstract class LuceneTestCase ext
}
tmp.setUseCompoundFile(r.nextBoolean());
tmp.setNoCFSRatio(0.1 + r.nextDouble()*0.8);
+ if (rarely()) {
+ tmp.setMaxCFSSegmentSizeMB(0.2 + r.nextDouble() * 2.0);
+ }
tmp.setReclaimDeletesWeight(r.nextDouble()*4);
return tmp;
}
Modified: lucene/dev/branches/lucene3312/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/CHANGES.txt?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/CHANGES.txt (original)
+++ lucene/dev/branches/lucene3312/solr/CHANGES.txt Sat Aug 25 10:06:07 2012
@@ -78,6 +78,14 @@ Bug Fixes
when requesting multiple stats.facet fields.
(Roman Kliewer via hossman)
+* SOLR-3743: Fixed issues with atomic updates and optimistic concurrency in
+ conjunction with stored copyField targets by making real-time get never
+ return copyField targets. (yonik)
+
+* SOLR-3746: Proper error reporting if updateLog is configured w/o necessary
+ "_version_" field in schema.xml (hossman)
+
+
Other Changes
----------------------
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/doc-files/tutorial.html
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/doc-files/tutorial.html?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/doc-files/tutorial.html (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/doc-files/tutorial.html Sat Aug 25 10:06:07 2012
@@ -82,7 +82,7 @@ Please run the browser showing this tuto
</strong>
</p>
<p>
-Begin by unziping the Solr release and changing your working directory
+Begin by unzipping the Solr release and changing your working directory
to be the "<span class="codefrag">example</span>" directory. (Note that the base directory name may vary with the version of Solr downloaded.) For example, with a shell in UNIX, Cygwin, or MacOS:
</p>
<pre class="code">
@@ -540,7 +540,7 @@ most languages.
and stop word removal, as well as split compound words, you can use the
<a href="http://localhost:8983/solr/#/collection1/schema-browser?type=text_en_splitting"><span class="codefrag">text_en_splitting</span> fieldType</a> instead.
Go ahead and edit the <span class="codefrag">schema.xml</span> in the
- <span class="codefrag">solr/example/solr/conf</span> directory,
+ <span class="codefrag">solr/example/solr/collection1/conf</span> directory,
to use the <span class="codefrag">text_en_splitting</span> fieldType for
the <span class="codefrag">text</span> and
<span class="codefrag">features</span> fields like so:
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/analysis/LegacyHTMLStripCharFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/analysis/LegacyHTMLStripCharFilter.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/analysis/LegacyHTMLStripCharFilter.java (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/analysis/LegacyHTMLStripCharFilter.java Sat Aug 25 10:06:07 2012
@@ -103,7 +103,7 @@ public class LegacyHTMLStripCharFilter e
return ch;
}
numRead++;
- return in.read();
+ return input.read();
}
private int nextSkipWS() throws IOException {
@@ -118,7 +118,7 @@ public class LegacyHTMLStripCharFilter e
return pushed.charAt(len-1);
}
numRead++;
- int ch = in.read();
+ int ch = input.read();
push(ch);
return ch;
}
@@ -180,11 +180,11 @@ public class LegacyHTMLStripCharFilter e
private void saveState() throws IOException {
lastMark = numRead;
- in.mark(readAheadLimit);
+ input.mark(readAheadLimit);
}
private void restoreState() throws IOException {
- in.reset();
+ input.reset();
pushed.setLength(0);
}
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/cloud/ZkController.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/cloud/ZkController.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/cloud/ZkController.java (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/cloud/ZkController.java Sat Aug 25 10:06:07 2012
@@ -51,7 +51,6 @@ import org.apache.solr.core.Config;
import org.apache.solr.core.CoreContainer;
import org.apache.solr.core.CoreDescriptor;
import org.apache.solr.core.SolrCore;
-import org.apache.solr.handler.component.HttpShardHandlerFactory;
import org.apache.solr.handler.component.ShardHandler;
import org.apache.solr.update.UpdateLog;
@@ -113,18 +112,14 @@ public final class ZkController {
private final String nodeName; // example: 127.0.0.1:54065_solr
private final String baseURL; // example: http://127.0.0.1:54065/solr
-
private LeaderElector overseerElector;
-
- // for now, this can be null in tests, in which case recovery will be inactive, and other features
- // may accept defaults or use mocks rather than pulling things from a CoreContainer
private CoreContainer cc;
protected volatile Overseer overseer;
/**
- * @param cc if null, recovery will not be enabled
+ * @param cc
* @param zkServerAddress
* @param zkClientTimeout
* @param zkClientConnectTimeout
@@ -139,6 +134,7 @@ public final class ZkController {
public ZkController(final CoreContainer cc, String zkServerAddress, int zkClientTimeout, int zkClientConnectTimeout, String localHost, String locaHostPort,
String localHostContext, final CurrentCoreDescriptorProvider registerOnReconnect) throws InterruptedException,
TimeoutException, IOException {
+ if (cc == null) throw new IllegalArgumentException("CoreContainer cannot be null.");
this.cc = cc;
if (localHostContext.contains("/")) {
throw new IllegalArgumentException("localHostContext ("
@@ -165,13 +161,8 @@ public final class ZkController {
//Overseer.createClientNodes(zkClient, getNodeName());
ShardHandler shardHandler;
String adminPath;
- if (cc == null) {
- shardHandler = new HttpShardHandlerFactory().getShardHandler();
- adminPath = "/admin/cores";
- } else {
- shardHandler = cc.getShardHandlerFactory().getShardHandler();
- adminPath = cc.getAdminPath();
- }
+ shardHandler = cc.getShardHandlerFactory().getShardHandler();
+ adminPath = cc.getAdminPath();
ZkController.this.overseer = new Overseer(shardHandler, adminPath, zkStateReader);
ElectionContext context = new OverseerElectionContext(zkClient, overseer, getNodeName());
overseerElector.joinElection(context);
@@ -354,13 +345,8 @@ public final class ZkController {
ShardHandler shardHandler;
String adminPath;
- if (cc == null) {
- shardHandler = new HttpShardHandlerFactory().getShardHandler();
- adminPath = "/admin/cores";
- } else {
- shardHandler = cc.getShardHandlerFactory().getShardHandler();
- adminPath = cc.getAdminPath();
- }
+ shardHandler = cc.getShardHandlerFactory().getShardHandler();
+ adminPath = cc.getAdminPath();
overseerElector = new LeaderElector(zkClient);
this.overseer = new Overseer(shardHandler, adminPath, zkStateReader);
@@ -557,46 +543,42 @@ public final class ZkController {
SolrCore core = null;
- if (cc != null) { // CoreContainer only null in tests
- try {
- core = cc.getCore(desc.getName());
+ try {
+ core = cc.getCore(desc.getName());
- // recover from local transaction log and wait for it to complete before
- // going active
- // TODO: should this be moved to another thread? To recoveryStrat?
- // TODO: should this actually be done earlier, before (or as part of)
- // leader election perhaps?
- // TODO: if I'm the leader, ensure that a replica that is trying to recover waits until I'm
- // active (or don't make me the
- // leader until my local replay is done.
-
- UpdateLog ulog = core.getUpdateHandler().getUpdateLog();
- if (!core.isReloaded() && ulog != null) {
- Future<UpdateLog.RecoveryInfo> recoveryFuture = core.getUpdateHandler()
- .getUpdateLog().recoverFromLog();
- if (recoveryFuture != null) {
- recoveryFuture.get(); // NOTE: this could potentially block for
- // minutes or more!
- // TODO: public as recovering in the mean time?
- // TODO: in the future we could do peerync in parallel with recoverFromLog
- } else {
- log.info("No LogReplay needed for core="+core.getName() + " baseURL=" + baseUrl);
- }
- }
-
- boolean didRecovery = checkRecovery(coreName, desc, recoverReloadedCores, isLeader, cloudDesc,
- collection, coreZkNodeName, shardId, leaderProps, core, cc);
- if (!didRecovery) {
- publish(desc, ZkStateReader.ACTIVE);
- }
- } finally {
- if (core != null) {
- core.close();
+ // recover from local transaction log and wait for it to complete before
+ // going active
+ // TODO: should this be moved to another thread? To recoveryStrat?
+ // TODO: should this actually be done earlier, before (or as part of)
+ // leader election perhaps?
+ // TODO: if I'm the leader, ensure that a replica that is trying to recover waits until I'm
+ // active (or don't make me the
+ // leader until my local replay is done.
+
+ UpdateLog ulog = core.getUpdateHandler().getUpdateLog();
+ if (!core.isReloaded() && ulog != null) {
+ Future<UpdateLog.RecoveryInfo> recoveryFuture = core.getUpdateHandler()
+ .getUpdateLog().recoverFromLog();
+ if (recoveryFuture != null) {
+ recoveryFuture.get(); // NOTE: this could potentially block for
+ // minutes or more!
+ // TODO: public as recovering in the mean time?
+ // TODO: in the future we could do peerync in parallel with recoverFromLog
+ } else {
+ log.info("No LogReplay needed for core="+core.getName() + " baseURL=" + baseUrl);
}
}
- } else {
- publish(desc, ZkStateReader.ACTIVE);
+
+ boolean didRecovery = checkRecovery(coreName, desc, recoverReloadedCores, isLeader, cloudDesc,
+ collection, coreZkNodeName, shardId, leaderProps, core, cc);
+ if (!didRecovery) {
+ publish(desc, ZkStateReader.ACTIVE);
+ }
+ } finally {
+ if (core != null) {
+ core.close();
+ }
}
// make sure we have an update cluster state right away
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/core/SolrCore.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/core/SolrCore.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/core/SolrCore.java (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/core/SolrCore.java Sat Aug 25 10:06:07 2012
@@ -479,6 +479,13 @@ public final class SolrCore implements S
} catch (SolrException e) {
throw e;
} catch (Exception e) {
+ // The JVM likes to wrap our helpful SolrExceptions in things like
+ // "InvocationTargetException" that have no useful getMessage
+ if (null != e.getCause() && e.getCause() instanceof SolrException) {
+ SolrException inner = (SolrException) e.getCause();
+ throw inner;
+ }
+
throw new SolrException(SolrException.ErrorCode.SERVER_ERROR,"Error Instantiating "+msg+", "+className+ " failed to instantiate " +cast.getName(), e);
}
}
@@ -502,6 +509,13 @@ public final class SolrCore implements S
} catch (SolrException e) {
throw e;
} catch (Exception e) {
+ // The JVM likes to wrap our helpful SolrExceptions in things like
+ // "InvocationTargetException" that have no useful getMessage
+ if (null != e.getCause() && e.getCause() instanceof SolrException) {
+ SolrException inner = (SolrException) e.getCause();
+ throw inner;
+ }
+
throw new SolrException(SolrException.ErrorCode.SERVER_ERROR,"Error Instantiating "+msg+", "+className+ " failed to instantiate " + UpdateHandler.class.getName(), e);
}
}
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java Sat Aug 25 10:06:07 2012
@@ -257,6 +257,7 @@ public class RealTimeGetComponent extend
SchemaField sf = schema.getFieldOrNull(f.name());
Object val = null;
if (sf != null) {
+ if (!sf.stored() || schema.isCopyFieldTarget(sf)) continue;
val = sf.getType().toObject(f); // object or external string?
} else {
val = f.stringValue();
@@ -279,6 +280,10 @@ public class RealTimeGetComponent extend
Object existing = out.get(f.name());
if (existing == null) {
SchemaField sf = schema.getFieldOrNull(f.name());
+
+ // don't return copyField targets
+ if (sf != null && schema.isCopyFieldTarget(sf)) continue;
+
if (sf != null && sf.multiValued()) {
List<Object> vals = new ArrayList<Object>();
vals.add( f );
@@ -302,7 +307,7 @@ public class RealTimeGetComponent extend
// copy the stored fields only
StoredDocument out = new StoredDocument();
for (IndexableField f : doc.getFields()) {
- if (f.fieldType().stored()) {
+ if (f.fieldType().stored() ) {
out.add((StorableField) f);
}
}
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/UpdateLog.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/UpdateLog.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/UpdateLog.java (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/UpdateLog.java Sat Aug 25 10:06:07 2012
@@ -211,8 +211,13 @@ public class UpdateLog implements Plugin
newestLogsOnStartup.addFirst(ll);
if (newestLogsOnStartup.size() >= 2) break;
}
-
- versionInfo = new VersionInfo(this, 256);
+
+ try {
+ versionInfo = new VersionInfo(this, 256);
+ } catch (SolrException e) {
+ throw new SolrException(SolrException.ErrorCode.SERVER_ERROR,
+ "Unable to use updateLog: " + e.getMessage(), e);
+ }
// TODO: these startingVersions assume that we successfully recover from all non-complete tlogs.
UpdateLog.RecentUpdates startingUpdates = getRecentUpdates();
Modified: lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/VersionInfo.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/VersionInfo.java?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/VersionInfo.java (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/java/org/apache/solr/update/VersionInfo.java Sat Aug 25 10:06:07 2012
@@ -28,6 +28,7 @@ import org.apache.lucene.util.BitUtil;
import org.apache.lucene.util.BytesRef;
import org.apache.solr.common.SolrException;
import org.apache.solr.core.SolrCore;
+import org.apache.solr.schema.IndexSchema;
import org.apache.solr.schema.SchemaField;
import org.apache.solr.search.SolrIndexSearcher;
import org.apache.solr.util.RefCounted;
@@ -41,10 +42,45 @@ public class VersionInfo {
private SchemaField idField;
final ReadWriteLock lock = new ReentrantReadWriteLock(true);
+ /**
+ * Gets and returns the {@link #VERSION_FIELD} from the specified
+ * schema, after verifying that it is indexed, stored, and single-valued.
+ * If any of these pre-conditions are not met, it throws a SolrException
+ * with a user suitable message indicating the problem.
+ */
+ public static SchemaField getAndCheckVersionField(IndexSchema schema)
+ throws SolrException {
+ final String errPrefix = VERSION_FIELD + "field must exist in schema, using indexed=\"true\" stored=\"true\" and multiValued=\"false\"";
+ SchemaField sf = schema.getFieldOrNull(VERSION_FIELD);
+
+ if (null == sf) {
+ throw new SolrException
+ (SolrException.ErrorCode.SERVER_ERROR,
+ errPrefix + " (" + VERSION_FIELD + " does not exist)");
+ }
+ if ( !sf.indexed() ) {
+ throw new SolrException
+ (SolrException.ErrorCode.SERVER_ERROR,
+ errPrefix + " (" + VERSION_FIELD + " is not indexed");
+ }
+ if ( !sf.stored() ) {
+ throw new SolrException
+ (SolrException.ErrorCode.SERVER_ERROR,
+ errPrefix + " (" + VERSION_FIELD + " is not stored");
+ }
+ if ( sf.multiValued() ) {
+ throw new SolrException
+ (SolrException.ErrorCode.SERVER_ERROR,
+ errPrefix + " (" + VERSION_FIELD + " is not multiValued");
+ }
+
+ return sf;
+ }
+
public VersionInfo(UpdateLog ulog, int nBuckets) {
this.ulog = ulog;
SolrCore core = ulog.uhandler.core;
- versionField = core.getSchema().getFieldOrNull(VERSION_FIELD);
+ versionField = getAndCheckVersionField(core.getSchema());
idField = core.getSchema().getUniqueKeyField();
buckets = new VersionBucket[ BitUtil.nextHighestPowerOfTwo(nBuckets) ];
for (int i=0; i<buckets.length; i++) {
Modified: lucene/dev/branches/lucene3312/solr/core/src/test-files/solr/collection1/conf/schema15.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3312/solr/core/src/test-files/solr/collection1/conf/schema15.xml?rev=1377246&r1=1377245&r2=1377246&view=diff
==============================================================================
--- lucene/dev/branches/lucene3312/solr/core/src/test-files/solr/collection1/conf/schema15.xml (original)
+++ lucene/dev/branches/lucene3312/solr/core/src/test-files/solr/collection1/conf/schema15.xml Sat Aug 25 10:06:07 2012
@@ -425,7 +425,7 @@
<field name="signatureField" type="string" indexed="true" stored="false"/>
<field name="uuid" type="uuid" stored="true" />
<field name="name" type="nametext" indexed="true" stored="true"/>
- <field name="text" type="text" indexed="true" stored="false"/>
+ <field name="text" type="text" indexed="true" stored="false" multiValued="true" />
<field name="subject" type="text" indexed="true" stored="true"/>
<field name="title" type="nametext" indexed="true" stored="true"/>
<field name="weight" type="float" indexed="true" stored="true"/>
@@ -522,6 +522,9 @@
<!-- for versioning -->
<field name="_version_" type="long" indexed="true" stored="true"/>
+
+ <field name="copyfield_source" type="string" indexed="true" stored="true" multiValued="true"/>
+
<dynamicField name="*_coordinate" type="tdouble" indexed="true" stored="false"/>
@@ -587,5 +590,8 @@
<copyField source="title" dest="text"/>
<copyField source="subject" dest="text"/>
+
+ <copyField source="copyfield_source" dest="text"/>
+ <copyField source="copyfield_source" dest="copyfield_dest_ss"/> <!-- copyField into another stored copyField - not best practice -->
</schema>