You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2010/10/26 10:15:36 UTC
svn commit: r1027396 [4/4] - in /lucene/dev/branches/docvalues: ./ lucene/
lucene/contrib/
lucene/contrib/highlighter/src/java/org/apache/lucene/search/highlight/
lucene/contrib/highlighter/src/test/
lucene/contrib/instantiated/src/test/org/apache/luce...
Modified: lucene/dev/branches/docvalues/solr/src/java/org/apache/solr/spelling/suggest/Suggester.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/java/org/apache/solr/spelling/suggest/Suggester.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/java/org/apache/solr/spelling/suggest/Suggester.java (original)
+++ lucene/dev/branches/docvalues/solr/src/java/org/apache/solr/spelling/suggest/Suggester.java Tue Oct 26 08:15:33 2010
@@ -76,7 +76,7 @@ public class Suggester extends SolrSpell
LOG.info("init: " + config);
String name = super.init(config, core);
threshold = config.get(THRESHOLD_TOKEN_FREQUENCY) == null ? 0.0f
- : Float.valueOf((String)config.get(THRESHOLD_TOKEN_FREQUENCY));
+ : (Float)config.get(THRESHOLD_TOKEN_FREQUENCY);
sourceLocation = (String) config.get(LOCATION);
field = (String)config.get(FIELD);
lookupImpl = (String)config.get(LOOKUP_IMPL);
@@ -129,20 +129,10 @@ public class Suggester extends SolrSpell
if (lookup.load(storeDir)) {
return; // loaded ok
}
+ LOG.debug("load failed, need to build Lookup again");
}
- // dictionary based on the current index may need refreshing
- if (dictionary instanceof HighFrequencyDictionary) {
- reader = reader.reopen();
- dictionary = new HighFrequencyDictionary(reader, field, threshold);
- try {
- lookup.build(dictionary);
- if (storeDir != null) {
- lookup.store(storeDir);
- }
- } catch (Exception e) {
- throw new IOException(e);
- }
- }
+ // loading was unsuccessful - build it again
+ build(core, searcher);
}
public void add(String query, int numHits) {
Propchange: lucene/dev/branches/docvalues/solr/src/maven/solr-core-pom.xml.template
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 26 08:15:33 2010
@@ -1,5 +1,5 @@
-/lucene/dev/branches/branch_3x/solr/src/maven/solr-core-pom.xml.template:949730,961612,979161,980654,982195,987811,988512,1025544
+/lucene/dev/branches/branch_3x/solr/src/maven/solr-core-pom.xml.template:949730,961612,979161,980654,982195,987811,988512,1025544,1026614
/lucene/dev/branches/preflexfixes/solr/src/maven/solr-core-pom.xml.template:967125-979432
-/lucene/dev/trunk/solr/src/maven/solr-core-pom.xml.template:1021634-1025711
+/lucene/dev/trunk/solr/src/maven/solr-core-pom.xml.template:1021634-1027393
/lucene/solr/branches/newtrunk/solr/src/maven/solr-core-pom.xml.template:924462
/lucene/solr/trunk/src/maven/solr-core-pom.xml.template:922950-923910,923912-925091
Propchange: lucene/dev/branches/docvalues/solr/src/maven/solr-solrj-pom.xml.template
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 26 08:15:33 2010
@@ -1,5 +1,5 @@
-/lucene/dev/branches/branch_3x/solr/src/maven/solr-solrj-pom.xml.template:949730,961612,979161,980654,982195,987811,988512,1025544
+/lucene/dev/branches/branch_3x/solr/src/maven/solr-solrj-pom.xml.template:949730,961612,979161,980654,982195,987811,988512,1025544,1026614
/lucene/dev/branches/preflexfixes/solr/src/maven/solr-solrj-pom.xml.template:967125-979432
-/lucene/dev/trunk/solr/src/maven/solr-solrj-pom.xml.template:1021634-1025711
+/lucene/dev/trunk/solr/src/maven/solr-solrj-pom.xml.template:1021634-1027393
/lucene/solr/branches/newtrunk/solr/src/maven/solr-solrj-pom.xml.template:924462
/lucene/solr/trunk/src/maven/solr-solrj-pom.xml.template:922950-923910,923912-925091
Propchange: lucene/dev/branches/docvalues/solr/src/solrj/org/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 26 08:15:33 2010
@@ -1,5 +1,5 @@
-/lucene/dev/branches/branch_3x/solr/src/solrj/org:949730,961612,979161,980654,982195,987811,988512,1025544
+/lucene/dev/branches/branch_3x/solr/src/solrj/org:949730,961612,979161,980654,982195,987811,988512,1025544,1026614
/lucene/dev/branches/preflexfixes/solr/src/solrj/org:967125-979432
-/lucene/dev/trunk/solr/src/solrj/org:1021634-1025711
+/lucene/dev/trunk/solr/src/solrj/org:1021634-1027393
/lucene/solr/branches/newtrunk/solr/src/solrj/org:924462
/lucene/solr/trunk/src/solrj/org:922950-923910,923912-925091
Modified: lucene/dev/branches/docvalues/solr/src/solrj/org/apache/solr/client/solrj/impl/StreamingUpdateSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/solrj/org/apache/solr/client/solrj/impl/StreamingUpdateSolrServer.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/solrj/org/apache/solr/client/solrj/impl/StreamingUpdateSolrServer.java (original)
+++ lucene/dev/branches/docvalues/solr/src/solrj/org/apache/solr/client/solrj/impl/StreamingUpdateSolrServer.java Tue Oct 26 08:15:33 2010
@@ -244,11 +244,14 @@ public class StreamingUpdateSolrServer e
lock = new CountDownLatch(1);
try {
// Wait until no runners are running
- Runner runner = runners.peek();
- while( runner != null ) {
+ for(;;) {
+ Runner runner;
+ synchronized(runners) {
+ runner = runners.peek();
+ }
+ if (runner == null) break;
runner.runnerLock.lock();
runner.runnerLock.unlock();
- runner = runners.peek();
}
} finally {
lock.countDown();
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrInfoMBeanTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrInfoMBeanTest.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrInfoMBeanTest.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrInfoMBeanTest.java Tue Oct 26 08:15:33 2010
@@ -24,6 +24,7 @@ import org.apache.solr.handler.component
import org.apache.solr.handler.component.SearchHandler;
import org.apache.solr.highlight.DefaultSolrHighlighter;
import org.apache.solr.search.LRUCache;
+import org.junit.BeforeClass;
import org.junit.Ignore;
import java.io.File;
@@ -35,8 +36,13 @@ import java.util.List;
/**
* A simple test used to increase code coverage for some standard things...
*/
-public class SolrInfoMBeanTest extends LuceneTestCase
+public class SolrInfoMBeanTest extends SolrTestCaseJ4
{
+ @BeforeClass
+ public static void beforeClass() throws Exception {
+ initCore("solrconfig.xml","schema.xml");
+ }
+
/**
* Gets a list of everything we can find in the classpath and makes sure it has
* a name, description, etc...
@@ -90,7 +96,7 @@ public class SolrInfoMBeanTest extends L
private static List<Class> getClassesForPackage(String pckgname) throws Exception {
ArrayList<File> directories = new ArrayList<File>();
- ClassLoader cld = Thread.currentThread().getContextClassLoader();
+ ClassLoader cld = h.getCore().getResourceLoader().getClassLoader();
String path = pckgname.replace('.', '/');
Enumeration<URL> resources = cld.getResources(path);
while (resources.hasMoreElements()) {
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrTestCaseJ4.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrTestCaseJ4.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrTestCaseJ4.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/SolrTestCaseJ4.java Tue Oct 26 08:15:33 2010
@@ -111,8 +111,7 @@ public abstract class SolrTestCaseJ4 ext
if (endNumOpens-numOpens != endNumCloses-numCloses) {
String msg = "ERROR: SolrIndexSearcher opens=" + (endNumOpens-numOpens) + " closes=" + (endNumCloses-numCloses);
log.error(msg);
- // TODO: make this fail if we manage to clean up
- // fail(msg);
+ fail(msg);
}
}
Propchange: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/client/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 26 08:15:33 2010
@@ -1,5 +1,5 @@
-/lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/client:949730,961612,979161,980654,982195,987811,988512,1025544
+/lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/client:949730,961612,979161,980654,982195,987811,988512,1025544,1026614
/lucene/dev/branches/preflexfixes/solr/src/test/org/apache/solr/client:967125-979432
-/lucene/dev/trunk/solr/src/test/org/apache/solr/client:1021634-1025711
+/lucene/dev/trunk/solr/src/test/org/apache/solr/client:1021634-1027393
/lucene/solr/branches/newtrunk/solr/src/test/org/apache/solr/client:924462
/lucene/solr/trunk/src/test/org/apache/solr/client:922950-923910,923912-925091
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/client/solrj/TestLBHttpSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/client/solrj/TestLBHttpSolrServer.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/client/solrj/TestLBHttpSolrServer.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/client/solrj/TestLBHttpSolrServer.java Tue Oct 26 08:15:33 2010
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj;
import junit.framework.Assert;
import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.apache.commons.io.FileUtils;
import org.apache.lucene.util.LuceneTestCase;
import org.apache.solr.SolrTestCaseJ4;
@@ -49,7 +50,8 @@ public class TestLBHttpSolrServer extend
public void setUp() throws Exception {
super.setUp();
- httpClient = new HttpClient();
+ httpClient = new HttpClient(new MultiThreadedHttpConnectionManager());
+
httpClient.getParams().setParameter("http.connection.timeout", new Integer(1000));
for (int i = 0; i < solr.length; i++) {
solr[i] = new SolrInstance("solr" + i, 0);
@@ -153,6 +155,43 @@ public class TestLBHttpSolrServer extend
Assert.assertEquals("solr0", name);
}
+ public void testReliability() throws Exception {
+ String[] s = new String[solr.length];
+ for (int i = 0; i < solr.length; i++) {
+ s[i] = solr[i].getUrl();
+ }
+ HttpClient myHttpClient = new HttpClient(new MultiThreadedHttpConnectionManager());
+
+ myHttpClient.getParams().setParameter("http.connection.timeout", new Integer(100));
+ myHttpClient.getParams().setParameter("http.socket.timeout", new Integer(100));
+ LBHttpSolrServer lbHttpSolrServer = new LBHttpSolrServer(myHttpClient, s);
+ lbHttpSolrServer.setAliveCheckInterval(500);
+
+ // Kill a server and test again
+ solr[1].jetty.stop();
+ solr[1].jetty = null;
+
+ // query the servers
+ for (String value : s)
+ lbHttpSolrServer.query(new SolrQuery("*:*"));
+
+ // Start the killed server once again
+ solr[1].startJetty();
+ // Wait for the alive check to complete
+ waitForServer(30000, lbHttpSolrServer, 3, "solr1");
+ }
+
+ // wait maximum ms for serverName to come back up
+ private void waitForServer(int maximum, LBHttpSolrServer server, int nServers, String serverName) throws Exception {
+ long endTime = System.currentTimeMillis() + maximum;
+ while (System.currentTimeMillis() < endTime) {
+ QueryResponse resp = server.query(new SolrQuery("*:*"));
+ String name = resp.getResults().get(0).getFieldValue("name").toString();
+ if (name.equals(serverName))
+ return;
+ }
+ }
+
private class SolrInstance {
String name;
File homeDir;
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestConfig.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestConfig.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestConfig.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestConfig.java Tue Oct 26 08:15:33 2010
@@ -130,10 +130,12 @@ public class TestConfig extends SolrTest
return writer;
}
}
-
- IndexWriter writer = new ExposeWriterHandler().getWriter();
+
+ ExposeWriterHandler duh = new ExposeWriterHandler();
+ IndexWriter writer = duh.getWriter();
int interval = writer.getTermIndexInterval();
assertEquals(256, interval);
+ duh.close();
}
@Test
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestLegacyMergeSchedulerPolicyConfig.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestLegacyMergeSchedulerPolicyConfig.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestLegacyMergeSchedulerPolicyConfig.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestLegacyMergeSchedulerPolicyConfig.java Tue Oct 26 08:15:33 2010
@@ -18,9 +18,11 @@ public class TestLegacyMergeSchedulerPol
@Test
public void testLegacy() throws Exception {
- IndexWriter writer = new ExposeWriterHandler().getWriter();
+ ExposeWriterHandler duh = new ExposeWriterHandler();
+ IndexWriter writer = duh.getWriter();
assertTrue(writer.getMergePolicy().getClass().getName().equals(LogDocMergePolicy.class.getName()));
assertTrue(writer.getMergeScheduler().getClass().getName().equals(SerialMergeScheduler.class.getName()));
+ duh.close();
}
class ExposeWriterHandler extends DirectUpdateHandler2 {
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestSolrDeletionPolicy2.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestSolrDeletionPolicy2.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestSolrDeletionPolicy2.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/core/TestSolrDeletionPolicy2.java Tue Oct 26 08:15:33 2010
@@ -16,22 +16,18 @@
*/
package org.apache.solr.core;
+import org.apache.solr.SolrTestCaseJ4;
import org.apache.solr.util.AbstractSolrTestCase;
+import org.junit.BeforeClass;
import org.junit.Test;
/**
* @version $Id$
*/
-public class TestSolrDeletionPolicy2 extends AbstractSolrTestCase {
-
- @Override
- public String getSchemaFile() {
- return "schema.xml";
- }
-
- @Override
- public String getSolrConfigFile() {
- return "solrconfig-delpolicy2.xml";
+public class TestSolrDeletionPolicy2 extends SolrTestCaseJ4 {
+ @BeforeClass
+ public static void beforeClass() throws Exception {
+ initCore("solrconfig-delpolicy2.xml","schema.xml");
}
@Test
Propchange: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/handler/component/QueryElevationComponentTest.java
('svn:mergeinfo' removed)
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/search/function/SortByFunctionTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/search/function/SortByFunctionTest.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/search/function/SortByFunctionTest.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/search/function/SortByFunctionTest.java Tue Oct 26 08:15:33 2010
@@ -94,6 +94,7 @@ public class SortByFunctionTest extends
{
assertU(adoc("id", "4", "id_s", "D", "links_mfacet", "A", "links_mfacet", "B", "links_mfacet", "C" ) );
assertU(adoc("id", "3", "id_s", "C", "links_mfacet", "A", "links_mfacet", "B" ) );
+ assertU(commit()); // Make sure it uses two readers
assertU(adoc("id", "2", "id_s", "B", "links_mfacet", "A" ) );
assertU(adoc("id", "1", "id_s", "A" ) );
assertU(commit());
Modified: lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/spelling/suggest/SuggesterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/spelling/suggest/SuggesterTest.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/spelling/suggest/SuggesterTest.java (original)
+++ lucene/dev/branches/docvalues/solr/src/test/org/apache/solr/spelling/suggest/SuggesterTest.java Tue Oct 26 08:15:33 2010
@@ -62,6 +62,20 @@ public class SuggesterTest extends SolrT
"//lst[@name='spellcheck']/lst[@name='suggestions']/lst[@name='ac']/arr[@name='suggestion']/str[2][.='accommodate']"
);
}
+
+ @Test
+ public void testReload() throws Exception {
+ addDocs();
+ assertU(commit());
+ assertQ(req("qt","/suggest", "q","ac", SpellingParams.SPELLCHECK_COUNT, "2", SpellingParams.SPELLCHECK_ONLY_MORE_POPULAR, "true"),
+ "//lst[@name='spellcheck']/lst[@name='suggestions']/lst[@name='ac']/int[@name='numFound'][.='2']");
+ assertU(adoc("id", "4",
+ "text", "actually"
+ ));
+ assertU(commit());
+ assertQ(req("qt","/suggest", "q","ac", SpellingParams.SPELLCHECK_COUNT, "2", SpellingParams.SPELLCHECK_ONLY_MORE_POPULAR, "true"),
+ "//lst[@name='spellcheck']/lst[@name='suggestions']/lst[@name='ac']/int[@name='numFound'][.='2']");
+ }
private TermFreqIterator getTFIT() {
Modified: lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-delpolicy2.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-delpolicy2.xml?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-delpolicy2.xml (original)
+++ lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-delpolicy2.xml Tue Oct 26 08:15:33 2010
@@ -17,407 +17,14 @@
limitations under the License.
-->
-<!-- $Id$
- $Source$
- $Name$
- -->
-
<config>
-
- <jmx />
-
- <!-- Used to specify an alternate directory to hold all index data.
- It defaults to "index" if not present, and should probably
- not be changed if replication is in use. -->
- <dataDir>${solr.data.dir:./solr/data}</dataDir>
-
- <!-- The DirectoryFactory to use for indexes.
- solr.StandardDirectoryFactory, the default, is filesystem based.
- solr.RAMDirectoryFactory is memory based and not persistent. -->
- <directoryFactory name="DirectoryFactory" class="${solr.directoryFactory:solr.RAMDirectoryFactory}"/>
-
-
- <indexDefaults>
- <!-- Values here affect all index writers and act as a default
- unless overridden. -->
- <!-- Values here affect all index writers and act as a default unless overridden. -->
- <useCompoundFile>false</useCompoundFile>
- <mergeFactor>10</mergeFactor>
- <!-- If both ramBufferSizeMB and maxBufferedDocs is set, then Lucene will flush based on whichever limit is hit first.
- -->
- <!--<maxBufferedDocs>1000</maxBufferedDocs>-->
- <!-- Tell Lucene when to flush documents to disk.
- Giving Lucene more memory for indexing means faster indexing at the cost of more RAM
-
- If both ramBufferSizeMB and maxBufferedDocs is set, then Lucene will flush based on whichever limit is hit first.
-
- -->
- <ramBufferSizeMB>32</ramBufferSizeMB>
- <maxMergeDocs>2147483647</maxMergeDocs>
- <maxFieldLength>10000</maxFieldLength>
- <writeLockTimeout>1000</writeLockTimeout>
- <commitLockTimeout>10000</commitLockTimeout>
-
- <!--
- Expert:
- The Merge Policy in Lucene controls how merging is handled by Lucene. The default in 2.3 is the LogByteSizeMergePolicy, previous
- versions used LogDocMergePolicy.
-
- LogByteSizeMergePolicy chooses segments to merge based on their size. The Lucene 2.2 default, LogDocMergePolicy chose when
- to merge based on number of documents
-
- Other implementations of MergePolicy must have a no-argument constructor
- -->
- <mergePolicy class="org.apache.lucene.index.LogByteSizeMergePolicy"/>
-
- <!--
- Expert:
- The Merge Scheduler in Lucene controls how merges are performed. The ConcurrentMergeScheduler (Lucene 2.3 default)
- can perform merges in the background using separate threads. The SerialMergeScheduler (Lucene 2.2 default) does not.
- -->
- <mergeScheduler class="org.apache.lucene.index.ConcurrentMergeScheduler"/>
- <!-- these are global... can't currently override per index -->
- <writeLockTimeout>1000</writeLockTimeout>
- <commitLockTimeout>10000</commitLockTimeout>
-
- <lockType>single</lockType>
- </indexDefaults>
-
<mainIndex>
- <!-- lucene options specific to the main on-disk lucene index -->
- <useCompoundFile>false</useCompoundFile>
- <mergeFactor>10</mergeFactor>
- <ramBufferSizeMB>32</ramBufferSizeMB>
- <maxMergeDocs>2147483647</maxMergeDocs>
- <maxFieldLength>10000</maxFieldLength>
-
- <unlockOnStartup>true</unlockOnStartup>
-
<deletionPolicy class="org.apache.solr.core.FakeDeletionPolicy">
- <str name="var1">value1</str>
- <str name="var2">value2</str>
- </deletionPolicy>
-
+ <str name="var1">value1</str>
+ <str name="var2">value2</str>
+ </deletionPolicy>
</mainIndex>
- <updateHandler class="solr.DirectUpdateHandler2">
-
- <!-- autocommit pending docs if certain criteria are met
- <autoCommit>
- <maxDocs>10000</maxDocs>
- <maxTime>3600000</maxTime>
- </autoCommit>
- -->
- <!-- represents a lower bound on the frequency that commits may
- occur (in seconds). NOTE: not yet implemented
-
- <commitIntervalLowerBound>0</commitIntervalLowerBound>
- -->
-
- <!-- The RunExecutableListener executes an external command.
- exe - the name of the executable to run
- dir - dir to use as the current working directory. default="."
- wait - the calling thread waits until the executable returns. default="true"
- args - the arguments to pass to the program. default=nothing
- env - environment variables to set. default=nothing
- -->
- <!-- A postCommit event is fired after every commit
- <listener event="postCommit" class="solr.RunExecutableListener">
- <str name="exe">/var/opt/resin3/__PORT__/scripts/solr/snapshooter</str>
- <str name="dir">/var/opt/resin3/__PORT__</str>
- <bool name="wait">true</bool>
- <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
- <arr name="env"> <str>MYVAR=val1</str> </arr>
- </listener>
- -->
-
-
- </updateHandler>
-
-
- <query>
- <!-- Maximum number of clauses in a boolean query... can affect
- range or wildcard queries that expand to big boolean
- queries. An exception is thrown if exceeded.
- -->
- <maxBooleanClauses>1024</maxBooleanClauses>
-
-
- <!-- Cache specification for Filters or DocSets - unordered set of *all* documents
- that match a particular query.
- -->
- <filterCache
- class="solr.search.LRUCache"
- size="512"
- initialSize="512"
- autowarmCount="256"/>
-
- <queryResultCache
- class="solr.search.LRUCache"
- size="512"
- initialSize="512"
- autowarmCount="1024"/>
-
- <documentCache
- class="solr.search.LRUCache"
- size="512"
- initialSize="512"
- autowarmCount="0"/>
-
- <!-- If true, stored fields that are not requested will be loaded lazily.
- -->
- <enableLazyFieldLoading>true</enableLazyFieldLoading>
-
- <!--
-
- <cache name="myUserCache"
- class="solr.search.LRUCache"
- size="4096"
- initialSize="1024"
- autowarmCount="1024"
- regenerator="MyRegenerator"
- />
- -->
-
-
- <useFilterForSortedQuery>true</useFilterForSortedQuery>
-
- <queryResultWindowSize>10</queryResultWindowSize>
-
- <!-- set maxSize artificially low to exercise both types of sets -->
- <HashDocSet maxSize="3" loadFactor="0.75"/>
-
-
- <!-- boolToFilterOptimizer converts boolean clauses with zero boost
- into cached filters if the number of docs selected by the clause exceeds
- the threshold (represented as a fraction of the total index)
- -->
- <boolTofilterOptimizer enabled="false" cacheSize="32" threshold=".05"/>
-
-
- <!-- a newSearcher event is fired whenever a new searcher is being prepared
- and there is a current searcher handling requests (aka registered). -->
- <!-- QuerySenderListener takes an array of NamedList and executes a
- local query request for each NamedList in sequence. -->
- <!--
- <listener event="newSearcher" class="solr.QuerySenderListener">
- <arr name="queries">
- <lst> <str name="q">solr</str> <str name="start">0</str> <str name="rows">10</str> </lst>
- <lst> <str name="q">rocks</str> <str name="start">0</str> <str name="rows">10</str> </lst>
- </arr>
- </listener>
- -->
-
- <!-- a firstSearcher event is fired whenever a new searcher is being
- prepared but there is no current registered searcher to handle
- requests or to gain prewarming data from. -->
- <!--
- <listener event="firstSearcher" class="solr.QuerySenderListener">
- <arr name="queries">
- <lst> <str name="q">fast_warm</str> <str name="start">0</str> <str name="rows">10</str> </lst>
- </arr>
- </listener>
- -->
-
-
- </query>
-
-
- <!-- An alternate set representation that uses an integer hash to store filters (sets of docids).
- If the set cardinality <= maxSize elements, then HashDocSet will be used instead of the bitset
- based HashBitset. -->
-
- <!-- requestHandler plugins... incoming queries will be dispatched to the
- correct handler based on the qt (query type) param matching the
- name of registered handlers.
- The "standard" request handler is the default and will be used if qt
- is not specified in the request.
- -->
- <requestHandler name="standard" class="solr.StandardRequestHandler">
- <bool name="httpCaching">true</bool>
- </requestHandler>
- <requestHandler name="dismaxOldStyleDefaults"
- class="solr.DisMaxRequestHandler" >
- <!-- for historic reasons, DisMaxRequestHandler will use all of
- it's init params as "defaults" if there is no "defaults" list
- specified
- -->
- <float name="tie">0.01</float>
- <str name="qf">
- text^0.5 features_t^1.0 subject^1.4 title_stemmed^2.0
- </str>
- <str name="pf">
- text^0.2 features_t^1.1 subject^1.4 title_stemmed^2.0 title^1.5
- </str>
- <str name="bf">
- ord(weight)^0.5 recip(rord(iind),1,1000,1000)^0.3
- </str>
- <str name="mm">
- 3<-1 5<-2 6<90%
- </str>
- <int name="ps">100</int>
- </requestHandler>
- <requestHandler name="dismax" class="solr.DisMaxRequestHandler" >
- <lst name="defaults">
- <str name="q.alt">*:*</str>
- <float name="tie">0.01</float>
- <str name="qf">
- text^0.5 features_t^1.0 subject^1.4 title_stemmed^2.0
- </str>
- <str name="pf">
- text^0.2 features_t^1.1 subject^1.4 title_stemmed^2.0 title^1.5
- </str>
- <str name="bf">
- ord(weight)^0.5 recip(rord(iind),1,1000,1000)^0.3
- </str>
- <str name="mm">
- 3<-1 5<-2 6<90%
- </str>
- <int name="ps">100</int>
- </lst>
- </requestHandler>
- <requestHandler name="old" class="solr.tst.OldRequestHandler" >
- <int name="myparam">1000</int>
- <float name="ratio">1.4142135</float>
- <arr name="myarr"><int>1</int><int>2</int></arr>
- <str>foo</str>
- </requestHandler>
- <requestHandler name="oldagain" class="solr.tst.OldRequestHandler" >
- <lst name="lst1"> <str name="op">sqrt</str> <int name="val">2</int> </lst>
- <lst name="lst2"> <str name="op">log</str> <float name="val">10</float> </lst>
- </requestHandler>
-
- <requestHandler name="test" class="solr.tst.TestRequestHandler" />
-
- <!-- test query parameter defaults -->
- <requestHandler name="defaults" class="solr.StandardRequestHandler">
- <lst name="defaults">
- <int name="rows">4</int>
- <bool name="hl">true</bool>
- <str name="hl.fl">text,name,subject,title,whitetok</str>
- </lst>
- </requestHandler>
-
- <!-- test query parameter defaults -->
- <requestHandler name="lazy" class="solr.StandardRequestHandler" startup="lazy">
- <lst name="defaults">
- <int name="rows">4</int>
- <bool name="hl">true</bool>
- <str name="hl.fl">text,name,subject,title,whitetok</str>
- </lst>
- </requestHandler>
-
- <requestHandler name="/update" class="solr.XmlUpdateRequestHandler" />
- <requestHandler name="/update/csv" class="solr.CSVRequestHandler" startup="lazy">
- <bool name="httpCaching">false</bool>
- </requestHandler>
-
- <!-- test elevation -->
- <!--searchComponent name="elevate" class="org.apache.solr.handler.component.QueryElevationComponent" >
- <str name="queryFieldType">string</str>
- <str name="config-file">elevate.xml</str>
- </searchComponent-->
-
- <requestHandler name="/elevate" class="org.apache.solr.handler.component.SearchHandler">
- <lst name="defaults">
- <str name="echoParams">explicit</str>
- </lst>
- <!--arr name="last-components">
- <str>elevate</str>
- </arr-->
- </requestHandler>
-
- <searchComponent name="spellcheck" class="org.apache.solr.handler.component.SpellCheckComponent">
- <str name="queryAnalyzerFieldType">lowerfilt</str>
-
- <lst name="spellchecker">
- <str name="name">default</str>
- <str name="field">lowerfilt</str>
- <str name="spellcheckIndexDir">spellchecker1</str>
- <str name="buildOnCommit">true</str>
- </lst>
- <!-- Example of using different distance measure -->
- <lst name="spellchecker">
- <str name="name">jarowinkler</str>
- <str name="field">lowerfilt</str>
- <!-- Use a different Distance Measure -->
- <str name="distanceMeasure">org.apache.lucene.search.spell.JaroWinklerDistance</str>
- <str name="spellcheckIndexDir">spellchecker2</str>
-
- </lst>
- <lst name="spellchecker">
- <str name="classname">solr.FileBasedSpellChecker</str>
- <str name="name">external</str>
- <str name="sourceLocation">spellings.txt</str>
- <str name="characterEncoding">UTF-8</str>
- <str name="spellcheckIndexDir">spellchecker3</str>
- </lst>
- </searchComponent>
- <!--
- The SpellingQueryConverter to convert raw (CommonParams.Q) queries into tokens. Uses a simple regular expression
- to strip off field markup, boosts, ranges, etc. but it is not guaranteed to match an exact parse from the query parser.
- -->
- <queryConverter name="queryConverter" class="org.apache.solr.spelling.SpellingQueryConverter"/>
-
- <requestHandler name="spellCheckCompRH" class="org.apache.solr.handler.component.SearchHandler">
- <lst name="defaults">
- <!-- omp = Only More Popular -->
- <str name="spellcheck.onlyMorePopular">false</str>
- <!-- exr = Extended Results -->
- <str name="spellcheck.extendedResults">false</str>
- <!-- The number of suggestions to return -->
- <str name="spellcheck.count">1</str>
- </lst>
- <arr name="last-components">
- <str>spellcheck</str>
- </arr>
- </requestHandler>
-
- <searchComponent class="solr.HighlightComponent" name="highlight">
- <highlighting>
- <!-- Configure the standard fragmenter -->
- <fragmenter name="gap" class="org.apache.solr.highlight.GapFragmenter" default="true">
- <lst name="defaults">
- <int name="hl.fragsize">100</int>
- </lst>
- </fragmenter>
-
- <fragmenter name="regex" class="org.apache.solr.highlight.RegexFragmenter">
- <lst name="defaults">
- <int name="hl.fragsize">70</int>
- </lst>
- </fragmenter>
-
- <!-- Configure the standard formatter -->
- <formatter name="html" class="org.apache.solr.highlight.HtmlFormatter" default="true">
- <lst name="defaults">
- <str name="hl.simple.pre"><![CDATA[<em>]]></str>
- <str name="hl.simple.post"><![CDATA[</em>]]></str>
- </lst>
- </formatter>
- </highlighting>
- </searchComponent>
-
-
- <!-- enable streaming for testing... -->
- <requestDispatcher handleSelect="true" >
- <requestParsers enableRemoteStreaming="true" multipartUploadLimitInKB="2048" />
- <httpCaching lastModifiedFrom="openTime" etagSeed="Solr" never304="false">
- <cacheControl>max-age=30, public</cacheControl>
- </httpCaching>
- </requestDispatcher>
-
- <admin>
- <defaultQuery>solr</defaultQuery>
- <!--gettableFiles>solrconfig.xml scheam.xml admin-extra.html</gettableFiles-->
- </admin>
-
- <!-- test getting system property -->
- <propTest attr1="${solr.test.sys.prop1}-$${literal}"
- attr2="${non.existent.sys.prop:default-from-config}">prefix-${solr.test.sys.prop2}-suffix</propTest>
-
- <queryParser name="foo" class="FooQParserPlugin"/>
-
-
-
+ <requestHandler name="standard" class="solr.StandardRequestHandler"></requestHandler>
</config>
+
Modified: lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-spellchecker.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-spellchecker.xml?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-spellchecker.xml (original)
+++ lucene/dev/branches/docvalues/solr/src/test/test-files/solr/conf/solrconfig-spellchecker.xml Tue Oct 26 08:15:33 2010
@@ -103,7 +103,7 @@
<str name="buildOnCommit">true</str>
<!-- Suggester properties -->
- <str name="threshold">0.0</str>
+ <float name="threshold">0.0</float>
<!--
<str name="sourceLocation">american-english</str>
-->
Propchange: lucene/dev/branches/docvalues/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 26 08:15:33 2010
@@ -1,5 +1,5 @@
-/lucene/dev/branches/branch_3x/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:949730,961612,979161,980654,982195,987811,988512,1025544
+/lucene/dev/branches/branch_3x/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:949730,961612,979161,980654,982195,987811,988512,1025544,1026614
/lucene/dev/branches/preflexfixes/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:967125-979432
-/lucene/dev/trunk/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:1021634-1025711
+/lucene/dev/trunk/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:1021634-1027393
/lucene/solr/branches/newtrunk/solr/src/webapp/src/org/apache/solr/client/solrj/embedded:924462
/lucene/solr/trunk/src/webapp/src/org/apache/solr/client/solrj/embedded:922950-923910,923912-925091
Modified: lucene/dev/branches/docvalues/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java?rev=1027396&r1=1027395&r2=1027396&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java (original)
+++ lucene/dev/branches/docvalues/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java Tue Oct 26 08:15:33 2010
@@ -230,8 +230,11 @@ public class EmbeddedSolrServer extends
throw new SolrServerException( ex );
}
finally {
- if (req != null) req.close();
- core.close();
+ try {
+ if (req != null) req.close();
+ } finally {
+ core.close();
+ }
}
}
Propchange: lucene/dev/branches/docvalues/solr/testlogging.properties
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Oct 26 08:15:33 2010
@@ -1,6 +1,6 @@
/lucene/dev/branches/branch_3x/solr/testlogging.properties:949730,961612,979161,980654,982195,987811,988512
/lucene/dev/branches/preflexfixes/solr/testlogging.properties:967125-979432
-/lucene/dev/trunk/solr/testlogging.properties:1021634-1025711
+/lucene/dev/trunk/solr/testlogging.properties:1021634-1027393
/lucene/java/branches/lucene_2_4/solr/testlogging.properties:748824
/lucene/java/branches/lucene_2_9/solr/testlogging.properties:817269-818600,825998,829134,829881,831036,896850,909334
/lucene/java/branches/lucene_2_9_back_compat_tests/solr/testlogging.properties:818601-821336