*) IndexCreateIndexingQueue_p.html now also shows indexing jobs that are currently in process

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@633 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
theli 20 years ago
parent 3dc6845bef
commit 0471019606

@ -46,6 +46,7 @@
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.Locale;
import java.io.IOException;
@ -86,15 +87,21 @@ public class IndexCreateIndexingQueue_p {
boolean dark;
int i=0;
if (switchboard.sbQueue.size() == 0) {
if ((switchboard.sbQueue.size() == 0) && (switchboard.indexingTasksInProcess.size() == 0)) {
prop.put("indexing-queue", 0); //is empty
} else {
prop.put("indexing-queue", 1);
prop.put("indexing-queue_num", switchboard.sbQueue.size());//num entries in queue
prop.put("indexing-queue_num", switchboard.sbQueue.size() + switchboard.indexingTasksInProcess.size());//num entries in queue
dark = true;
plasmaSwitchboardQueue.Entry pcentry;
try {
ArrayList entryList = switchboard.sbQueue.list(0);
ArrayList entryList = new ArrayList();
synchronized (switchboard.indexingTasksInProcess) {
entryList.addAll(switchboard.indexingTasksInProcess.values());
}
entryList.addAll(switchboard.sbQueue.list(0));
for (i = 0; i < entryList.size(); i++) {
pcentry = (plasmaSwitchboardQueue.Entry) entryList.get(i);
if (pcentry != null) {

@ -100,25 +100,19 @@
package de.anomic.plasma;
// import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.File;
// import java.io.FileInputStream;
import java.io.IOException;
// import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.Date;
// import java.util.Enumeration;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
// import java.util.TreeMap;
// import java.util.Vector;
import de.anomic.data.messageBoard;
import de.anomic.data.wikiBoard;
@ -130,20 +124,17 @@ import de.anomic.kelondro.kelondroTables;
import de.anomic.server.serverAbstractSwitch;
import de.anomic.server.serverCodings;
import de.anomic.server.serverCore;
// import de.anomic.server.serverDate;
import de.anomic.server.serverInstantThread;
import de.anomic.server.serverObjects;
import de.anomic.server.serverSemaphore;
import de.anomic.server.serverSwitch;
import de.anomic.server.logging.serverLog;
// import de.anomic.server.serverFileUtils;
import de.anomic.tools.bitfield;
import de.anomic.tools.crypt;
import de.anomic.yacy.yacyClient;
import de.anomic.yacy.yacyCore;
import de.anomic.yacy.yacySearch;
import de.anomic.yacy.yacySeed;
// import de.anomic.yacy.yacySeedDB;
public final class plasmaSwitchboard extends serverAbstractSwitch implements serverSwitch {
@ -182,6 +173,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
public plasmaWordIndexClassicCacheMigration classicCache;
public long proxyLastAccess;
public yacyCore yc;
public HashMap indexingTasksInProcess;
private serverSemaphore shutdownSync = new serverSemaphore(0);
private boolean terminate = false;
@ -293,6 +285,7 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
// initialize switchboard queue
sbQueue = new plasmaSwitchboardQueue(this.cacheManager, urlPool.loadedURL, new File(plasmaPath, "switchboardQueue1.stack"), 10, profiles);
indexingTasksInProcess = new HashMap();
// define an extension-blacklist
log.logConfig("Parser: Initializing Extension Mappings for Media/Parser");
@ -618,6 +611,11 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
try {
nextentry = sbQueue.pop();
if (nextentry == null) return false;
synchronized (this.indexingTasksInProcess) {
this.indexingTasksInProcess.put(nextentry.urlHash(),nextentry);
}
} catch (IOException e) {
log.logSevere("IOError in plasmaSwitchboard.deQueue: " + e.getMessage(), e);
return false;
@ -1060,6 +1058,10 @@ public final class plasmaSwitchboard extends serverAbstractSwitch implements ser
} catch (IOException e) {
log.logSevere("ERROR in plasmaSwitchboard.process(): " + e.toString());
} finally {
synchronized (this.indexingTasksInProcess) {
this.indexingTasksInProcess.remove(entry.urlHash());
}
// explicit delete/free resources
if ((entry != null) && (entry.profile() != null) && (!(entry.profile().storeHTCache()))) cacheManager.deleteFile(entry.url());
entry = null;

Loading…
Cancel
Save