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 us...@apache.org on 2010/03/15 10:35:11 UTC
svn commit: r923129 - in /lucene/solr/branches/solr: ./
src/java/org/apache/solr/core/ src/test/org/apache/solr/analysis/
src/test/test-files/solr/conf/
Author: uschindler
Date: Mon Mar 15 09:35:10 2010
New Revision: 923129
URL: http://svn.apache.org/viewvc?rev=923129&view=rev
Log:
SOLR-1677: Add more lenient support for version numbers (also 'V.V') format and add a system property for tests (set by build.xml), that specifies the current lucene version.
TODO: Update all solrconfig.xml files to add the '3.1' luceneMatchVersion.
Modified:
lucene/solr/branches/solr/build.xml
lucene/solr/branches/solr/src/java/org/apache/solr/core/Config.java
lucene/solr/branches/solr/src/test/org/apache/solr/analysis/BaseTokenTestCase.java
lucene/solr/branches/solr/src/test/org/apache/solr/analysis/TestLuceneMatchVersion.java
lucene/solr/branches/solr/src/test/test-files/solr/conf/schema-luceneMatchVersion.xml
lucene/solr/branches/solr/src/test/test-files/solr/conf/solrconfig.xml
Modified: lucene/solr/branches/solr/build.xml
URL: http://svn.apache.org/viewvc/lucene/solr/branches/solr/build.xml?rev=923129&r1=923128&r2=923129&view=diff
==============================================================================
--- lucene/solr/branches/solr/build.xml (original)
+++ lucene/solr/branches/solr/build.xml Mon Mar 15 09:35:10 2010
@@ -35,6 +35,9 @@
<property name="clover.report.dir" location="${dest}/tests/clover/reports"/>
<property name="junit.details" value="1"/>
+
+ <!-- change this together with the default and test's solrconfig.xml after starting a new development branch: -->
+ <property name="tests.luceneMatchVersion" value="3.1"/>
<available
property="clover.present"
@@ -394,6 +397,7 @@
dir="src/test/test-files/"
>
<sysproperty key="java.util.logging.config.file" value="${common.dir}/testlogging.properties"/>
+ <sysproperty key="tests.luceneMatchVersion" value="${tests.luceneMatchVersion}"/>
<jvmarg line="${args}"/>
<formatter type="brief" usefile="false" if="junit.details"/>
<classpath refid="test.run.classpath"/>
Modified: lucene/solr/branches/solr/src/java/org/apache/solr/core/Config.java
URL: http://svn.apache.org/viewvc/lucene/solr/branches/solr/src/java/org/apache/solr/core/Config.java?rev=923129&r1=923128&r2=923129&view=diff
==============================================================================
--- lucene/solr/branches/solr/src/java/org/apache/solr/core/Config.java (original)
+++ lucene/solr/branches/solr/src/java/org/apache/solr/core/Config.java Mon Mar 15 09:35:10 2010
@@ -284,16 +284,20 @@ public class Config {
private static final AtomicBoolean versionWarningAlreadyLogged = new AtomicBoolean(false);
- public static final Version parseLuceneVersionString(String matchVersion) {
- matchVersion = matchVersion.toUpperCase();
+ public static final Version parseLuceneVersionString(final String matchVersion) {
+ String parsedMatchVersion = matchVersion.toUpperCase();
+
+ // be lenient with the supplied version parameter
+ parsedMatchVersion = parsedMatchVersion.replaceFirst("^(\\d)\\.(\\d)$", "LUCENE_$1$2");
final Version version;
try {
- version = Version.valueOf(matchVersion);
+ version = Version.valueOf(parsedMatchVersion);
} catch (IllegalArgumentException iae) {
throw new SolrException(SolrException.ErrorCode.SERVER_ERROR,
"Invalid luceneMatchVersion '" + matchVersion +
- "' property, valid values are: " + Arrays.toString(Version.values()), iae, false);
+ "', valid values are: " + Arrays.toString(Version.values()) +
+ " or a string in format 'V.V'", iae, false);
}
if (version == Version.LUCENE_CURRENT && !versionWarningAlreadyLogged.getAndSet(true)) {
Modified: lucene/solr/branches/solr/src/test/org/apache/solr/analysis/BaseTokenTestCase.java
URL: http://svn.apache.org/viewvc/lucene/solr/branches/solr/src/test/org/apache/solr/analysis/BaseTokenTestCase.java?rev=923129&r1=923128&r2=923129&view=diff
==============================================================================
--- lucene/solr/branches/solr/src/test/org/apache/solr/analysis/BaseTokenTestCase.java (original)
+++ lucene/solr/branches/solr/src/test/org/apache/solr/analysis/BaseTokenTestCase.java Mon Mar 15 09:35:10 2010
@@ -37,7 +37,7 @@ import org.apache.lucene.analysis.tokena
public abstract class BaseTokenTestCase extends TestCase
{
protected static final Map<String,String> DEFAULT_VERSION_PARAM =
- Collections.singletonMap("luceneMatchVersion", "LUCENE_30");
+ Collections.singletonMap("luceneMatchVersion", System.getProperty("tests.luceneMatchVersion", "LUCENE_CURRENT"));
// some helpers to test Analyzers and TokenStreams:
// these are taken from Lucene's BaseTokenStreamTestCase
Modified: lucene/solr/branches/solr/src/test/org/apache/solr/analysis/TestLuceneMatchVersion.java
URL: http://svn.apache.org/viewvc/lucene/solr/branches/solr/src/test/org/apache/solr/analysis/TestLuceneMatchVersion.java?rev=923129&r1=923128&r2=923129&view=diff
==============================================================================
--- lucene/solr/branches/solr/src/test/org/apache/solr/analysis/TestLuceneMatchVersion.java (original)
+++ lucene/solr/branches/solr/src/test/org/apache/solr/analysis/TestLuceneMatchVersion.java Mon Mar 15 09:35:10 2010
@@ -20,6 +20,7 @@ import java.io.StringReader;
import java.lang.reflect.Field;
import org.apache.lucene.analysis.standard.StandardTokenizer;
+import org.apache.solr.core.Config;
import org.apache.solr.schema.IndexSchema;
import org.apache.solr.schema.FieldType;
import org.apache.solr.util.AbstractSolrTestCase;
@@ -42,7 +43,9 @@ public class TestLuceneMatchVersion exte
return "solrconfig.xml";
}
- public static final Version DEFAULT_VERSION = Version.LUCENE_30;
+ // this must match the solrconfig.xml version for this test
+ public static final Version DEFAULT_VERSION =
+ Config.parseLuceneVersionString(System.getProperty("tests.luceneMatchVersion", "LUCENE_CURRENT"));
public void testStandardTokenizerVersions() throws Exception {
assertEquals(DEFAULT_VERSION, solrConfig.luceneMatchVersion);
Modified: lucene/solr/branches/solr/src/test/test-files/solr/conf/schema-luceneMatchVersion.xml
URL: http://svn.apache.org/viewvc/lucene/solr/branches/solr/src/test/test-files/solr/conf/schema-luceneMatchVersion.xml?rev=923129&r1=923128&r2=923129&view=diff
==============================================================================
--- lucene/solr/branches/solr/src/test/test-files/solr/conf/schema-luceneMatchVersion.xml (original)
+++ lucene/solr/branches/solr/src/test/test-files/solr/conf/schema-luceneMatchVersion.xml Mon Mar 15 09:35:10 2010
@@ -22,7 +22,7 @@
<tokenizer class="solr.StandardTokenizerFactory" luceneMatchVersion="LUCENE_20"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.StopFilterFactory" luceneMatchVersion="LUCENE_24"/>
+ <filter class="solr.StopFilterFactory" luceneMatchVersion="2.4"/>
<filter class="solr.EnglishPorterFilterFactory"/>
</analyzer>
</fieldtype>
Modified: lucene/solr/branches/solr/src/test/test-files/solr/conf/solrconfig.xml
URL: http://svn.apache.org/viewvc/lucene/solr/branches/solr/src/test/test-files/solr/conf/solrconfig.xml?rev=923129&r1=923128&r2=923129&view=diff
==============================================================================
--- lucene/solr/branches/solr/src/test/test-files/solr/conf/solrconfig.xml (original)
+++ lucene/solr/branches/solr/src/test/test-files/solr/conf/solrconfig.xml Mon Mar 15 09:35:10 2010
@@ -45,7 +45,7 @@
not be changed if replication is in use. -->
<dataDir>${solr.data.dir:./solr/data}</dataDir>
- <luceneMatchVersion>LUCENE_30</luceneMatchVersion>
+ <luceneMatchVersion>3.1</luceneMatchVersion>
<indexDefaults>
<!-- Values here affect all index writers and act as a default