Author: markus
Date: Thu Apr 28 09:58:26 2011
New Revision: 1097391

URL: http://svn.apache.org/viewvc?rev=1097391&view=rev
Log:
NUTCH-986 Dedup fails due to incorrect date format

Modified:
    nutch/trunk/CHANGES.txt
    nutch/trunk/src/java/org/apache/nutch/indexer/solr/SolrDeleteDuplicates.java

Modified: nutch/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/nutch/trunk/CHANGES.txt?rev=1097391&r1=1097390&r2=1097391&view=diff
==============================================================================
--- nutch/trunk/CHANGES.txt (original)
+++ nutch/trunk/CHANGES.txt Thu Apr 28 09:58:26 2011
@@ -2,6 +2,8 @@ Nutch Change Log
 
 Release 2.0 - Current Development
 
+* NUTCH 986 SolrDedup fails due to date incorrect format (markus)
+
 * NUTCH-977 SolrMappingReader uses hardcoded configuration parameter name for 
mapping file (markus)
 
 * NUTCH-976 Rename properties solrindex.* to solr.* (markus)

Modified: 
nutch/trunk/src/java/org/apache/nutch/indexer/solr/SolrDeleteDuplicates.java
URL: 
http://svn.apache.org/viewvc/nutch/trunk/src/java/org/apache/nutch/indexer/solr/SolrDeleteDuplicates.java?rev=1097391&r1=1097390&r2=1097391&view=diff
==============================================================================
--- 
nutch/trunk/src/java/org/apache/nutch/indexer/solr/SolrDeleteDuplicates.java 
(original)
+++ 
nutch/trunk/src/java/org/apache/nutch/indexer/solr/SolrDeleteDuplicates.java 
Thu Apr 28 09:58:26 2011
@@ -20,7 +20,10 @@ import java.io.DataInput;
 import java.io.DataOutput;
 import java.io.IOException;
 import java.net.MalformedURLException;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.Iterator;
 import java.util.List;
 
@@ -118,7 +121,15 @@ implements Tool {
     public void readSolrDocument(SolrDocument doc) {
       id = (String)doc.getFieldValue(SolrConstants.ID_FIELD);
       boost = (Float)doc.getFieldValue(SolrConstants.BOOST_FIELD);
-      tstamp = (Long)doc.getFieldValue(SolrConstants.TIMESTAMP_FIELD);
+
+      // Attempt to convert Solr formatted date to internally used long
+      try {
+        DateFormat formatter = new 
SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
+        Date date = 
(Date)formatter.parse((String)doc.getFieldValue(SolrConstants.TIMESTAMP_FIELD));
+        tstamp = (Long)date.getTime();
+      } catch (Exception e) {
+        LOG.error("Could not convert date to long: " + e);
+      }
     }
 
     @Override


Reply via email to