- cleanup, removed unused imports

- added crawling queue sizes to /api/status_p.xml, syntax same as in queues_p.html
- fixed a bug in queue enumeration that caused a out of bounds exception

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@6842 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
orbiter 15 years ago
parent 3aad50d38e
commit 90c3e5d6f6

@ -22,18 +22,6 @@
<th>&nbsp;</th> <th>&nbsp;</th>
<th>Max</th> <th>Max</th>
</tr> </tr>
<tr class="TableCellLight">
<td align="left">Indexing</td>
<td align="right"><span id="indexingqueuesize">#[indexingSize]#</span></td>
<td>&nbsp;</td>
<td align="right"><span id="indexingqueuemax">#[indexingMax]#</span></td>
</tr>
<tr class="TableCellLight">
<td align="left">Loader</td>
<td align="right"><span id="loaderqueuesize">#[loaderSize]#</span></td>
<td>&nbsp;</td>
<td align="right"><span id="loaderqueuemax">#[loaderMax]#</span></td>
</tr>
<tr class="TableCellLight"> <tr class="TableCellLight">
<td align="left">Local Crawler</td> <td align="left">Local Crawler</td>
<td align="right"><span id="localcrawlerqueuesize">#[localCrawlSize]#</span></td> <td align="right"><span id="localcrawlerqueuesize">#[localCrawlSize]#</span></td>
@ -64,6 +52,12 @@
</td> </td>
<td align="right">unlimited</td> <td align="right">unlimited</td>
</tr> </tr>
<tr class="TableCellLight">
<td align="left">Loader</td>
<td align="right"><span id="loaderqueuesize">#[loaderSize]#</span></td>
<td>&nbsp;</td>
<td align="right"><span id="loaderqueuemax">#[loaderMax]#</span></td>
</tr>
</tbody> </tbody>
</table> </table>

@ -74,8 +74,6 @@ public class Crawler_p {
// inital values for AJAX Elements (without JavaScript) // inital values for AJAX Elements (without JavaScript)
final serverObjects prop = new serverObjects(); final serverObjects prop = new serverObjects();
prop.put("rejected", 0); prop.put("rejected", 0);
prop.put("indexingSize", 0);
prop.put("indexingMax", 0);
prop.put("urlpublictextSize", 0); prop.put("urlpublictextSize", 0);
prop.put("rwipublictextSize", 0); prop.put("rwipublictextSize", 0);
prop.put("list", "0"); prop.put("list", "0");

@ -27,7 +27,6 @@
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.util.Map;
import net.yacy.document.Document; import net.yacy.document.Document;
import net.yacy.document.ParserException; import net.yacy.document.ParserException;
@ -36,8 +35,6 @@ import net.yacy.kelondro.data.meta.DigestURI;
import de.anomic.crawler.retrieval.Response; import de.anomic.crawler.retrieval.Response;
import de.anomic.http.server.RequestHeader; import de.anomic.http.server.RequestHeader;
import de.anomic.search.Segment;
import de.anomic.search.Segments;
import de.anomic.search.Switchboard; import de.anomic.search.Switchboard;
import de.anomic.server.serverObjects; import de.anomic.server.serverObjects;
import de.anomic.server.serverSwitch; import de.anomic.server.serverSwitch;
@ -53,18 +50,6 @@ public class RSSLoader_p {
return prop; return prop;
} }
// get segment
Segment indexSegment = null;
if (post.containsKey("segment")) {
String segmentName = post.get("segment");
if (sb.indexSegments.segmentExist(segmentName)) {
indexSegment = sb.indexSegments.segment(segmentName);
}
} else {
// take default segment
indexSegment = sb.indexSegments.segment(Segments.Process.PUBLIC);
}
DigestURI url = null; DigestURI url = null;
final String urlString = post.get("url", ""); final String urlString = post.get("url", "");
@ -103,7 +88,7 @@ public class RSSLoader_p {
} }
// get the links out of the rss // get the links out of the rss
Map<DigestURI, String> map = doc.getAnchors(); //Map<DigestURI, String> map = doc.getAnchors();
// put the urls into crawler using the proxy profile // put the urls into crawler using the proxy profile

@ -31,11 +31,10 @@ public class queues_p {
//wikiCode wikiTransformer = new wikiCode(switchboard); //wikiCode wikiTransformer = new wikiCode(switchboard);
final serverObjects prop = new serverObjects(); final serverObjects prop = new serverObjects();
Segment segment = null; Segment segment = null;
if (post == null || !post.containsKey("html")) { boolean html = post != null && post.containsKey("html");
prop.setLocalized(false); prop.setLocalized(html);
if (post.containsKey("segment") && sb.verifyAuthentication(header, false)) { if (post != null && post.containsKey("segment") && sb.verifyAuthentication(header, false)) {
segment = sb.indexSegments.segment(post.get("segment")); segment = sb.indexSegments.segment(post.get("segment"));
}
} }
if (segment == null) segment = sb.indexSegments.segment(Segments.Process.PUBLIC); if (segment == null) segment = sb.indexSegments.segment(Segments.Process.PUBLIC);
prop.put("rejected", "0"); prop.put("rejected", "0");
@ -48,8 +47,8 @@ public class queues_p {
prop.putNum("rwipublictextSize", segment.termIndex().sizesMax()); prop.putNum("rwipublictextSize", segment.termIndex().sizesMax());
// loader queue // loader queue
prop.put("loaderSize", Integer.toString(sb.crawlQueues.workerSize())); prop.putNum("loaderSize", sb.crawlQueues.workerSize());
prop.put("loaderMax", sb.getConfigLong(SwitchboardConstants.CRAWLER_THREADS_ACTIVE_MAX, 10)); prop.putNum("loaderMax", sb.getConfigLong(SwitchboardConstants.CRAWLER_THREADS_ACTIVE_MAX, 10));
if (sb.crawlQueues.workerSize() == 0) { if (sb.crawlQueues.workerSize() == 0) {
prop.put("list-loader", "0"); prop.put("list-loader", "0");
} else { } else {
@ -68,18 +67,18 @@ public class queues_p {
} }
//local crawl queue //local crawl queue
prop.putNum("localCrawlSize", Integer.toString(sb.getThread(SwitchboardConstants.CRAWLJOB_LOCAL_CRAWL).getJobCount())); prop.putNum("localCrawlSize", sb.getThread(SwitchboardConstants.CRAWLJOB_LOCAL_CRAWL).getJobCount());
prop.put("localCrawlState", sb.crawlJobIsPaused(SwitchboardConstants.CRAWLJOB_LOCAL_CRAWL) ? STATE_PAUSED : STATE_RUNNING); prop.put("localCrawlState", sb.crawlJobIsPaused(SwitchboardConstants.CRAWLJOB_LOCAL_CRAWL) ? STATE_PAUSED : STATE_RUNNING);
int stackSize = sb.crawlQueues.noticeURL.stackSize(NoticedURL.STACK_TYPE_CORE); int stackSize = sb.crawlQueues.noticeURL.stackSize(NoticedURL.STACK_TYPE_CORE);
addNTable(sb, prop, "list-local", sb.crawlQueues.noticeURL.top(NoticedURL.STACK_TYPE_CORE, Math.min(10, stackSize))); addNTable(sb, prop, "list-local", sb.crawlQueues.noticeURL.top(NoticedURL.STACK_TYPE_CORE, Math.min(10, stackSize)));
//global crawl queue //global crawl queue
prop.putNum("limitCrawlSize", Integer.toString(sb.crawlQueues.limitCrawlJobSize())); prop.putNum("limitCrawlSize", sb.crawlQueues.limitCrawlJobSize());
prop.put("limitCrawlState", STATE_RUNNING); prop.put("limitCrawlState", STATE_RUNNING);
stackSize = sb.crawlQueues.noticeURL.stackSize(NoticedURL.STACK_TYPE_LIMIT); stackSize = sb.crawlQueues.noticeURL.stackSize(NoticedURL.STACK_TYPE_LIMIT);
//global crawl queue //global crawl queue
prop.putNum("remoteCrawlSize", Integer.toString(sb.getThread(SwitchboardConstants.CRAWLJOB_REMOTE_TRIGGERED_CRAWL).getJobCount())); prop.putNum("remoteCrawlSize", sb.getThread(SwitchboardConstants.CRAWLJOB_REMOTE_TRIGGERED_CRAWL).getJobCount());
prop.put("remoteCrawlState", sb.crawlJobIsPaused(SwitchboardConstants.CRAWLJOB_REMOTE_TRIGGERED_CRAWL) ? STATE_PAUSED : STATE_RUNNING); prop.put("remoteCrawlState", sb.crawlJobIsPaused(SwitchboardConstants.CRAWLJOB_REMOTE_TRIGGERED_CRAWL) ? STATE_PAUSED : STATE_RUNNING);
stackSize = sb.crawlQueues.noticeURL.stackSize(NoticedURL.STACK_TYPE_LIMIT); stackSize = sb.crawlQueues.noticeURL.stackSize(NoticedURL.STACK_TYPE_LIMIT);

@ -20,11 +20,10 @@ public class status_p {
final Switchboard sb = (Switchboard) env; final Switchboard sb = (Switchboard) env;
final serverObjects prop = new serverObjects(); final serverObjects prop = new serverObjects();
Segment segment = null; Segment segment = null;
if (post == null || !post.containsKey("html")) { boolean html = post != null && post.containsKey("html");
prop.setLocalized(false); prop.setLocalized(html);
if (post.containsKey("segment") && sb.verifyAuthentication(header, false)) { if (post != null && post.containsKey("segment") && sb.verifyAuthentication(header, false)) {
segment = sb.indexSegments.segment(post.get("segment")); segment = sb.indexSegments.segment(post.get("segment"));
}
} }
if (segment == null) segment = sb.indexSegments.segment(Segments.Process.PUBLIC); if (segment == null) segment = sb.indexSegments.segment(Segments.Process.PUBLIC);
@ -33,9 +32,16 @@ public class status_p {
final int cacheMaxSize = (int) sb.getConfigLong(SwitchboardConstants.WORDCACHE_MAX_COUNT, 10000); final int cacheMaxSize = (int) sb.getConfigLong(SwitchboardConstants.WORDCACHE_MAX_COUNT, 10000);
prop.putNum("ppm", sb.currentPPM()); prop.putNum("ppm", sb.currentPPM());
prop.putNum("qpm", sb.peers.mySeed().getQPM()); prop.putNum("qpm", sb.peers.mySeed().getQPM());
prop.put("wordCacheSize", Integer.toString(segment.termIndex().getBufferSize())); prop.putNum("wordCacheSize", segment.termIndex().getBufferSize());
prop.put("wordCacheMaxSize", Integer.toString(cacheMaxSize)); prop.putNum("wordCacheMaxSize", cacheMaxSize);
//
// crawl queues
prop.putNum("localCrawlSize", sb.getThread(SwitchboardConstants.CRAWLJOB_LOCAL_CRAWL).getJobCount());
prop.putNum("limitCrawlSize", sb.crawlQueues.limitCrawlJobSize());
prop.putNum("remoteCrawlSize", sb.getThread(SwitchboardConstants.CRAWLJOB_REMOTE_TRIGGERED_CRAWL).getJobCount());
prop.putNum("loaderSize", sb.crawlQueues.workerSize());
prop.putNum("loaderMax", sb.getConfigLong(SwitchboardConstants.CRAWLER_THREADS_ACTIVE_MAX, 10));
// memory usage and system attributes // memory usage and system attributes
prop.putNum("freeMemory", MemoryControl.free()); prop.putNum("freeMemory", MemoryControl.free());
prop.putNum("totalMemory", MemoryControl.total()); prop.putNum("totalMemory", MemoryControl.total());

@ -3,6 +3,20 @@
<ppm>#[ppm]#</ppm> <ppm>#[ppm]#</ppm>
<wordCacheSize>#[wordCacheSize]#</wordCacheSize> <wordCacheSize>#[wordCacheSize]#</wordCacheSize>
<wordCacheMaxSize>#[wordCacheMaxSize]#</wordCacheMaxSize> <wordCacheMaxSize>#[wordCacheMaxSize]#</wordCacheMaxSize>
<loaderqueue>
<size>#[loaderSize]#</size>
<max>#[loaderMax]#</max>
</loaderqueue>
<localcrawlerqueue>
<size>#[localCrawlSize]#</size>
</localcrawlerqueue>
<limitcrawlerqueue>
<size>#[limitCrawlSize]#</size>
</limitcrawlerqueue>
<remotecrawlerqueue>
<size>#[remoteCrawlSize]#</size>
</remotecrawlerqueue>
<memory> <memory>
<free>#[freeMemory]#</free> <free>#[freeMemory]#</free>

@ -29,7 +29,6 @@
// if the shell's current path is htroot/yacy // if the shell's current path is htroot/yacy
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;

@ -1,12 +1,9 @@
package de.anomic.crawler; package de.anomic.crawler;
import net.yacy.kelondro.logging.Log;
public abstract class AbstractImporter extends Thread implements Importer { public abstract class AbstractImporter extends Thread implements Importer {
private int jobID = -1; private int jobID = -1;
private String jobType; private String jobType;
private Log log;
private boolean stopped = false; private boolean stopped = false;
private boolean paused = false; private boolean paused = false;
private long globalStart = System.currentTimeMillis(); private long globalStart = System.currentTimeMillis();
@ -19,7 +16,6 @@ public abstract class AbstractImporter extends Thread implements Importer {
this.jobType = theJobType; this.jobType = theJobType;
// initializing the logger and setting a more verbose thread name // initializing the logger and setting a more verbose thread name
this.log = new Log("IMPORT_" + this.jobType + "_" + this.jobID);
this.setName("IMPORT_" + this.jobType + "_" + this.jobID); this.setName("IMPORT_" + this.jobType + "_" + this.jobID);
} }

@ -34,7 +34,6 @@ import java.util.concurrent.ConcurrentLinkedQueue;
import net.yacy.kelondro.index.BufferedObjectIndex; import net.yacy.kelondro.index.BufferedObjectIndex;
import net.yacy.kelondro.index.HandleSet; import net.yacy.kelondro.index.HandleSet;
import net.yacy.kelondro.index.ObjectIndex;
import net.yacy.kelondro.index.Row; import net.yacy.kelondro.index.Row;
import net.yacy.kelondro.index.RowSpaceExceededException; import net.yacy.kelondro.index.RowSpaceExceededException;
import net.yacy.kelondro.logging.Log; import net.yacy.kelondro.logging.Log;

@ -181,7 +181,10 @@ public class CrawlQueues {
synchronized (workers) { synchronized (workers) {
final Request[] e = new Request[workers.size()]; final Request[] e = new Request[workers.size()];
int i = 0; int i = 0;
for (final crawlWorker w: workers.values()) e[i++] = w.request; for (final crawlWorker w: workers.values()) {
if (i >= e.length) break;
e[i++] = w.request;
}
return e; return e;
} }
} }

@ -41,7 +41,6 @@ import java.io.OutputStreamWriter;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.util.HashMap; import java.util.HashMap;
import java.util.Hashtable; import java.util.Hashtable;
import java.util.Iterator;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;

@ -49,7 +49,6 @@ import de.anomic.http.server.RequestHeader;
public final class userDB { public final class userDB {
private static final int USERNAME_MAX_LENGTH = 128;
private static final int USERNAME_MIN_LENGTH = 4; private static final int USERNAME_MIN_LENGTH = 4;
private MapHeap userTable; private MapHeap userTable;

@ -26,12 +26,9 @@
package de.anomic.search; package de.anomic.search;
import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.Map; import java.util.Map;
import java.util.Set;
import net.yacy.document.Condenser; import net.yacy.document.Condenser;
import net.yacy.kelondro.data.meta.DigestURI; import net.yacy.kelondro.data.meta.DigestURI;

@ -25,7 +25,6 @@
package de.anomic.search; package de.anomic.search;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
import java.util.Iterator; import java.util.Iterator;
@ -40,7 +39,6 @@ import net.yacy.document.parser.html.CharacterCoding;
import net.yacy.kelondro.data.meta.DigestURI; import net.yacy.kelondro.data.meta.DigestURI;
import net.yacy.kelondro.data.meta.URIMetadataRow; import net.yacy.kelondro.data.meta.URIMetadataRow;
import net.yacy.kelondro.data.word.Word; import net.yacy.kelondro.data.word.Word;
import net.yacy.kelondro.data.word.WordReferenceVars;
import net.yacy.kelondro.index.ARC; import net.yacy.kelondro.index.ARC;
import net.yacy.kelondro.index.ConcurrentARC; import net.yacy.kelondro.index.ConcurrentARC;
import net.yacy.kelondro.index.HandleSet; import net.yacy.kelondro.index.HandleSet;
@ -48,7 +46,6 @@ import net.yacy.kelondro.index.RowSpaceExceededException;
import net.yacy.kelondro.logging.Log; import net.yacy.kelondro.logging.Log;
import net.yacy.kelondro.order.Base64Order; import net.yacy.kelondro.order.Base64Order;
import net.yacy.kelondro.util.ByteArray; import net.yacy.kelondro.util.ByteArray;
import net.yacy.kelondro.util.SetTools;
import net.yacy.repository.LoaderDispatcher; import net.yacy.repository.LoaderDispatcher;
import de.anomic.crawler.retrieval.Response; import de.anomic.crawler.retrieval.Response;

@ -5,16 +5,13 @@ package net.yacy;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashSet;
import java.util.Iterator; import java.util.Iterator;
import java.util.Random; import java.util.Random;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import net.yacy.kelondro.index.ObjectIndex; import net.yacy.kelondro.index.ObjectIndex;
import net.yacy.kelondro.index.ObjectIndexCache;
import net.yacy.kelondro.index.Row; import net.yacy.kelondro.index.Row;
import net.yacy.kelondro.index.RowSet; import net.yacy.kelondro.index.RowSet;
import net.yacy.kelondro.index.RowSpaceExceededException; import net.yacy.kelondro.index.RowSpaceExceededException;
@ -26,7 +23,6 @@ import net.yacy.kelondro.table.SQLTable;
import net.yacy.kelondro.table.SplitTable; import net.yacy.kelondro.table.SplitTable;
import net.yacy.kelondro.table.Table; import net.yacy.kelondro.table.Table;
import net.yacy.kelondro.util.MemoryControl; import net.yacy.kelondro.util.MemoryControl;
import net.yacy.kelondro.workflow.InstantBusyThread;
import net.yacy.visualization.ChartPlotter; import net.yacy.visualization.ChartPlotter;

@ -222,7 +222,7 @@ public class genericImageParser extends AbstractParser implements Idiom {
public static ImageInfo parseJavaImage( public static ImageInfo parseJavaImage(
final DigestURI location, final DigestURI location,
final BufferedImage image) throws ParserException { final BufferedImage image) {
ImageInfo ii = new ImageInfo(location); ImageInfo ii = new ImageInfo(location);
ii.image = image; ii.image = image;

@ -68,36 +68,22 @@ public class Stacks {
} }
private class StackInstance { private class StackInstance {
String name; public String name;
private final File location; public Stack stack;
Stack stack;
public StackInstance(final File location) throws IOException { public StackInstance(final File location) throws IOException {
String filename = location.getName(); String filename = location.getName();
assert filename.startsWith(stacksPrefix + "_"); assert filename.startsWith(stacksPrefix + "_");
assert filename.endsWith(".bstack"); assert filename.endsWith(".bstack");
this.name = filename.substring(stacksPrefix.length() + 1, filename.length() - 7); this.name = filename.substring(stacksPrefix.length() + 1, filename.length() - 7);
this.location = location;
this.stack = new Stack(location); this.stack = new Stack(location);
} }
public StackInstance(final String stack) throws IOException { public StackInstance(final String stack) throws IOException {
this.location = new File(stacksLocation, stacksPrefix + "_" + stack + ".bstack");
this.name = stack; this.name = stack;
this.stack = new Stack(location); this.stack = new Stack(new File(stacksLocation, stacksPrefix + "_" + stack + ".bstack"));
}
public String name() {
return this.name;
} }
public Stack stack() {
return this.stack;
}
public File location() {
return this.location;
}
} }
private Stack getStack(final String stack) { private Stack getStack(final String stack) {
@ -107,13 +93,13 @@ public class Stacks {
try { try {
si = new StackInstance(stack); si = new StackInstance(stack);
this.stacks.put(stack, si); this.stacks.put(stack, si);
return si.stack(); return si.stack;
} catch (IOException e) { } catch (IOException e) {
Log.logException(e); Log.logException(e);
return null; return null;
} }
} }
return si.stack(); return si.stack;
} }
/** /**

@ -35,7 +35,6 @@ import java.io.Serializable;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.UnknownHostException; import java.net.UnknownHostException;
import java.text.Collator; import java.text.Collator;
import java.util.Iterator;
import java.util.Locale; import java.util.Locale;
import java.util.TreeSet; import java.util.TreeSet;
import java.util.regex.Matcher; import java.util.regex.Matcher;
@ -936,7 +935,7 @@ public class DigestURI implements Serializable {
return hosthash6("http", host, 80); return hosthash6("http", host, 80);
} }
private static String[] testTLDs = new String[] { "com", "net", "org", "uk", "fr", "de", "es", "it" }; //private static String[] testTLDs = new String[] { "com", "net", "org", "uk", "fr", "de", "es", "it" };
public static final int domLengthEstimation(final byte[] urlHashBytes) { public static final int domLengthEstimation(final byte[] urlHashBytes) {
// generates an estimation of the original domain length // generates an estimation of the original domain length

@ -33,7 +33,6 @@ import java.util.Random;
import java.util.concurrent.Callable; import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future; import java.util.concurrent.Future;
import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.RejectedExecutionException;
import java.util.concurrent.SynchronousQueue; import java.util.concurrent.SynchronousQueue;

@ -22,9 +22,7 @@
package net.yacy.kelondro.order; package net.yacy.kelondro.order;
import java.util.Collection;
import java.util.ConcurrentModificationException; import java.util.ConcurrentModificationException;
import java.util.Iterator;
public class StackIterator<E> implements CloneableIterator<E> { public class StackIterator<E> implements CloneableIterator<E> {

@ -28,7 +28,6 @@
package net.yacy.kelondro.rwi; package net.yacy.kelondro.rwi;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.TreeMap; import java.util.TreeMap;
import java.util.TreeSet; import java.util.TreeSet;

@ -29,7 +29,6 @@
package net.yacy.kelondro.rwi; package net.yacy.kelondro.rwi;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap;
import java.util.TreeMap; import java.util.TreeMap;
import java.util.TreeSet; import java.util.TreeSet;

@ -28,23 +28,19 @@ package net.yacy.kelondro.rwi;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.Set;
import java.util.concurrent.Semaphore; import java.util.concurrent.Semaphore;
import de.anomic.yacy.graphics.ProfilingGraph; import de.anomic.yacy.graphics.ProfilingGraph;
import net.yacy.kelondro.data.meta.URIMetadataRow; import net.yacy.kelondro.data.meta.URIMetadataRow;
import net.yacy.kelondro.index.ARC;
import net.yacy.kelondro.index.HandleSet; import net.yacy.kelondro.index.HandleSet;
import net.yacy.kelondro.index.Row; import net.yacy.kelondro.index.Row;
import net.yacy.kelondro.index.RowSpaceExceededException; import net.yacy.kelondro.index.RowSpaceExceededException;
import net.yacy.kelondro.index.SimpleARC;
import net.yacy.kelondro.logging.Log; import net.yacy.kelondro.logging.Log;
import net.yacy.kelondro.order.ByteOrder; import net.yacy.kelondro.order.ByteOrder;
import net.yacy.kelondro.order.CloneableIterator; import net.yacy.kelondro.order.CloneableIterator;
import net.yacy.kelondro.order.MergeIterator; import net.yacy.kelondro.order.MergeIterator;
import net.yacy.kelondro.order.Order; import net.yacy.kelondro.order.Order;
import net.yacy.kelondro.util.ByteArray;
import net.yacy.kelondro.util.EventTracker; import net.yacy.kelondro.util.EventTracker;
import net.yacy.kelondro.util.MemoryControl; import net.yacy.kelondro.util.MemoryControl;

@ -31,7 +31,6 @@ import java.util.Collection;
import java.util.ConcurrentModificationException; import java.util.ConcurrentModificationException;
import java.util.Iterator; import java.util.Iterator;
import java.util.Map; import java.util.Map;
import java.util.Set;
import java.util.TreeMap; import java.util.TreeMap;
import net.yacy.kelondro.index.HandleSet; import net.yacy.kelondro.index.HandleSet;

@ -33,7 +33,6 @@ import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
import java.util.Iterator; import java.util.Iterator;
import java.util.Map; import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import net.yacy.kelondro.blob.HeapWriter; import net.yacy.kelondro.blob.HeapWriter;

Loading…
Cancel
Save