You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nutch.apache.org by do...@apache.org on 2009/01/12 14:37:26 UTC
svn commit: r733747 - in /lucene/nutch/trunk: CHANGES.txt
src/java/org/apache/nutch/crawl/AdaptiveFetchSchedule.java
Author: dogacan
Date: Mon Jan 12 05:37:23 2009
New Revision: 733747
URL: http://svn.apache.org/viewvc?rev=733747&view=rev
Log:
NUTCH-652 - AdaptiveFetchSchedule#setFetchSchedule doesn't calculate fetch interval correctly
Modified:
lucene/nutch/trunk/CHANGES.txt
lucene/nutch/trunk/src/java/org/apache/nutch/crawl/AdaptiveFetchSchedule.java
Modified: lucene/nutch/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/nutch/trunk/CHANGES.txt?rev=733747&r1=733746&r2=733747&view=diff
==============================================================================
--- lucene/nutch/trunk/CHANGES.txt (original)
+++ lucene/nutch/trunk/CHANGES.txt Mon Jan 12 05:37:23 2009
@@ -305,6 +305,9 @@
XML and JSON. (kubes)
114. NUTCH-442 - Integrate Solr/Nutch. (dogacan, original version by siren)
+
+115. NUTCH-652 - AdaptiveFetchSchedule#setFetchSchedule doesn't calculate
+ fetch interval correctly. (dogacan)
Release 0.9 - 2007-04-02
Modified: lucene/nutch/trunk/src/java/org/apache/nutch/crawl/AdaptiveFetchSchedule.java
URL: http://svn.apache.org/viewvc/lucene/nutch/trunk/src/java/org/apache/nutch/crawl/AdaptiveFetchSchedule.java?rev=733747&r1=733746&r2=733747&view=diff
==============================================================================
--- lucene/nutch/trunk/src/java/org/apache/nutch/crawl/AdaptiveFetchSchedule.java (original)
+++ lucene/nutch/trunk/src/java/org/apache/nutch/crawl/AdaptiveFetchSchedule.java Mon Jan 12 05:37:23 2009
@@ -63,7 +63,7 @@
private boolean SYNC_DELTA;
- private float SYNC_DELTA_RATE;
+ private double SYNC_DELTA_RATE;
public void setConf(Configuration conf) {
super.setConf(conf);
@@ -95,16 +95,19 @@
case FetchSchedule.STATUS_UNKNOWN:
break;
}
- datum.setFetchInterval(interval);
if (SYNC_DELTA) {
// try to synchronize with the time of change
- long delta = fetchTime - modifiedTime;
+ long delta = (fetchTime - modifiedTime) / 1000L;
if (delta > interval) interval = delta;
- refTime = fetchTime - Math.round(delta * SYNC_DELTA_RATE);
+ refTime = fetchTime - Math.round(delta * SYNC_DELTA_RATE * 1000);
+ }
+ if (interval < MIN_INTERVAL) {
+ interval = MIN_INTERVAL;
+ } else if (interval > MAX_INTERVAL) {
+ interval = MAX_INTERVAL;
}
- if (interval < MIN_INTERVAL) interval = MIN_INTERVAL;
- if (interval > MAX_INTERVAL) interval = MAX_INTERVAL;
- datum.setFetchTime(refTime + (long)datum.getFetchInterval() * 1000 );
+ datum.setFetchInterval(interval);
+ datum.setFetchTime(refTime + Math.round(interval * 1000.0));
datum.setModifiedTime(modifiedTime);
return datum;
}