YaCy beachtet Dateigrößenlimit nicht

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.

YaCy beachtet Dateigrößenlimit nicht

Beitragvon cfr34x » Fr Jul 10, 2009 12:55 pm

Hallo,

mir ist aufgefallen, dass YaCy manchmal auch Dateien lädt, die größer sind als das, was ich unter http://localhost:8080/Settings_p.html?page=crawler eingestellt habe (hier 5MB).

Konkretes Beispiel war folgender Link: http://www.gnu.org/non-gnu/tong/tong-1.0.tar.gz .
Wenn ich diesen mit wget lade, erhalte ich folgende Ausgabe:
Code: Alles auswählen
--2009-07-10 12:35:26--  http://www.gnu.org/non-gnu/tong/tong-1.0.tar.gz
Auflösen des Hostnamen »www.gnu.org«.... 199.232.41.10
Verbindungsaufbau zu www.gnu.org|199.232.41.10|:80... verbunden.
HTTP Anforderung gesendet, warte auf Antwort... 302 Found
Platz: http://www.freesoftware.fsf.org/tong/tong-1.0.tar.gz[folge]

--2009-07-10 12:35:26--  http://www.freesoftware.fsf.org/tong/tong-1.0.tar.gz
Auflösen des Hostnamen »www.freesoftware.fsf.org«.... 199.232.41.10
Wiederverwendung der bestehenden Verbindung zu www.gnu.org:80.
HTTP Anforderung gesendet, warte auf Antwort... 302 Found
Platz: http://www.nongnu.org/tong/tong-1.0.tar.gz[folge]

--2009-07-10 12:35:27--  http://www.nongnu.org/tong/tong-1.0.tar.gz
Auflösen des Hostnamen »www.nongnu.org«.... 199.232.41.10
Wiederverwendung der bestehenden Verbindung zu www.gnu.org:80.
HTTP Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 33291881 (32M) [application/x-tar]
In »tong-1.0.tar.gz« speichern.

Auffällig ist, dass hier 2 mal umgeleitet wird, danach aber anscheinend die Größe gemeldet wird (hier 32MB), die ja eindeutig größer als die eingestellte von 5MB ist.
YaCy scheint das allerdings nicht zu beachten und lädt die Datei trotzdem.

Ich weiß allerdings nicht, ob das Problem nur bei Umleitungen auftritt. Dazu muss ich es noch länger beobachten.

Ist das ein Bug oder gibt es noch irgendwelche andere Einstellungen, die das beeinflussen?

Viele Grüße
cfr34x

EDIT: hab gerade noch den Log-Eintrag zu der Datei ausgegraben:
Code: Alles auswählen
D 2009/07/10 12:23:55 CRAWLER LOCALCRAWL[6519, 106143, 0, 101]: URL=http://www.gnu.org/non-gnu/tong/tong-1.0.tar.gz, initiator=THRtblGbjHQp, crawlOrder=true, depth=4, crawlDepth=5, must-match=.*(gnu|fsf).*, must-not-match=, permission=true
D 2009/07/10 12:25:09 CRAWLER problem loading http://www.gnu.org/non-gnu/tong/tong-1.0.tar.gz: REJECTED URL http://www.gnu.org/non-gnu/tong/tong-1.0.tar.gz because file size '33291881' exceeds max filesize limit of 5242880 bytes.

YaCy lädt die Datei anscheinend aber trotzdem runter, weil sie davor als einziges recht lang in der Loader-Liste gestanden ist und gleichzeitig hoher Traffic vorhanden war.

EDIT2:
Es scheint doch nicht nur an der Umleitung zu liegen; folgende URL wurde auch geladen: http://ftp.gnu.org/video/Stephen_Fry-Ha ... bit_fr.ogv (34MB)
Wget zeigt hier keine Umleitung an.

Die Zeile im Log dazu:
Code: Alles auswählen
D 2009/07/10 14:12:49 CRAWLER problem loading http://ftp.gnu.org/video/Stephen_Fry-Happy_Birthday_GNU-hq_600px_780kbit_fr.ogv: REJECTED WRONG MIME/EXT TYPE video/ogg for URL http://ftp.gnu.org/video/Stephen_Fry-Happy_Birthday_GNU-hq_600px_780kbit_fr.ogv
cfr34x
 
Beiträge: 49
Registriert: Sa Jan 31, 2009 6:24 pm

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Lotus » Fr Jul 10, 2009 2:01 pm

Kann das hier angehängt werden?
viewtopic.php?f=6&t=2198
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Quix0r » So Jul 12, 2009 2:14 pm

Das ist mir auch aufgefallen und sollte an den anderen Thread angehaengt werden. Es sollte zuerst ein HEAD-Queuest kommen und dann entschieden werden, ob es zu gross ist oder nicht und nicht erst, nachdem die Datei schon runtergeladen wurde.
Quix0r
 
Beiträge: 1345
Registriert: Di Jul 31, 2007 9:22 am
Wohnort: Krefeld

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon cfr34x » So Jul 12, 2009 3:37 pm

Ja, kann verschoben werden.

Ein zusätzlicher HEAD-Request sollte eigentlich nicht nötig sein, man müsste nur die Header lesen und dann entscheiden, ob weitergeladen oder abgebrochen werden soll.
cfr34x
 
Beiträge: 49
Registriert: Sa Jan 31, 2009 6:24 pm

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Quix0r » So Jul 12, 2009 3:41 pm

Erachte ich als unsauber, da ein GET abgebrochen wird. Ein HEAD vorwegschicken kostet nicht viel Bandbreite. :)
Quix0r
 
Beiträge: 1345
Registriert: Di Jul 31, 2007 9:22 am
Wohnort: Krefeld

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Lotus » So Jul 12, 2009 4:32 pm

(aus der Erinnerung:) Es läuft momentan so ab:
Content-Lenght zu groß? abbrechen
kein Wert geliefert? laden
geladene Datei zu groß? abbrechen

Es fehlt schlicht eine Kontrolle beim Ladevorgang.

Edit: die konkrete Ursache in diesem Fall steht wohl schon im Eingangspost: die Umleitung. Die gibt es auch bei den Dateien im von mir eröffneten Thread.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Lotus » Mo Jul 13, 2009 8:59 pm

In 6206 ist es nun perfekt. Die Content-Length wird nun während dem Laden geprüft.

Ein HEAD-Request habe ich zuerst gebaut, aber das ist scheiße.
Code: Alles auswählen
"GET /robots.txt HTTP/1.1" 200 133 "-" "yacybot (x86 Windows XP 5.1; java 1.6.0_13; Europe/de) http://yacy.net/bot.html"
"HEAD / HTTP/1.1" 200 - "-" "yacybot (x86 Windows XP 5.1; java 1.6.0_13; Europe/de) http://yacy.net/bot.html"
"GET / HTTP/1.1" 200 3355 "-" "yacybot (x86 Windows XP 5.1; java 1.6.0_13; Europe/de) http://yacy.net/bot.html"

Bei solchen Logs heißt es gleich Disallow: / für yacy.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Quix0r » Mo Jul 13, 2009 9:12 pm

Lotus hat geschrieben:In 6206 ist es nun perfekt. Die Content-Length wird nun während dem Laden geprüft.

Ein HEAD-Request habe ich zuerst gebaut, aber das ist scheiße.
Code: Alles auswählen
"GET /robots.txt HTTP/1.1" 200 133 "-" "yacybot (x86 Windows XP 5.1; java 1.6.0_13; Europe/de) http://yacy.net/bot.html"
"HEAD / HTTP/1.1" 200 - "-" "yacybot (x86 Windows XP 5.1; java 1.6.0_13; Europe/de) http://yacy.net/bot.html"
"GET / HTTP/1.1" 200 3355 "-" "yacybot (x86 Windows XP 5.1; java 1.6.0_13; Europe/de) http://yacy.net/bot.html"

Bei solchen Logs heißt es gleich Disallow: / für yacy.

Wieso das? Einfach mit den Requests warten und nicht gleich sofort nach dem HEAD ein GET senden. Belastet doch keine Maschine, da der Server nur den Header senden muss und nicht die gesamte Datei.

Wie bereits geschrieben, erachte ich es als unsauber. Und vielleicht kann das beim Server sogar Bugs verursachen, wenn zu viele Abbrueche kommen (Buffer Overflow usw., nur reine Schaetzung).
Quix0r
 
Beiträge: 1345
Registriert: Di Jul 31, 2007 9:22 am
Wohnort: Krefeld

Re: YaCy beachtet Dateigrößenlimit nicht

Beitragvon Lotus » Di Jul 14, 2009 9:33 am

Quix0r hat geschrieben:Und vielleicht kann das beim Server sogar Bugs verursachen, wenn zu viele Abbrueche kommen

Dafür sehe ich uns nicht in der Verantwortung. Das kann immer passieren.

Bei einem Head muss unter Umständen sogar ein dynamisches Script (DB-Abfragen) ausgeführt werden um ihn senden zu können.
Lotus
 
Beiträge: 1699
Registriert: Mi Jun 27, 2007 3:33 pm
Wohnort: Hamburg


Zurück zu Fragen und Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste