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 sh...@apache.org on 2009/02/06 21:02:49 UTC
svn commit: r741698 - in /lucene/solr/trunk/contrib/dataimporthandler: ./
src/main/java/org/apache/solr/handler/dataimport/
Author: shalin
Date: Fri Feb 6 20:02:48 2009
New Revision: 741698
URL: http://svn.apache.org/viewvc?rev=741698&view=rev
Log:
SOLR-989 -- Expose running statistics from the Context API.
Modified:
lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/AbstractDataImportHandlerTest.java
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java
lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DocBuilder.java
Modified: lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt?rev=741698&r1=741697&r2=741698&view=diff
==============================================================================
--- lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt (original)
+++ lucene/solr/trunk/contrib/dataimporthandler/CHANGES.txt Fri Feb 6 20:02:48 2009
@@ -66,6 +66,9 @@
and NumberFormatTransformer.
(Fergus McMenemie, Noble Paul, shalin)
+16.SOLR-989: Expose running statistics from the Context API.
+ (Noble Paul, shalin)
+
Optimizations
----------------------
1. SOLR-846: Reduce memory consumption during delta import by removing keys when used
Modified: lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/AbstractDataImportHandlerTest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/AbstractDataImportHandlerTest.java?rev=741698&r1=741697&r2=741698&view=diff
==============================================================================
--- lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/AbstractDataImportHandlerTest.java (original)
+++ lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/AbstractDataImportHandlerTest.java Fri Feb 6 20:02:48 2009
@@ -139,6 +139,10 @@
public SolrCore getSolrCore() {
return delegate.getSolrCore();
}
+
+ public Map<String, Object> getStats() {
+ return delegate.getStats();
+ }
};
}
Modified: lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java?rev=741698&r1=741697&r2=741698&view=diff
==============================================================================
--- lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java (original)
+++ lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/Context.java Fri Feb 6 20:02:48 2009
@@ -58,7 +58,7 @@
/**
* An object stored in 'solrcore' scope is available across imports, entities and documents throughout the life of
- * a solr core. A solr core unload or reload will destroy this data.
+ * a solr core. A solr core unload or reload will destroy this data.
*/
public static final String SCOPE_SOLR_CORE = "solrcore";
@@ -102,7 +102,7 @@
/**
* Gets a new DataSource instance with a name. Ensure that you close() this after use
* because this is created just for this method call.
- *
+ *
* @param name Name of the dataSource as defined in the dataSource tag
* @return a new DataSource instance
* @see org.apache.solr.handler.dataimport.DataSource
@@ -172,4 +172,12 @@
* @return the core
*/
public abstract SolrCore getSolrCore();
+
+ /**
+ * Makes available some basic running statistics such as "docCount",
+ * "deletedDocCount", "rowCount", "queryCount" and "skipDocCount"
+ *
+ * @return a Map containing running statistics of the current import
+ */
+ public abstract Map<String, Object> getStats();
}
Modified: lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java?rev=741698&r1=741697&r2=741698&view=diff
==============================================================================
--- lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java (original)
+++ lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/ContextImpl.java Fri Feb 6 20:02:48 2009
@@ -174,4 +174,9 @@
public SolrCore getSolrCore() {
return dataImporter == null ? null : dataImporter.getCore();
}
+
+
+ public Map<String, Object> getStats() {
+ return docBuilder != null ? docBuilder.importStatistics.getStatsSnapshot() : Collections.<String, Object>emptyMap();
+ }
}
Modified: lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DocBuilder.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DocBuilder.java?rev=741698&r1=741697&r2=741698&view=diff
==============================================================================
--- lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DocBuilder.java (original)
+++ lucene/solr/trunk/contrib/dataimporthandler/src/main/java/org/apache/solr/handler/dataimport/DocBuilder.java Fri Feb 6 20:02:48 2009
@@ -637,9 +637,9 @@
}
public static class Statistics {
- public AtomicInteger docCount = new AtomicInteger();
+ public AtomicLong docCount = new AtomicLong();
- public AtomicInteger deletedDocCount = new AtomicInteger();
+ public AtomicLong deletedDocCount = new AtomicLong();
public AtomicLong rowsCount = new AtomicLong();
@@ -655,6 +655,17 @@
return this;
}
+
+ public Map<String, Object> getStatsSnapshot() {
+ Map<String, Object> result = new HashMap<String, Object>();
+ result.put("docCount",docCount.get());
+ result.put("deletedDocCount",deletedDocCount.get());
+ result.put("rowCount",rowsCount.get());
+ result.put("queryCount",rowsCount.get());
+ result.put("skipDocCount",skipDocCount.get());
+ return result;
+ }
+
}
private void cleanByQuery(String delQuery, AtomicBoolean completeCleanDone) {