You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2010/12/27 00:55:18 UTC

svn commit: r1052985 [3/9] - in /lucene/dev/branches/bulkpostings: ./ lucene/ lucene/contrib/ lucene/contrib/ant/ lucene/contrib/ant/lib/ lucene/contrib/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/ lucene/contrib/benchmark/src/java/org/...

Modified: lucene/dev/branches/bulkpostings/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java (original)
+++ lucene/dev/branches/bulkpostings/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java Sun Dec 26 23:55:02 2010
@@ -17,15 +17,8 @@
 
 package org.apache.lucene.analysis.cn.smart;
 
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.Reader;
-import java.io.UnsupportedEncodingException;
-import java.util.Date;
-
 import org.apache.lucene.analysis.BaseTokenStreamTestCase;
 import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.util.Version;
 
 public class TestSmartChineseAnalyzer extends BaseTokenStreamTestCase {

Modified: lucene/dev/branches/bulkpostings/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java (original)
+++ lucene/dev/branches/bulkpostings/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java Sun Dec 26 23:55:02 2010
@@ -18,7 +18,6 @@ package org.apache.lucene.analysis.pl;
  */
 
 import java.io.IOException;
-import java.io.InputStream;
 import java.io.Reader;
 import java.util.Set;
 

Modified: lucene/dev/branches/bulkpostings/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/CHANGES.txt?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/CHANGES.txt (original)
+++ lucene/dev/branches/bulkpostings/solr/CHANGES.txt Sun Dec 26 23:55:02 2010
@@ -572,6 +572,13 @@ Bug Fixes
 
 * SOLR-2285: duplicate SolrEventListeners no longer created (hossman)
 
+* SOLR-1993: fix String cast assumption in JavaBinCodec - specific
+  addresses "commitWithin" option on Update requests.
+  (noble, hossman, and Maxim Valyanskiy)
+
+* SOLR-2275: fix DisMax 'mm' parsing to be tolerant of whitespace
+  (Erick Erickson via hossman)
+
 Other Changes
 ----------------------
 
@@ -676,6 +683,8 @@ Other Changes
   
 * SOLR-2213: Upgrade to jQuery 1.4.3 (Erick Erickson via ryan)
 
+* SOLR-2289: Tweak spatial coords for example docs so they are a bit
+  more spread out (Erick Erickson via hossman)
 
 Build
 ----------------------
@@ -698,6 +707,9 @@ Documentation
 * SOLR-1792: Documented peculiar behavior of TestHarness.LocalRequestFactory
   (hossman)
 
+* SOLR-2232: Improved README info on solr.solr.home in examples
+  (Eric Pugh and hossman)
+
 ================== Release 1.4.0 ==================
 Release Date:  See http://lucene.apache.org/solr for the official release date.
 

Modified: lucene/dev/branches/bulkpostings/solr/common-build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/common-build.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/common-build.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/common-build.xml Sun Dec 26 23:55:02 2010
@@ -266,7 +266,6 @@
              sourcepath=""
              classpathref="@{classpathref}">
          <nested />
-      	<compilerarg line="-Xlint -Xlint:-deprecation -Xlint:-serial"/>
       </javac>
     </sequential>
   </macrodef>

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/CHANGES.txt?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/CHANGES.txt (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/CHANGES.txt Sun Dec 26 23:55:02 2010
@@ -6,7 +6,7 @@ See http://wiki.apache.org/solr/Clusteri
 
 CHANGES
 
-$Id:$
+$Id$
 
 ================== Release XXXX ==================
 
@@ -17,6 +17,9 @@ $Id:$
 * SOLR-1804: Re-enabled clustering on trunk, updated to latest version of Carrot2.  No more LGPL run-time dependencies.
   This release of C2 also does not have a specific Lucene dependency.  (Stanislaw Osinski, gsingers)
 
+* SOLR-2282: Add distributed search support for search result clustering.
+  (Brad Giaccio, koji)
+
 ================== Release 1.4.0 ==================
 
 Solr Clustering will be released for the first time in Solr 1.4.  See http://wiki.apache.org/solr/ClusteringComponent

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/build.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/build.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/build.xml Sun Dec 26 23:55:02 2010
@@ -44,6 +44,10 @@
     <pathelement location="${common-solr.dir}/build/tests"/> <!-- include solr test code -->
     <pathelement location="${common-solr.dir}/../lucene/build/classes/test" />  <!-- include some lucene test code -->
     <path refid="common.classpath"/>
+    <!-- DistributedClusteringComponentTest uses Jetty -->
+    <fileset dir="${solr-path}/example/lib">
+      <include name="**/*.jar" />
+    </fileset>
   </path>
 
   <target name="clean">

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/ClusteringComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/ClusteringComponent.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/ClusteringComponent.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/ClusteringComponent.java Sun Dec 26 23:55:02 2010
@@ -16,6 +16,9 @@ package org.apache.solr.handler.clusteri
  * limitations under the License.
  */
 
+import org.apache.solr.common.SolrDocument;
+import org.apache.solr.common.SolrDocumentList;
+import org.apache.solr.common.params.CommonParams;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.core.SolrCore;
@@ -23,6 +26,7 @@ import org.apache.solr.core.SolrResource
 import org.apache.solr.handler.clustering.carrot2.CarrotClusteringEngine;
 import org.apache.solr.handler.component.ResponseBuilder;
 import org.apache.solr.handler.component.SearchComponent;
+import org.apache.solr.handler.component.ShardRequest;
 import org.apache.solr.search.DocListAndSet;
 import org.apache.solr.util.plugin.SolrCoreAware;
 import org.slf4j.Logger;
@@ -31,7 +35,9 @@ import org.slf4j.LoggerFactory;
 import java.io.IOException;
 import java.util.Collections;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.Map;
+import java.util.Set;
 
 
 /**
@@ -53,7 +59,7 @@ public class ClusteringComponent extends
   public static final String COMPONENT_NAME = "clustering";
   private NamedList initParams;
 
-
+  @Override
   public void prepare(ResponseBuilder rb) throws IOException {
     SolrParams params = rb.req.getParams();
     if (!params.getBool(COMPONENT_NAME, false)) {
@@ -61,18 +67,21 @@ public class ClusteringComponent extends
     }
   }
 
+  @Override
   public void process(ResponseBuilder rb) throws IOException {
     SolrParams params = rb.req.getParams();
     if (!params.getBool(COMPONENT_NAME, false)) {
       return;
     }
-    String name = params.get(ClusteringParams.ENGINE_NAME, ClusteringEngine.DEFAULT_ENGINE_NAME);
+    String name = getClusteringEngineName(rb);
     boolean useResults = params.getBool(ClusteringParams.USE_SEARCH_RESULTS, false);
     if (useResults == true) {
-      SearchClusteringEngine engine = searchClusteringEngines.get(name);
+      SearchClusteringEngine engine = getSearchClusteringEngine(rb);
       if (engine != null) {
         DocListAndSet results = rb.getResults();
-        Object clusters = engine.cluster(rb.getQuery(), results.docList, rb.req);
+        Map<SolrDocument,Integer> docIds = new HashMap<SolrDocument, Integer>(results.docList.size());
+        SolrDocumentList solrDocList = engine.getSolrDocumentList(results.docList, rb.req, docIds);
+        Object clusters = engine.cluster(rb.getQuery(), solrDocList, docIds, rb.req);
         rb.rsp.add("clusters", clusters);
       } else {
         log.warn("No engine for: " + name);
@@ -97,6 +106,72 @@ public class ClusteringComponent extends
       }
     }
   }
+  
+  private SearchClusteringEngine getSearchClusteringEngine(ResponseBuilder rb){
+    return searchClusteringEngines.get(getClusteringEngineName(rb));
+  }
+  
+  private String getClusteringEngineName(ResponseBuilder rb){
+    return rb.req.getParams().get(ClusteringParams.ENGINE_NAME, ClusteringEngine.DEFAULT_ENGINE_NAME);
+  }
+
+  @Override
+  public void modifyRequest(ResponseBuilder rb, SearchComponent who, ShardRequest sreq) {
+    SolrParams params = rb.req.getParams();
+    if (!params.getBool(COMPONENT_NAME, false) || !params.getBool(ClusteringParams.USE_SEARCH_RESULTS, false)) {
+      return;
+    }
+    sreq.params.remove(COMPONENT_NAME);
+    if( ( sreq.purpose & ShardRequest.PURPOSE_GET_FIELDS ) != 0 ){
+      String fl = sreq.params.get(CommonParams.FL,"*");
+      // if fl=* then we don't need check
+      if( fl.indexOf( '*' ) >= 0 ) return;
+      Set<String> fields = getSearchClusteringEngine(rb).getFieldsToLoad(rb.req);
+      if( fields == null || fields.size() == 0 ) return;
+      StringBuilder sb = new StringBuilder();
+      String[] flparams = fl.split( "[,\\s]+" );
+      Set<String> flParamSet = new HashSet<String>(flparams.length);
+      for( String flparam : flparams ){
+        // no need trim() because of split() by \s+
+        flParamSet.add(flparam);
+      }
+      for( String aFieldToLoad : fields ){
+        if( !flParamSet.contains( aFieldToLoad ) ){
+          sb.append( ',' ).append( aFieldToLoad );
+        }
+      }
+      if( sb.length() > 0 ){
+        sreq.params.set( CommonParams.FL, fl + sb.toString() );
+      }
+    }
+  }
+
+  @Override
+  public void finishStage(ResponseBuilder rb) {
+    SolrParams params = rb.req.getParams();
+    if (!params.getBool(COMPONENT_NAME, false) || !params.getBool(ClusteringParams.USE_SEARCH_RESULTS, false)) {
+      return;
+    }
+    if (rb.stage == ResponseBuilder.STAGE_GET_FIELDS) {
+      SearchClusteringEngine engine = getSearchClusteringEngine(rb);
+      if (engine != null) {
+        SolrDocumentList solrDocList = (SolrDocumentList)rb.rsp.getValues().get("response");
+        // TODO: Currently, docIds is set to null in distributed environment.
+        // This causes CarrotParams.PRODUCE_SUMMARY doesn't work.
+        // To work CarrotParams.PRODUCE_SUMMARY under distributed mode, we can choose either one of:
+        // (a) In each shard, ClusteringComponent produces summary and finishStage()
+        //     merges these summaries.
+        // (b) Adding doHighlighting(SolrDocumentList, ...) method to SolrHighlighter and
+        //     making SolrHighlighter uses "external text" rather than stored values to produce snippets.
+        Map<SolrDocument,Integer> docIds = null;
+        Object clusters = engine.cluster(rb.getQuery(), solrDocList, docIds, rb.req);
+        rb.rsp.add("clusters", clusters);
+      } else {
+        String name = getClusteringEngineName(rb);
+        log.warn("No engine for: " + name);
+      }
+    }
+  }
 
   @Override
   @SuppressWarnings("unchecked")
@@ -174,17 +249,17 @@ public class ClusteringComponent extends
 
   @Override
   public String getVersion() {
-    return "$Revision:$";
+    return "$Revision$";
   }
 
   @Override
   public String getSourceId() {
-    return "$Id:$";
+    return "$Id$";
   }
 
   @Override
   public String getSource() {
-    return "$URL:$";
+    return "$URL$";
   }
 
 }

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/DocumentClusteringEngine.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/DocumentClusteringEngine.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/DocumentClusteringEngine.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/DocumentClusteringEngine.java Sun Dec 26 23:55:02 2010
@@ -18,10 +18,7 @@ package org.apache.solr.handler.clusteri
 
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.params.SolrParams;
-import org.apache.solr.core.SolrCore;
-import org.apache.solr.search.DocList;
 import org.apache.solr.search.DocSet;
-import org.apache.lucene.search.Query;
 
 
 /**

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/SearchClusteringEngine.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/SearchClusteringEngine.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/SearchClusteringEngine.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/SearchClusteringEngine.java Sun Dec 26 23:55:02 2010
@@ -16,12 +16,16 @@ package org.apache.solr.handler.clusteri
  * limitations under the License.
  */
 
-import org.apache.solr.common.util.NamedList;
-import org.apache.solr.common.params.SolrParams;
-import org.apache.solr.core.SolrCore;
-import org.apache.solr.search.DocList;
-import org.apache.solr.request.SolrQueryRequest;
+import java.io.IOException;
+import java.util.Map;
+import java.util.Set;
+
 import org.apache.lucene.search.Query;
+import org.apache.solr.common.SolrDocument;
+import org.apache.solr.common.SolrDocumentList;
+import org.apache.solr.request.SolrQueryRequest;
+import org.apache.solr.search.DocList;
+import org.apache.solr.util.SolrPluginUtils;
 
 
 /**
@@ -30,8 +34,27 @@ import org.apache.lucene.search.Query;
  **/
 public abstract class SearchClusteringEngine extends ClusteringEngine {
 
-
+  @Deprecated
   public abstract Object cluster(Query query, DocList docList, SolrQueryRequest sreq);
 
-
+  // TODO: need DocList, too?
+  public abstract Object cluster(Query query, SolrDocumentList solrDocumentList,
+      Map<SolrDocument,Integer> docIds, SolrQueryRequest sreq);
+
+  /**
+   * Returns the set of field names to load.
+   * Concrete classes can override this method if needed.
+   * Default implementation returns null, that is, all stored fields are loaded.
+   * @param sreq
+   * @return set of field names to load
+   */
+  protected Set<String> getFieldsToLoad(SolrQueryRequest sreq){
+    return null;
+  }
+
+  public SolrDocumentList getSolrDocumentList(DocList docList, SolrQueryRequest sreq,
+      Map<SolrDocument, Integer> docIds) throws IOException{
+    return SolrPluginUtils.docListToSolrDocumentList(
+        docList, sreq.getSearcher(), getFieldsToLoad(sreq), docIds);
+  }
 }

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngine.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngine.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngine.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngine.java Sun Dec 26 23:55:02 2010
@@ -18,25 +18,38 @@ package org.apache.solr.handler.clusteri
  */
 
 import java.io.IOException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 import org.apache.commons.lang.StringUtils;
-import org.apache.lucene.document.FieldSelector;
-import org.apache.lucene.document.SetBasedFieldSelector;
 import org.apache.lucene.search.Query;
+import org.apache.solr.common.SolrDocument;
+import org.apache.solr.common.SolrDocumentList;
+import org.apache.solr.common.SolrException;
+import org.apache.solr.common.SolrException.ErrorCode;
 import org.apache.solr.common.params.HighlightParams;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
-import org.apache.solr.common.SolrException;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.handler.clustering.SearchClusteringEngine;
 import org.apache.solr.highlight.SolrHighlighter;
 import org.apache.solr.request.LocalSolrQueryRequest;
 import org.apache.solr.request.SolrQueryRequest;
-import org.apache.solr.search.*;
-import org.apache.solr.util.RefCounted;
-import org.carrot2.core.*;
+import org.apache.solr.search.DocList;
+import org.apache.solr.search.DocSlice;
+import org.apache.solr.search.SolrIndexSearcher;
+import org.apache.solr.util.SolrPluginUtils;
+import org.carrot2.core.Cluster;
+import org.carrot2.core.Controller;
+import org.carrot2.core.ControllerFactory;
+import org.carrot2.core.Document;
+import org.carrot2.core.IClusteringAlgorithm;
 import org.carrot2.core.attribute.AttributeNames;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -63,11 +76,25 @@ public class CarrotClusteringEngine exte
 
   private String idFieldName;
 
+  @Deprecated
   public Object cluster(Query query, DocList docList, SolrQueryRequest sreq) {
+    SolrIndexSearcher searcher = sreq.getSearcher();
+    SolrDocumentList solrDocList;
+    try {
+      Map<SolrDocument,Integer> docIds = new HashMap<SolrDocument, Integer>(docList.size());
+      solrDocList = SolrPluginUtils.docListToSolrDocumentList( docList, searcher, getFieldsToLoad(sreq), docIds );
+      return cluster(query, solrDocList, docIds, sreq);
+    } catch (IOException e) {
+      throw new SolrException(ErrorCode.SERVER_ERROR, e);
+    }
+  }
+
+  public Object cluster(Query query, SolrDocumentList solrDocList,
+      Map<SolrDocument, Integer> docIds, SolrQueryRequest sreq) {
     try {
       // Prepare attributes for Carrot2 clustering call
       Map<String, Object> attributes = new HashMap<String, Object>();
-      List<Document> documents = getDocuments(docList, query, sreq);
+      List<Document> documents = getDocuments(solrDocList, docIds, query, sreq);
       attributes.put(AttributeNames.DOCUMENTS, documents);
       attributes.put(AttributeNames.QUERY, query.toString());
 
@@ -79,7 +106,7 @@ public class CarrotClusteringEngine exte
               clusteringAlgorithmClass).getClusters(), sreq.getParams());
     } catch (Exception e) {
       log.error("Carrot2 clustering failed", e);
-      throw new RuntimeException(e);
+      throw new SolrException(ErrorCode.SERVER_ERROR, "Carrot2 clustering failed", e);
     }
   }
 
@@ -114,31 +141,36 @@ public class CarrotClusteringEngine exte
     return result;
   }
 
-  /**
-   * Prepares Carrot2 documents for clustering.
-   */
-  private List<Document> getDocuments(DocList docList,
-                                      Query query, final SolrQueryRequest sreq) throws IOException {
-    SolrHighlighter highlighter = null;
+  @Override
+  protected Set<String> getFieldsToLoad(SolrQueryRequest sreq){
     SolrParams solrParams = sreq.getParams();
-    SolrCore core = sreq.getCore();
 
     // Names of fields to deliver content for clustering
     String urlField = solrParams.get(CarrotParams.URL_FIELD_NAME, "url");
     String titleField = solrParams.get(CarrotParams.TITLE_FIELD_NAME, "title");
-    String snippetField = solrParams.get(CarrotParams.SNIPPET_FIELD_NAME,
-            titleField);
+    String snippetField = solrParams.get(CarrotParams.SNIPPET_FIELD_NAME, titleField);
     if (StringUtils.isBlank(snippetField)) {
       throw new SolrException(SolrException.ErrorCode.SERVER_ERROR, CarrotParams.SNIPPET_FIELD_NAME
               + " must not be blank.");
     }
-    Set<String> fieldsToLoad = Sets.newHashSet(urlField, titleField,
-            snippetField, idFieldName);
+    return Sets.newHashSet(urlField, titleField, snippetField, idFieldName);
+  }
+  
+  /**
+   * Prepares Carrot2 documents for clustering.
+   */
+  private List<Document> getDocuments(SolrDocumentList solrDocList, Map<SolrDocument, Integer> docIds,
+                                      Query query, final SolrQueryRequest sreq) throws IOException {
+    SolrHighlighter highlighter = null;
+    SolrParams solrParams = sreq.getParams();
+    SolrCore core = sreq.getCore();
 
+    String urlField = solrParams.get(CarrotParams.URL_FIELD_NAME, "url");
+    String titleField = solrParams.get(CarrotParams.TITLE_FIELD_NAME, "title");
+    String snippetField = solrParams.get(CarrotParams.SNIPPET_FIELD_NAME, titleField);
+    
     // Get the documents
-    DocIterator docsIter = docList.iterator();
-    boolean produceSummary = solrParams.getBool(CarrotParams.PRODUCE_SUMMARY,
-            false);
+    boolean produceSummary = solrParams.getBool(CarrotParams.PRODUCE_SUMMARY, false);
 
     SolrQueryRequest req = null;
     String[] snippetFieldAry = null;
@@ -164,20 +196,20 @@ public class CarrotClusteringEngine exte
       }
     }
 
-    SolrIndexSearcher searcher = sreq.getSearcher();
-    List<Document> result = new ArrayList<Document>(docList.size());
+    Iterator<SolrDocument> docsIter = solrDocList.iterator();
+    List<Document> result = new ArrayList<Document>(solrDocList.size());
 
     float[] scores = {1.0f};
     int[] docsHolder = new int[1];
     Query theQuery = query;
 
     while (docsIter.hasNext()) {
-      Integer id = docsIter.next();
-      org.apache.lucene.document.Document doc = searcher.doc(id,
-              fieldsToLoad);
-      String snippet = getValue(doc, snippetField);
-      if (produceSummary == true) {
-        docsHolder[0] = id.intValue();
+      SolrDocument sdoc = docsIter.next();
+      String snippet = getValue(sdoc, snippetField);
+      // TODO: docIds will be null when running distributed search.
+      // See comment in ClusteringComponent#finishStage().
+      if (produceSummary && docIds != null) {
+        docsHolder[0] = docIds.get(sdoc).intValue();
         DocList docAsList = new DocSlice(0, 1, docsHolder, scores, 1, 1.0f);
         NamedList highlights = highlighter.doHighlighting(docAsList, theQuery, req, snippetFieldAry);
         if (highlights != null && highlights.size() == 1) {//should only be one value given our setup
@@ -189,15 +221,16 @@ public class CarrotClusteringEngine exte
           }
         }
       }
-      Document carrotDocument = new Document(getValue(doc, titleField),
-              snippet, doc.get(urlField));
-      carrotDocument.setField("solrId", doc.get(idFieldName));
+      Document carrotDocument = new Document(getValue(sdoc, titleField),
+              snippet, (String)sdoc.getFieldValue(urlField));
+      carrotDocument.setField("solrId", sdoc.getFieldValue(idFieldName));
       result.add(carrotDocument);
     }
 
     return result;
   }
 
+  @Deprecated
   protected String getValue(org.apache.lucene.document.Document doc,
                             String field) {
     StringBuilder result = new StringBuilder();
@@ -211,6 +244,20 @@ public class CarrotClusteringEngine exte
     return result.toString().trim();
   }
 
+  protected String getValue(SolrDocument sdoc, String field) {
+    StringBuilder result = new StringBuilder();
+    Collection<Object> vals = sdoc.getFieldValues(field);
+    if(vals == null) return "";
+    Iterator<Object> ite = vals.iterator();
+    while(ite.hasNext()){
+      // Join multiple values with a period so that Carrot2 does not pick up
+      // phrases that cross field value boundaries (in most cases it would
+      // create useless phrases).
+      result.append((String)ite.next()).append(" . ");
+    }
+    return result.toString().trim();
+  }
+
   private List clustersToNamedList(List<Cluster> carrotClusters,
                                    SolrParams solrParams) {
     List result = new ArrayList();

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotParams.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotParams.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotParams.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/main/java/org/apache/solr/handler/clustering/carrot2/CarrotParams.java Sun Dec 26 23:55:02 2010
@@ -3,7 +3,6 @@ package org.apache.solr.handler.clusteri
 import java.util.Set;
 
 import com.google.common.collect.ImmutableSet;
-import org.apache.solr.common.params.HighlightParams;
 
 /**
  * Licensed to the Apache Software Foundation (ASF) under one or more

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/AbstractClusteringTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/AbstractClusteringTestCase.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/AbstractClusteringTestCase.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/AbstractClusteringTestCase.java Sun Dec 26 23:55:02 2010
@@ -19,8 +19,6 @@ package org.apache.solr.handler.clusteri
 import org.apache.solr.SolrTestCaseJ4;
 import org.junit.BeforeClass;
 
-import static org.junit.Assert.*;
-
 
 /**
  *

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/ClusteringComponentTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/ClusteringComponentTest.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/ClusteringComponentTest.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/ClusteringComponentTest.java Sun Dec 26 23:55:02 2010
@@ -29,8 +29,6 @@ import org.apache.solr.response.SolrQuer
 import org.apache.solr.request.SolrRequestHandler;
 import org.junit.Test;
 
-import static org.junit.Assert.*;
-
 /**
  *
  *

Modified: lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngineTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngineTest.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngineTest.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/clustering/src/test/java/org/apache/solr/handler/clustering/carrot2/CarrotClusteringEngineTest.java Sun Dec 26 23:55:02 2010
@@ -22,6 +22,8 @@ import org.apache.lucene.search.MatchAll
 import org.apache.lucene.search.Query;
 import org.apache.lucene.search.Sort;
 import org.apache.lucene.search.TermQuery;
+import org.apache.solr.common.SolrDocument;
+import org.apache.solr.common.SolrDocumentList;
 import org.apache.solr.common.params.ModifiableSolrParams;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
@@ -31,13 +33,14 @@ import org.apache.solr.request.LocalSolr
 import org.apache.solr.search.DocList;
 import org.apache.solr.search.SolrIndexSearcher;
 import org.apache.solr.util.RefCounted;
+import org.apache.solr.util.SolrPluginUtils;
 import org.carrot2.util.attribute.AttributeUtils;
 import org.junit.Test;
 
 import java.io.IOException;
+import java.util.HashMap;
 import java.util.List;
-
-import static org.junit.Assert.*;
+import java.util.Map;
 
 /**
  *
@@ -133,21 +136,23 @@ public class CarrotClusteringEngineTest 
       docList = searcher.getDocList(query, (Query) null, new Sort(), 0,
               numberOfDocs);
       assertEquals("docList size", expectedNumDocs, docList.matches());
+
+      ModifiableSolrParams solrParams = new ModifiableSolrParams();
+      solrParams.add(CarrotParams.PRODUCE_SUMMARY, "true");
+      solrParams.add(clusteringParams);
+
+      // Perform clustering
+      LocalSolrQueryRequest req = new LocalSolrQueryRequest(h.getCore(), solrParams);
+      Map<SolrDocument,Integer> docIds = new HashMap<SolrDocument, Integer>(docList.size());
+      SolrDocumentList solrDocList = SolrPluginUtils.docListToSolrDocumentList( docList, searcher, engine.getFieldsToLoad(req), docIds );
+      List results = (List)engine.cluster(query, solrDocList, docIds, req);
+      req.close();
+      assertEquals("number of clusters: " + results, expectedNumClusters, results.size());
+      checkClusters(results, false);
+      return results;
     } finally {
       ref.decref();
     }
-
-    ModifiableSolrParams solrParams = new ModifiableSolrParams();
-    solrParams.add(CarrotParams.PRODUCE_SUMMARY, "true");
-    solrParams.add(clusteringParams);
-
-    // Perform clustering
-    LocalSolrQueryRequest req = new LocalSolrQueryRequest(h.getCore(), solrParams);
-    List results = (List) engine.cluster(query, docList, req);
-    req.close();
-    assertEquals("number of clusters: " + results, expectedNumClusters, results.size());
-    checkClusters(results, false);
-    return results;
   }
 
   private void checkClusters(List results, int expectedDocCount,

Modified: lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/HttpDataSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/HttpDataSource.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/HttpDataSource.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/HttpDataSource.java Sun Dec 26 23:55:02 2010
@@ -16,17 +16,6 @@
  */
 package org.apache.solr.handler.dataimport;
 
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.net.URL;
-import java.net.URLConnection;
-import java.util.Properties;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
 /**
  * <p>
  * A data source implementation which can be used to read character files using

Modified: lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/SolrWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/SolrWriter.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/SolrWriter.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/SolrWriter.java Sun Dec 26 23:55:02 2010
@@ -26,8 +26,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.io.*;
-import java.text.ParseException;
-import java.util.Date;
 import java.util.Properties;
 
 /**
@@ -69,9 +67,6 @@ public class SolrWriter {
     try {
       AddUpdateCommand command = new AddUpdateCommand();
       command.solrDoc = d;
-      command.allowDups = false;
-      command.overwritePending = true;
-      command.overwriteCommitted = true;
       processor.processAdd(command);
     } catch (Exception e) {
       log.warn("Error creating document : " + d, e);
@@ -86,8 +81,6 @@ public class SolrWriter {
       log.info("Deleting document: " + id);
       DeleteUpdateCommand delCmd = new DeleteUpdateCommand();
       delCmd.id = id.toString();
-      delCmd.fromPending = true;
-      delCmd.fromCommitted = true;
       processor.processDelete(delCmd);
     } catch (IOException e) {
       log.error("Exception while deleteing: " + id, e);
@@ -162,8 +155,6 @@ public class SolrWriter {
       log.info("Deleting documents from Solr with query: " + query);
       DeleteUpdateCommand delCmd = new DeleteUpdateCommand();
       delCmd.query = query;
-      delCmd.fromCommitted = true;
-      delCmd.fromPending = true;
       processor.processDelete(delCmd);
     } catch (IOException e) {
       log.error("Exception while deleting by query: " + query, e);
@@ -192,8 +183,6 @@ public class SolrWriter {
     try {
       DeleteUpdateCommand deleteCommand = new DeleteUpdateCommand();
       deleteCommand.query = "*:*";
-      deleteCommand.fromCommitted = true;
-      deleteCommand.fromPending = true;
       processor.processDelete(deleteCommand);
     } catch (IOException e) {
       throw new DataImportHandlerException(DataImportHandlerException.SEVERE,

Modified: lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingDocumentLoader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingDocumentLoader.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingDocumentLoader.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingDocumentLoader.java Sun Dec 26 23:55:02 2010
@@ -90,19 +90,8 @@ public class ExtractingDocumentLoader ex
     this.processor = processor;
 
     templateAdd = new AddUpdateCommand();
-    templateAdd.allowDups = false;
-    templateAdd.overwriteCommitted = true;
-    templateAdd.overwritePending = true;
-
-    if (params.getBool(UpdateParams.OVERWRITE, true)) {
-      templateAdd.allowDups = false;
-      templateAdd.overwriteCommitted = true;
-      templateAdd.overwritePending = true;
-    } else {
-      templateAdd.allowDups = true;
-      templateAdd.overwriteCommitted = false;
-      templateAdd.overwritePending = false;
-    }
+    templateAdd.overwrite = params.getBool(UpdateParams.OVERWRITE, true);
+
     //this is lightweight
     autoDetectParser = new AutoDetectParser(config);
     this.factory = factory;

Modified: lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingRequestHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingRequestHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/ExtractingRequestHandler.java Sun Dec 26 23:55:02 2010
@@ -28,7 +28,6 @@ import org.apache.solr.util.plugin.SolrC
 import org.apache.solr.handler.ContentStreamHandlerBase;
 import org.apache.solr.handler.ContentStreamLoader;
 import org.apache.tika.config.TikaConfig;
-import org.apache.tika.exception.TikaException;
 import org.apache.tika.mime.MimeTypeException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

Modified: lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/SolrContentHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/SolrContentHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/SolrContentHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/main/java/org/apache/solr/handler/extraction/SolrContentHandler.java Sun Dec 26 23:55:02 2010
@@ -17,7 +17,6 @@
 
 package org.apache.solr.handler.extraction;
 
-import org.apache.solr.common.SolrException;
 import org.apache.solr.common.SolrInputDocument;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.DateUtil;

Modified: lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/java/org/apache/solr/handler/ExtractingRequestHandlerTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/java/org/apache/solr/handler/ExtractingRequestHandlerTest.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/java/org/apache/solr/handler/ExtractingRequestHandlerTest.java (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/java/org/apache/solr/handler/ExtractingRequestHandlerTest.java Sun Dec 26 23:55:02 2010
@@ -31,11 +31,8 @@ import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
-import static org.junit.Assert.*;
-
 import java.util.List;
 import java.util.ArrayList;
-import java.util.Locale;
 import java.io.File;
 
 

Modified: lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/resources/solr/conf/solrconfig.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/resources/solr/conf/solrconfig.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/resources/solr/conf/solrconfig.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/contrib/extraction/src/test/resources/solr/conf/solrconfig.xml Sun Dec 26 23:55:02 2010
@@ -224,58 +224,11 @@
   <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&lt;-1 5&lt;-2 6&lt;90%
-     </str>
-     <int name="ps">100</int>
-  </requestHandler>
-  <requestHandler name="dismax" class="solr.DisMaxRequestHandler" >
+  <requestHandler name="dismax" class="solr.SearchHandler" >
     <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&lt;-1 5&lt;-2 6&lt;90%
-     </str>
-     <int name="ps">100</int>
+     <str name="defType">dismax</str>
     </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">
@@ -344,8 +297,4 @@
   <propTest attr1="${solr.test.sys.prop1}-$${literal}"
             attr2="${non.existent.sys.prop:default-from-config}">prefix-${solr.test.sys.prop2}-suffix</propTest>
 
-
-
-
-
 </config>

Modified: lucene/dev/branches/bulkpostings/solr/example/README.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/README.txt?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/README.txt (original)
+++ lucene/dev/branches/bulkpostings/solr/example/README.txt Sun Dec 26 23:55:02 2010
@@ -16,19 +16,20 @@
 Solr example configuration
 --------------------------
 
-To run this example configuration, use 
+To run the default example configuration, use 
 
   java -jar start.jar
 
-in this directory, and when Solr is started connect to 
+in this example directory, and when Solr is started connect to 
 
   http://localhost:8983/solr/admin/
 
-To add documents to the index, use the post.sh script in the exampledocs
-subdirectory (while Solr is running), for example:
+To add documents to the index, use the post.jar (or post.sh script) in
+the exampledocs subdirectory (while Solr is running), for example:
 
-  cd exampledocs
-  ./post.sh *.xml
+     cd exampledocs
+     java -jar post.jar *.xml
+Or:  ./post.sh *.xml
 
 See also README.txt in the solr subdirectory, and check
 http://wiki.apache.org/solr/SolrResources for a list of tutorials and
@@ -40,3 +41,10 @@ this example server and wish to use the 
 you will need to copy the required jars into solr/lib or update the paths to
 the jars in your solrconfig.xml.
 
+By default, start.jar starts Solr in Jetty using the default SolrHome 
+directory of "./solr/" -- To run other example configurations, you can
+speciy the solr.solr.home system property when starting jetty...
+
+  java -Dsolr.solr.home=multicore -jar start.jar
+  java -Dsolr.solr.home=example-DIH -jar start.jar
+

Modified: lucene/dev/branches/bulkpostings/solr/example/exampledocs/ipod_other.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/exampledocs/ipod_other.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/exampledocs/ipod_other.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/example/exampledocs/ipod_other.xml Sun Dec 26 23:55:02 2010
@@ -29,7 +29,7 @@
   <field name="popularity">1</field>
   <field name="inStock">false</field>
   <!-- Buffalo store -->
-  <field name="store">45.17614,-93.87341</field>
+  <field name="store">45.18014,-93.87741</field>
   <field name="manufacturedate_dt">2005-08-01T16:30:25Z</field>
 </doc>
 

Modified: lucene/dev/branches/bulkpostings/solr/example/exampledocs/mem.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/exampledocs/mem.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/exampledocs/mem.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/example/exampledocs/mem.xml Sun Dec 26 23:55:02 2010
@@ -61,7 +61,7 @@
   <field name="popularity">0</field>
   <field name="inStock">true</field>
   <!-- Buffalo store -->
-  <field name="store">45.17614,-93.87341</field>
+  <field name="store">45.18414,-93.88141</field>
   <field name="manufacturedate_dt">2006-02-13T15:26:37Z</field>
 
   <field name="payloads">electronics|0.9 memory|0.1</field>

Modified: lucene/dev/branches/bulkpostings/solr/example/exampledocs/monitor2.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/exampledocs/monitor2.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/exampledocs/monitor2.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/example/exampledocs/monitor2.xml Sun Dec 26 23:55:02 2010
@@ -27,6 +27,6 @@
   <field name="popularity">6</field>
   <field name="inStock">true</field>
   <!-- Buffalo store -->
-  <field name="store">45.17614,-93.87341</field>
+  <field name="store">45.18814,-93.88541</field>
 </doc></add>
 

Modified: lucene/dev/branches/bulkpostings/solr/example/exampledocs/mp500.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/exampledocs/mp500.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/exampledocs/mp500.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/example/exampledocs/mp500.xml Sun Dec 26 23:55:02 2010
@@ -36,6 +36,6 @@
   <field name="popularity">6</field>
   <field name="inStock">true</field>
   <!-- Buffalo store -->
-  <field name="store">45.17614,-93.87341</field>
+  <field name="store">45.19214,-93.89941</field>
 </doc></add>
 

Modified: lucene/dev/branches/bulkpostings/solr/example/exampledocs/sd500.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/exampledocs/sd500.xml?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/exampledocs/sd500.xml (original)
+++ lucene/dev/branches/bulkpostings/solr/example/exampledocs/sd500.xml Sun Dec 26 23:55:02 2010
@@ -32,5 +32,5 @@
   <field name="inStock">true</field>
   <field name="manufacturedate_dt">2006-02-13T15:26:37Z</field>
   <!-- Buffalo store -->
-  <field name="store">45.17614,-93.87341</field>
+  <field name="store">45.19614,-93.90341</field>
 </doc></add>

Modified: lucene/dev/branches/bulkpostings/solr/example/multicore/README.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/example/multicore/README.txt?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/example/multicore/README.txt (original)
+++ lucene/dev/branches/bulkpostings/solr/example/multicore/README.txt Sun Dec 26 23:55:02 2010
@@ -1,3 +1,7 @@
 This is an alternative setup structure to support multiple cores.
 
-For general examples on standard solr configuration, see the "solr" directory.
\ No newline at end of file
+To run this configuration, start jetty in the example/ directory using:
+
+java -Dsolr.solr.home=multicore -jar start.jar
+
+For general examples on standard solr configuration, see the "solr" directory.

Modified: lucene/dev/branches/bulkpostings/solr/src/common/org/apache/solr/common/util/DateUtil.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/common/org/apache/solr/common/util/DateUtil.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/common/org/apache/solr/common/util/DateUtil.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/common/org/apache/solr/common/util/DateUtil.java Sun Dec 26 23:55:02 2010
@@ -17,7 +17,6 @@ package org.apache.solr.common.util;
  */
 
 import java.io.IOException;
-import java.io.Writer;
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/ClassicTokenizerFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/ClassicTokenizerFactory.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/ClassicTokenizerFactory.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/ClassicTokenizerFactory.java Sun Dec 26 23:55:02 2010
@@ -20,8 +20,6 @@ package org.apache.solr.analysis;
 import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.standard.ClassicTokenizer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
-import org.apache.lucene.analysis.standard.StandardTokenizer;
-
 import java.io.Reader;
 import java.util.Map;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/PhoneticFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/PhoneticFilterFactory.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/PhoneticFilterFactory.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/analysis/PhoneticFilterFactory.java Sun Dec 26 23:55:02 2010
@@ -31,7 +31,6 @@ import org.apache.commons.codec.language
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.phonetic.PhoneticFilter;
 import org.apache.solr.common.SolrException;
-import org.apache.solr.common.util.StrUtils;
 
 /**
  * Create tokens based on phonetic encoders

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/Config.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/Config.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/Config.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/Config.java Sun Dec 26 23:55:02 2010
@@ -33,9 +33,6 @@ import java.io.*;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Locale;
-import java.util.Map;
-import java.util.LinkedHashMap;
-import java.util.Collections;
 import java.util.concurrent.atomic.AtomicBoolean;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/RefCntRamDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/RefCntRamDirectory.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/RefCntRamDirectory.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/RefCntRamDirectory.java Sun Dec 26 23:55:02 2010
@@ -3,7 +3,6 @@ package org.apache.solr.core;
 import java.io.IOException;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import org.apache.lucene.index.IndexFileNameFilter;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.RAMDirectory;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrConfig.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrConfig.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrConfig.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrConfig.java Sun Dec 26 23:55:02 2010
@@ -17,6 +17,7 @@
 
 package org.apache.solr.core;
 
+import org.apache.solr.common.SolrException;
 import org.apache.solr.common.util.DOMUtil;
 import org.apache.solr.common.util.RegexFileFilter;
 import org.apache.solr.common.util.NamedList;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrCore.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrCore.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrCore.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrCore.java Sun Dec 26 23:55:02 2010
@@ -23,7 +23,6 @@ import org.apache.lucene.index.IndexWrit
 import org.apache.lucene.search.BooleanQuery;
 import org.apache.lucene.store.Directory;
 import org.apache.solr.common.SolrException;
-import org.apache.solr.common.SolrException.ErrorCode;
 import org.apache.solr.common.params.CommonParams;
 import org.apache.solr.common.params.CommonParams.EchoParamStyle;
 import org.apache.solr.common.params.SolrParams;
@@ -31,7 +30,6 @@ import org.apache.solr.common.util.Named
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.handler.admin.ShowFileRequestHandler;
 import org.apache.solr.handler.component.*;
-import org.apache.solr.highlight.DefaultSolrHighlighter;
 import org.apache.solr.highlight.SolrHighlighter;
 import org.apache.solr.request.*;
 import org.apache.solr.response.*;
@@ -1375,18 +1373,7 @@ public final class SolrCore implements S
 
   }
 
-  /**
-   * @deprecated Use {@link #execute(SolrRequestHandler, SolrQueryRequest, SolrQueryResponse)} instead. 
-   */
-  @Deprecated
-  public void execute(SolrQueryRequest req, SolrQueryResponse rsp) {
-    SolrRequestHandler handler = getRequestHandler(req.getQueryType());
-    if (handler==null) {
-      log.warn(logid+"Unknown Request Handler '" + req.getQueryType() +"' :" + req);
-      throw new SolrException( SolrException.ErrorCode.BAD_REQUEST,"Unknown Request Handler '" + req.getQueryType() + "'", true);
-    }
-    execute(handler, req, rsp);
-  }
+
   
   public static void setResponseHeaderValues(SolrRequestHandler handler, SolrQueryRequest req, SolrQueryResponse rsp) {
     // TODO should check that responseHeader has not been replaced by handler

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrEventListener.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrEventListener.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrEventListener.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/SolrEventListener.java Sun Dec 26 23:55:02 2010
@@ -17,7 +17,6 @@
 
 package org.apache.solr.core;
 
-import org.apache.solr.common.util.NamedList;
 import org.apache.solr.search.SolrIndexSearcher;
 import org.apache.solr.util.plugin.NamedListInitializedPlugin;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/StandardIndexReaderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/StandardIndexReaderFactory.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/StandardIndexReaderFactory.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/core/StandardIndexReaderFactory.java Sun Dec 26 23:55:02 2010
@@ -20,7 +20,6 @@ import java.io.IOException;
 
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.store.Directory;
-import org.apache.solr.common.util.NamedList;
 
 /**
  * Default IndexReaderFactory implementation. Returns a standard Lucene

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/BinaryUpdateRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/BinaryUpdateRequestHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/BinaryUpdateRequestHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/BinaryUpdateRequestHandler.java Sun Dec 26 23:55:02 2010
@@ -93,25 +93,9 @@ public class BinaryUpdateRequestHandler 
 
   private AddUpdateCommand getAddCommand(SolrParams params) {
     AddUpdateCommand addCmd = new AddUpdateCommand();
-    boolean overwrite = true;  // the default
 
-    Boolean overwritePending = null;
-    Boolean overwriteCommitted = null;
-
-
-    overwrite = params.getBool(UpdateParams.OVERWRITE, overwrite);
+    addCmd.overwrite = params.getBool(UpdateParams.OVERWRITE, true);
     addCmd.commitWithin = params.getInt(COMMIT_WITHIN, -1);
-    // check if these flags are set
-    if (overwritePending != null && overwriteCommitted != null) {
-      if (overwritePending != overwriteCommitted) {
-        throw new SolrException(SolrException.ErrorCode.BAD_REQUEST,
-                "can't have different values for 'overwritePending' and 'overwriteCommitted'");
-      }
-      overwrite = overwritePending;
-    }
-    addCmd.overwriteCommitted = overwrite;
-    addCmd.overwritePending = overwrite;
-    addCmd.allowDups = !overwrite;
     return addCmd;
   }
 
@@ -123,8 +107,6 @@ public class BinaryUpdateRequestHandler 
       } else {
         delcmd.query = s;
       }
-      delcmd.fromCommitted = true;
-      delcmd.fromPending = true;
       processor.processDelete(delcmd);
     }
   }

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/CSVRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/CSVRequestHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/CSVRequestHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/CSVRequestHandler.java Sun Dec 26 23:55:02 2010
@@ -186,19 +186,7 @@ abstract class CSVLoader extends Content
     schema = req.getSchema();
 
     templateAdd = new AddUpdateCommand();
-    templateAdd.allowDups=false;
-    templateAdd.overwriteCommitted=true;
-    templateAdd.overwritePending=true;
-
-    if (params.getBool(OVERWRITE,true)) {
-      templateAdd.allowDups=false;
-      templateAdd.overwriteCommitted=true;
-      templateAdd.overwritePending=true;
-    } else {
-      templateAdd.allowDups=true;
-      templateAdd.overwriteCommitted=false;
-      templateAdd.overwritePending=false;
-    }
+    templateAdd.overwrite=params.getBool(OVERWRITE,true);
 
     strategy = new CSVStrategy(',', '"', CSVStrategy.COMMENTS_DISABLED, CSVStrategy.ESCAPE_DISABLED, false, false, false, true);
     String sep = params.get(SEPARATOR);

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/JsonLoader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/JsonLoader.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/JsonLoader.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/JsonLoader.java Sun Dec 26 23:55:02 2010
@@ -133,7 +133,6 @@ class JsonLoader extends ContentStreamLo
     assertNextEvent( js, JSONParser.OBJECT_START );
 
     DeleteUpdateCommand cmd = new DeleteUpdateCommand();
-    cmd.fromCommitted = cmd.fromPending = true; // TODO? enable this?
     
     while( true ) {
       int ev = js.nextEvent();
@@ -216,7 +215,6 @@ class JsonLoader extends ContentStreamLo
   {
     assertNextEvent( js, JSONParser.OBJECT_START );
     AddUpdateCommand cmd = new AddUpdateCommand();
-    cmd.allowDups = false;
     float boost = 1.0f;
     
     while( true ) {
@@ -232,7 +230,7 @@ class JsonLoader extends ContentStreamLo
             cmd.solrDoc = parseDoc( ev, js );
           }
           else if( XmlUpdateRequestHandler.OVERWRITE.equals( key ) ) {
-            cmd.allowDups = !js.getBoolean(); // reads next boolean
+            cmd.overwrite = js.getBoolean(); // reads next boolean
           }
           else if( XmlUpdateRequestHandler.COMMIT_WITHIN.equals( key ) ) {
             cmd.commitWithin = (int)js.getLong(); 
@@ -255,8 +253,6 @@ class JsonLoader extends ContentStreamLo
           throw new IOException("missing solr document. "+js.getPosition() );
         }
         cmd.solrDoc.setDocumentBoost( boost ); 
-        cmd.overwriteCommitted = !cmd.allowDups;
-        cmd.overwritePending = !cmd.allowDups;
         return cmd;
       }
       else {

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/MoreLikeThisHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/MoreLikeThisHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/MoreLikeThisHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/MoreLikeThisHandler.java Sun Dec 26 23:55:02 2010
@@ -24,11 +24,9 @@ import java.net.URL;
 import java.util.ArrayList;
 import java.util.Comparator;
 
-import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 import java.util.regex.Pattern;
 
 import org.apache.lucene.document.Document;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/RequestHandlerBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/RequestHandlerBase.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/RequestHandlerBase.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/RequestHandlerBase.java Sun Dec 26 23:55:02 2010
@@ -18,7 +18,6 @@
 package org.apache.solr.handler;
 
 import org.apache.solr.common.SolrException;
-import org.apache.solr.common.SolrDocumentList;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
@@ -27,7 +26,6 @@ import org.apache.solr.core.SolrInfoMBea
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.request.SolrRequestHandler;
 import org.apache.solr.response.SolrQueryResponse;
-import org.apache.solr.search.DocSet;
 import org.apache.solr.util.SolrPluginUtils;
 import org.apache.lucene.queryParser.ParseException;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/StandardRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/StandardRequestHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/StandardRequestHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/StandardRequestHandler.java Sun Dec 26 23:55:02 2010
@@ -17,7 +17,6 @@
 
 package org.apache.solr.handler;
 
-import org.apache.solr.common.util.NamedList;
 import org.apache.solr.handler.component.*;
 
 import java.net.MalformedURLException;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XMLLoader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XMLLoader.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XMLLoader.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XMLLoader.java Sun Dec 26 23:55:02 2010
@@ -99,39 +99,19 @@ class XMLLoader extends ContentStreamLoa
             XmlUpdateRequestHandler.log.trace("SolrCore.update(add)");
 
             addCmd = new AddUpdateCommand();
-            boolean overwrite = true;  // the default
 
-            Boolean overwritePending = null;
-            Boolean overwriteCommitted = null;
             for (int i = 0; i < parser.getAttributeCount(); i++) {
               String attrName = parser.getAttributeLocalName(i);
               String attrVal = parser.getAttributeValue(i);
               if (XmlUpdateRequestHandler.OVERWRITE.equals(attrName)) {
-                overwrite = StrUtils.parseBoolean(attrVal);
-              } else if (XmlUpdateRequestHandler.ALLOW_DUPS.equals(attrName)) {
-                overwrite = !StrUtils.parseBoolean(attrVal);
+                addCmd.overwrite = StrUtils.parseBoolean(attrVal);
               } else if (XmlUpdateRequestHandler.COMMIT_WITHIN.equals(attrName)) {
                 addCmd.commitWithin = Integer.parseInt(attrVal);
-              } else if (XmlUpdateRequestHandler.OVERWRITE_PENDING.equals(attrName)) {
-                overwritePending = StrUtils.parseBoolean(attrVal);
-              } else if (XmlUpdateRequestHandler.OVERWRITE_COMMITTED.equals(attrName)) {
-                overwriteCommitted = StrUtils.parseBoolean(attrVal);
               } else {
                 XmlUpdateRequestHandler.log.warn("Unknown attribute id in add:" + attrName);
               }
             }
 
-            // check if these flags are set
-            if (overwritePending != null && overwriteCommitted != null) {
-              if (overwritePending != overwriteCommitted) {
-                throw new SolrException(SolrException.ErrorCode.BAD_REQUEST,
-                        "can't have different values for 'overwritePending' and 'overwriteCommitted'");
-              }
-              overwrite = overwritePending;
-            }
-            addCmd.overwriteCommitted = overwrite;
-            addCmd.overwritePending = overwrite;
-            addCmd.allowDups = !overwrite;
           } else if ("doc".equals(currTag)) {
             XmlUpdateRequestHandler.log.trace("adding doc...");
             addCmd.clear();
@@ -190,15 +170,14 @@ class XMLLoader extends ContentStreamLoa
   void processDelete(UpdateRequestProcessor processor, XMLStreamReader parser) throws XMLStreamException, IOException {
     // Parse the command
     DeleteUpdateCommand deleteCmd = new DeleteUpdateCommand();
-    deleteCmd.fromPending = true;
-    deleteCmd.fromCommitted = true;
+
     for (int i = 0; i < parser.getAttributeCount(); i++) {
       String attrName = parser.getAttributeLocalName(i);
       String attrVal = parser.getAttributeValue(i);
       if ("fromPending".equals(attrName)) {
-        deleteCmd.fromPending = StrUtils.parseBoolean(attrVal);
+        // deprecated
       } else if ("fromCommitted".equals(attrName)) {
-        deleteCmd.fromCommitted = StrUtils.parseBoolean(attrVal);
+        // deprecated
       } else {
         XmlUpdateRequestHandler.log.warn("unexpected attribute delete/@" + attrName);
       }

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java Sun Dec 26 23:55:02 2010
@@ -18,14 +18,11 @@
 package org.apache.solr.handler;
 
 import org.apache.solr.common.SolrException;
-import org.apache.solr.common.params.MapSolrParams;
-import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.XML;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.request.LocalSolrQueryRequest;
 import org.apache.solr.request.SolrQueryRequest;
-import org.apache.solr.request.SolrQueryRequestBase;
 import org.apache.solr.response.SolrQueryResponse;
 import org.apache.solr.update.processor.UpdateRequestProcessor;
 import org.apache.solr.update.processor.UpdateRequestProcessorChain;
@@ -57,24 +54,7 @@ public class XmlUpdateRequestHandler ext
 
   public static final String OVERWRITE = "overwrite";
   public static final String COMMIT_WITHIN = "commitWithin";
-  
-  /**
-   * @deprecated use {@link #OVERWRITE}
-   */
-  @Deprecated
-  public static final String OVERWRITE_COMMITTED = "overwriteCommitted";
-  
-  /**
-   * @deprecated use {@link #OVERWRITE}
-   */
-  @Deprecated
-  public static final String OVERWRITE_PENDING = "overwritePending";
 
-  /**
-   * @deprecated use {@link #OVERWRITE}
-   */
-  @Deprecated
-  public static final String ALLOW_DUPS = "allowDups";
 
   XMLInputFactory inputFactory;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java Sun Dec 26 23:55:02 2010
@@ -42,9 +42,7 @@ import org.apache.lucene.store.Directory
 
 import java.io.File;
 import java.io.IOException;
-import java.util.ArrayList;
 import java.util.Date;
-import java.util.Set;
 
 /**
  * @version $Id$

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/PluginInfoHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/PluginInfoHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/PluginInfoHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/PluginInfoHandler.java Sun Dec 26 23:55:02 2010
@@ -26,7 +26,6 @@ import org.apache.solr.common.util.Simpl
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.core.SolrInfoMBean;
 import org.apache.solr.handler.RequestHandlerBase;
-import org.apache.solr.handler.RequestHandlerUtils;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.response.SolrQueryResponse;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ShowFileRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ShowFileRequestHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ShowFileRequestHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ShowFileRequestHandler.java Sun Dec 26 23:55:02 2010
@@ -36,7 +36,6 @@ import org.apache.solr.common.util.Simpl
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.core.SolrResourceLoader;
 import org.apache.solr.handler.RequestHandlerBase;
-import org.apache.solr.handler.RequestHandlerUtils;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.response.RawResponseWriter;
 import org.apache.solr.response.SolrQueryResponse;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SolrInfoMBeanHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SolrInfoMBeanHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SolrInfoMBeanHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SolrInfoMBeanHandler.java Sun Dec 26 23:55:02 2010
@@ -8,11 +8,9 @@ import org.apache.solr.common.util.Named
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.response.SolrQueryResponse;
 
-import java.util.Date;
 import java.util.Set;
 import java.util.Map;
 import java.util.HashSet;
-import java.util.HashMap;
 
 /**
  * A request handler that provides info about all 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SystemInfoHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SystemInfoHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SystemInfoHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/SystemInfoHandler.java Sun Dec 26 23:55:02 2010
@@ -20,7 +20,6 @@ package org.apache.solr.handler.admin;
 import java.io.BufferedReader;
 import java.io.DataInputStream;
 import java.io.File;
-import java.io.StringWriter;
 import java.lang.management.ManagementFactory;
 import java.lang.management.OperatingSystemMXBean;
 import java.lang.management.RuntimeMXBean;
@@ -35,7 +34,6 @@ import org.apache.commons.io.IOUtils;
 import org.apache.lucene.LucenePackage;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
-import org.apache.solr.common.util.XML;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.handler.RequestHandlerBase;
 import org.apache.solr.request.SolrQueryRequest;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ThreadDumpHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ThreadDumpHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ThreadDumpHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/admin/ThreadDumpHandler.java Sun Dec 26 23:55:02 2010
@@ -25,7 +25,6 @@ import java.lang.management.ThreadMXBean
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.handler.RequestHandlerBase;
-import org.apache.solr.handler.RequestHandlerUtils;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.response.SolrQueryResponse;
 

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/PivotFacetHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/PivotFacetHelper.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/PivotFacetHelper.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/PivotFacetHelper.java Sun Dec 26 23:55:02 2010
@@ -32,9 +32,6 @@ import org.apache.solr.request.SolrQuery
 import org.apache.solr.schema.FieldType;
 import org.apache.lucene.search.Query;
 import org.apache.lucene.search.TermQuery;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.Field.Index;
-import org.apache.lucene.document.Field.Store;
 import org.apache.lucene.index.Term;
 
 import java.io.IOException;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/QueryElevationComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/QueryElevationComponent.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/QueryElevationComponent.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/QueryElevationComponent.java Sun Dec 26 23:55:02 2010
@@ -30,7 +30,6 @@ import java.util.List;
 import java.util.Map;
 import java.util.WeakHashMap;
 
-import org.apache.solr.common.params.CommonParams;
 import org.apache.solr.common.params.QueryElevationParams;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchComponent.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchComponent.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchComponent.java Sun Dec 26 23:55:02 2010
@@ -20,12 +20,9 @@ package org.apache.solr.handler.componen
 import java.io.IOException;
 import java.net.URL;
 
-import org.apache.lucene.queryParser.ParseException;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.core.SolrInfoMBean;
-import org.apache.solr.request.SolrQueryRequest;
-import org.apache.solr.response.SolrQueryResponse;
 import org.apache.solr.util.plugin.NamedListInitializedPlugin;
 
 /**

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchHandler.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchHandler.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SearchHandler.java Sun Dec 26 23:55:02 2010
@@ -54,7 +54,6 @@ import org.apache.solr.common.params.Mod
 import org.apache.solr.common.params.ShardParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.RTimer;
-import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.common.util.StrUtils;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.handler.RequestHandlerBase;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SpellCheckComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SpellCheckComponent.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SpellCheckComponent.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/SpellCheckComponent.java Sun Dec 26 23:55:02 2010
@@ -23,11 +23,9 @@ import java.util.*;
 import java.util.concurrent.ConcurrentHashMap;
 
 import org.apache.lucene.search.spell.LevensteinDistance;
-import org.apache.lucene.search.spell.SpellChecker;
 import org.apache.lucene.search.spell.StringDistance;
 import org.apache.lucene.search.spell.SuggestWord;
 import org.apache.lucene.search.spell.SuggestWordQueue;
-import org.apache.lucene.util.PriorityQueue;
 import org.apache.solr.client.solrj.response.SpellCheckResponse;
 import org.apache.solr.common.params.ModifiableSolrParams;
 import org.slf4j.Logger;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermVectorComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermVectorComponent.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermVectorComponent.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermVectorComponent.java Sun Dec 26 23:55:02 2010
@@ -1,7 +1,6 @@
 package org.apache.solr.handler.component;
 
 import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.document.SetBasedFieldSelector;
 import org.apache.lucene.index.IndexReader;
@@ -30,15 +29,12 @@ import org.apache.solr.util.plugin.SolrC
 
 import java.io.IOException;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 /**
  * Licensed to the Apache Software Foundation (ASF) under one or more

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermsComponent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermsComponent.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermsComponent.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/handler/component/TermsComponent.java Sun Dec 26 23:55:02 2010
@@ -18,7 +18,6 @@ package org.apache.solr.handler.componen
 
 import org.apache.lucene.index.*;
 import org.apache.lucene.util.BytesRef;
-import org.apache.lucene.util.StringHelper;
 import org.apache.noggit.CharArr;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.params.*;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/DefaultSolrHighlighter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/DefaultSolrHighlighter.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/DefaultSolrHighlighter.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/DefaultSolrHighlighter.java Sun Dec 26 23:55:02 2010
@@ -29,7 +29,6 @@ import java.util.Set;
 
 
 import org.apache.lucene.analysis.CachingTokenFilter;
-import org.apache.lucene.analysis.Token;
 import org.apache.lucene.analysis.TokenFilter;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
@@ -50,7 +49,6 @@ import org.apache.solr.core.SolrConfig;
 import org.apache.solr.core.PluginInfo;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.request.SolrQueryRequest;
-import org.apache.solr.schema.FieldType;
 import org.apache.solr.schema.IndexSchema;
 import org.apache.solr.schema.SchemaField;
 import org.apache.solr.search.DocIterator;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/SolrHighlighter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/SolrHighlighter.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/SolrHighlighter.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/highlight/SolrHighlighter.java Sun Dec 26 23:55:02 2010
@@ -19,7 +19,6 @@ package org.apache.solr.highlight;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;

Modified: lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/request/SimpleFacets.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/request/SimpleFacets.java?rev=1052985&r1=1052984&r2=1052985&view=diff
==============================================================================
--- lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/request/SimpleFacets.java (original)
+++ lucene/dev/branches/bulkpostings/solr/src/java/org/apache/solr/request/SimpleFacets.java Sun Dec 26 23:55:02 2010
@@ -39,7 +39,6 @@ import org.apache.solr.common.util.Simpl
 import org.apache.solr.common.util.StrUtils;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.schema.*;
-import org.apache.solr.schema.TrieField.TrieTypes;
 import org.apache.solr.search.*;
 import org.apache.solr.util.BoundedTreeSet;
 import org.apache.solr.util.ByteUtils;