wieso BUSYTHREAD Runtime Error?

Hier finden YaCy User Hilfe wenn was nicht funktioniert oder anders funktioniert als man dachte. Bei offensichtlichen Fehlern diese bitte gleich in die Bugs (http://bugs.yacy.net) eintragen.
Forumsregeln
In diesem Forum geht es um Benutzungsprobleme und Anfragen für Hilfe. Wird dabei ein Bug identifiziert, wird der thread zur Bearbeitung in die Bug-Sektion verschoben. Wer hier also einen Thread eingestellt hat und ihn vermisst, wird ihn sicherlich in der Bug-Sektion wiederfinden.

wieso BUSYTHREAD Runtime Error?

Beitragvon sixcooler » Mo Jan 05, 2009 2:38 pm

Hallo,

seit einigen Tagen habe ich nach ein paar Stunden Betrieb meines Yacy folgende Fehler im Log:

Code: Alles auswählen
...
I 2009/01/05 14:11:17 YACY PeerPing: myType is senior
E 2009/01/05 14:11:25 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target xception: null java.lang.ArrayIndexOutOfBoundsException
E 2009/01/05 14:11:45 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target xception: null java.lang.ArrayIndexOutOfBoundsException
E 2009/01/05 14:12:05 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target xception: null java.lang.ArrayIndexOutOfBoundsException
E 2009/01/05 14:12:25 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target exception: null java.lang.ArrayIndexOutOfBoundsException
I 2009/01/05 14:12:39 YACY INIT HASH SEARCH (query-auto): [rUZ........., -fo.........] - 10 links
...


Diese Runtime Errors kommen in unterschiedlichen Abständen und verschiedener Anzahl zwischen 'Normalen' Meldungen, nur alles was DHT / indexen betrifft findet nicht mehr statt.
Da dort ja nun recht wenig steht kann ich mir kaum einen Reim darauf machen - weis jemand irgendwas dazu? Oder wie man dem LogOutput etwas mehr Aussage entlockt?

Die Dateisysteme auf denen Yacy werkelt sind laut Prüfung ok.
Collection.index habe ich neu erstellen lassen. Beim Start von Yacy ist nichts Auffälliges zu sehen.

Besten Dank für eure Hilfe, sixcooler.
sixcooler
 
Beiträge: 494
Registriert: Do Aug 14, 2008 5:22 pm

Re: wieso BUSYTHREAD Runtime Error?

Beitragvon sixcooler » Di Jan 06, 2009 2:27 pm

Hallo,

das problem hat sich wohl erledigt.
Ich denke das das Löschen von alten URL-db-files hierzu führte. Seit ich den RWI-Aufräumer laufen liess gibt es nu schon seit ca 12h keine Probleme.

Cu, sixcooler
sixcooler
 
Beiträge: 494
Registriert: Do Aug 14, 2008 5:22 pm

Re: wieso BUSYTHREAD Runtime Error?

Beitragvon sixcooler » Mo Feb 02, 2009 3:41 pm

Hallo,

nachdem ich zur Wiederbelebung meinen kompletten Index gelöscht hatte, tritt nun, nach nicht mal einem Monat, das Problem wieder auf.

Code: Alles auswählen
E 2009/02/02 05:00:22 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target exception: -1
java.lang.ArrayIndexOutOfBoundsException: -1
        at de.anomic.kelondro.order.Base64Order.compares(Base64Order.java:329)
        at de.anomic.kelondro.order.Base64Order.compare0(Base64Order.java:297)
        at de.anomic.kelondro.order.Base64Order.compare(Base64Order.java:293)
        at de.anomic.kelondro.index.RowCollection.compare(RowCollection.java:913)
        at de.anomic.kelondro.index.RowSet.binarySearch(RowSet.java:231)
        at de.anomic.kelondro.index.RowSet.find(RowSet.java:188)
        at de.anomic.kelondro.index.RowSet.remove(RowSet.java:150)
        at de.anomic.kelondro.index.RowSet.remove(RowSet.java:165)
        at de.anomic.kelondro.kelondroCollectionIndex.remove(kelondroCollectionIndex.java:674)
        at de.anomic.index.indexCollectionRI.removeEntries(indexCollectionRI.java:151)
        at de.anomic.plasma.plasmaWordIndex.removeEntriesExpl(plasmaWordIndex.java:741)
        at de.anomic.plasma.plasmaDHTChunk.deleteTransferIndexes(plasmaDHTChunk.java:279)
        at de.anomic.plasma.plasmaSwitchboard.deQueueProcess(plasmaSwitchboard.java:1188)
        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at de.anomic.server.serverInstantBusyThread.job(serverInstantBusyThread.java:96)
        at de.anomic.server.serverAbstractBusyThread.run(serverAbstractBusyThread.java:143)
I 2009/02/02 05:00:22 PLASMA Received 1000 Entries 89 Words [RfCcy2AoIQ-2 .. R3TYdEeZWMJW]/1344532820050474080 from 3C4cc6oG2q0B:KSBA-250/0.71005535, processed in 144 milliseconds, requesting 0/797 URLs, blocked 0 RWIs
E 2009/02/02 05:00:23 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target exception: null
java.lang.ArrayIndexOutOfBoundsException


Die letzte Zeile wiederholt sich von da an sekündlich (Indexer-Idle-Sleep?). Das am Anfang etwas mehr Fehlermeldung existiert hatte ich bei meinem ersten Post hier nicht mitbekommen.
Manchmal habe ich auch Fehler in der Funktion de.anomic.kelondro.order.Base64Order.comparePivot.

Code: Alles auswählen
E 2009/02/02 15:26:50 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target exception: -124
java.lang.ArrayIndexOutOfBoundsException: -124
        at de.anomic.kelondro.order.Base64Order.comparePivot(Base64Order.java:362)
        at de.anomic.kelondro.index.RowCollection.comparePivot(RowCollection.java:902)
        at de.anomic.kelondro.index.RowSet.binarySearchCompiledPivot(RowSet.java:249)
        at de.anomic.kelondro.index.RowSet.find(RowSet.java:181)
        at de.anomic.kelondro.index.RowSet.remove(RowSet.java:150)
        at de.anomic.kelondro.index.RowSet.remove(RowSet.java:165)
        at de.anomic.kelondro.kelondroCollectionIndex.remove(kelondroCollectionIndex.java:674)
        at de.anomic.index.indexCollectionRI.removeEntries(indexCollectionRI.java:151)
        at de.anomic.plasma.plasmaWordIndex.removeEntriesExpl(plasmaWordIndex.java:741)
        at de.anomic.plasma.plasmaDHTChunk.deleteTransferIndexes(plasmaDHTChunk.java:279)
        at de.anomic.plasma.plasmaSwitchboard.deQueueProcess(plasmaSwitchboard.java:1188)
        at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at de.anomic.server.serverInstantBusyThread.job(serverInstantBusyThread.java:96)
        at de.anomic.server.serverAbstractBusyThread.run(serverAbstractBusyThread.java:143)
E 2009/02/02 15:26:51 BUSYTHREAD Runtime Error in serverInstantThread.job, thread 'de.anomic.plasma.plasmaSwitchboard.deQueueProcess': null; target exception: null
java.lang.ArrayIndexOutOfBoundsException


Gemein ist diesen das sie beim Zugriff auf ahpla[] OutOfBounds erzeugen. (und das wo im Code schon recht viel geprüft wird das so etwas nicht vorkommt)

Der Host ist ein Gentoo x86, jdk 1.6.0.11
collection.index habe aich auch schon mehrfach neubauen lassen.
yacy läuft auf eigener (ide) Platte, nun ext4.
Filesystem ist (laut fsck) ok. Nach dem löschen des Indexes ist yacy trotzdem auf eine andere Platte umgezogen.
Keine sonstigen Auffälligekeiten auf dem Host.

Hat irgendjemand eine Idee hierzu?

cu, sixcooler.
sixcooler
 
Beiträge: 494
Registriert: Do Aug 14, 2008 5:22 pm


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast