You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by ry...@apache.org on 2007/07/03 23:25:21 UTC

svn commit: r552986 - in /lucene/solr/trunk/src/java/org/apache/solr/handler: UpdateRequestProcessor.java XmlUpdateRequestHandler.java

Author: ryan
Date: Tue Jul  3 14:25:21 2007
New Revision: 552986

URL: http://svn.apache.org/viewvc?view=rev&rev=552986
Log:
SOLR-269 -- removing incremental time logging.  This now has a single log statement for all processed commands.

Modified:
    lucene/solr/trunk/src/java/org/apache/solr/handler/UpdateRequestProcessor.java
    lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java

Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/UpdateRequestProcessor.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/UpdateRequestProcessor.java?view=diff&rev=552986&r1=552985&r2=552986
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/UpdateRequestProcessor.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/UpdateRequestProcessor.java Tue Jul  3 14:25:21 2007
@@ -18,12 +18,13 @@
 package org.apache.solr.handler;
 
 import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
 import java.util.logging.Logger;
 
 import org.apache.solr.common.SolrInputDocument;
 import org.apache.solr.common.SolrInputField;
 import org.apache.solr.common.util.NamedList;
-import org.apache.solr.core.SolrCore;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.schema.IndexSchema;
 import org.apache.solr.schema.SchemaField;
@@ -45,7 +46,6 @@
  * This implementation (the default) passes the request command (as is) to the updateHandler
  * and adds debug info to the response.
  * 
- * @author ryan 
  * @since solr 1.3
  */
 public class UpdateRequestProcessor
@@ -53,53 +53,40 @@
   public static Logger log = Logger.getLogger(UpdateRequestProcessor.class.getName());
   
   protected final SolrQueryRequest req;
-  protected final SolrCore core;
-  protected final IndexSchema schema;
   protected final UpdateHandler updateHandler;
-  protected final SchemaField uniqueKeyField;
   protected final long startTime;
   protected final NamedList<Object> response;
   
+  // hold on to the added list for logging and the response
+  protected List<Object> addedIds;
+  
   public UpdateRequestProcessor( SolrQueryRequest req )
   {
     this.req = req;
-    
-    core = req.getCore();
-    schema = core.getSchema();
-    updateHandler = core.getUpdateHandler();
-    uniqueKeyField = schema.getUniqueKeyField();
-    startTime = System.currentTimeMillis();
-    
-    // A place to put our output
-    response = new NamedList<Object>();
+    this.updateHandler = req.getCore().getUpdateHandler();
+    this.startTime = System.currentTimeMillis();
+    this.response = new NamedList<Object>();
   }
   
   /**
    * @return The response information
    */
-  public NamedList<Object> getResponse()
+  public NamedList<Object> finish()
   {
+    long elapsed = System.currentTimeMillis() - startTime;
+    log.info( "update"+response+" 0 " + (elapsed) );
     return response;
   }
   
   public void processDelete( DeleteUpdateCommand cmd ) throws IOException
   {
-    long start = System.currentTimeMillis();
     if( cmd.id != null ) {
       updateHandler.delete( cmd );
-      long now = System.currentTimeMillis();
-      log.info("delete(id " + cmd.id + ") 0 " + (now - start) + " ["+(now-startTime)+"]");
-      
       response.add( "delete", cmd.id );
     }
     else {
-      // TODO? if cmd.query == "*:* it should do something special
-      
       updateHandler.deleteByQuery( cmd );
-      long now = System.currentTimeMillis();
-      log.info("deleteByQuery(id " + cmd.query + ") 0 " + (now - start) + " ["+(now-startTime)+"]");
-
-      response.add( "deleteByQuery", cmd.id );
+      response.add( "deleteByQuery", cmd.query );
     }
   }
   
@@ -107,20 +94,18 @@
   {
     updateHandler.commit(cmd);
     response.add(cmd.optimize ? "optimize" : "commit", "");
-    long now = System.currentTimeMillis();
-    
-    if (cmd.optimize) {
-      log.info("optimize 0 " + (now - startTime)+ " ["+(now-startTime)+"]");
-    } 
-    else {
-      log.info("commit 0 " + (now - startTime)+ " ["+(now-startTime)+"]");
-    }
   }
 
-  // TODO -- in the future, the update command should just hold onto a SolrDocument
   public void processAdd( AddUpdateCommand cmd, SolrInputDocument doc ) throws IOException
   {
-    long start = System.currentTimeMillis();
+    // Add a list of added id's to the response
+    if( addedIds == null ) {
+      addedIds = new ArrayList<Object>();
+      response.add( "added", addedIds );
+    }
+    
+    IndexSchema schema = req.getSchema();
+    SchemaField uniqueKeyField = schema.getUniqueKeyField();
     Object id = null;
     if (uniqueKeyField != null) {
       SolrInputField f = doc.getField( uniqueKeyField.getName() );
@@ -128,11 +113,9 @@
         id = f.getFirstValue();
       }
     }
+    addedIds.add( id );
+    
     cmd.doc = DocumentBuilder.toDocument( doc, schema );
     updateHandler.addDoc(cmd);
-    response.add( "added", id );
-
-    long now = System.currentTimeMillis();
-    log.info("added id={" + id  + "} in " + (now - start) + "ms  ["+(now-startTime)+"]");
   }
 }

Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java?view=diff&rev=552986&r1=552985&r2=552986
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java Tue Jul  3 14:25:21 2007
@@ -153,7 +153,7 @@
       switch (event) {
         case XMLStreamConstants.END_DOCUMENT:
           parser.close();
-          return processor.getResponse();
+          return processor.finish();
 
         case XMLStreamConstants.START_ELEMENT:
           String currTag = parser.getLocalName();