Author: kwright
Date: Fri Nov 29 13:38:13 2013
New Revision: 1546559
URL: http://svn.apache.org/r1546559
Log:
Enable pre-fetching of bin values.
Modified:
manifoldcf/branches/CONNECTORS-781/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/WorkerThread.java
Modified:
manifoldcf/branches/CONNECTORS-781/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/WorkerThread.java
URL:
http://svn.apache.org/viewvc/manifoldcf/branches/CONNECTORS-781/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/WorkerThread.java?rev=1546559&r1=1546558&r2=1546559&view=diff
==============================================================================
---
manifoldcf/branches/CONNECTORS-781/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/WorkerThread.java
(original)
+++
manifoldcf/branches/CONNECTORS-781/framework/pull-agent/src/main/java/org/apache/manifoldcf/crawler/system/WorkerThread.java
Fri Nov 29 13:38:13 2013
@@ -2006,8 +2006,8 @@ public class WorkerThread extends Thread
long currentTime = System.currentTimeMillis();
- int j = 0;
- while (j < docidHashes.length)
+ rt.clearPreloadRequests();
+ for (int j = 0; j < docidHashes.length; j++)
{
DocumentReference dr = (DocumentReference)set.get(j);
docidHashes[j] = dr.getLocalIdentifierHash();
@@ -2018,17 +2018,17 @@ public class WorkerThread extends Thread
// Calculate desired document priority based on current queuetracker
status.
String[] bins =
ManifoldCF.calculateBins(connector,dr.getLocalIdentifier());
- priorities[j] = new PriorityCalculator(rt,connection,bins);
-
- // No longer used; the functionality is folded atomically into
calculatePriority above:
-
//queueTracker.notePrioritySet(currentTime,job.getID(),bins,connection);
-
- j++;
+ PriorityCalculator p = new PriorityCalculator(rt,connection,bins);
+ priorities[j] = p;
+ p.makePreloadRequest();
}
+ rt.preloadBinValues();
jobManager.addDocuments(processID,
job.getID(),legalLinkTypes,docidHashes,docids,db.getParentIdentifierHash(),db.getLinkType(),job.getHopcountMode(),
dataNames,dataValues,currentTime,priorities,eventNames);
+
+ rt.clearPreloadedValues();
}
discard();