Fehler im eigenen Modul finden

Begonnen von DannyP, 26 Oktober 2014, 16:02:02

Vorheriges Thema - Nächstes Thema

DannyP

Hi!

Ich bastel gerade an einem Modul, wo sich aber ein Fehler drin versteckt hat, dem ich nicht auf die Schliche komme.

Ich rufe eine Funktion per BlockingCall auf:
$hash->{helper}{RUNNING_PID} = BlockingCall("MOD_InitialLoad", $hash->{NAME}, "MOD_InitialLoadDone", "", "MOD_InitialLoadAbort", $hash->{NAME});

MOD_InitialLoad wird auch aufgerufen. Dort wird eine zip Datei von einem Webserver heruntergeladen, entpackt und die enthaltene XML Datei (ca. 10 MB) soll dann in eine MySQL Datenbank geschrieben werden. Das herunterladen und entpacken funktioniert auch.

Der Fehler scheint beim Einlesen zu passieren:
my $xml = XML::XPath->new(filename => $xmlFile);
Log3 "MOD", 3, "Nach new";
foreach my $row ($xml->findnodes('/pack/data')) {
Log3 "MOD", 3, "In Foreach";
}

den Logeintrag "Nach new" gibt es noch, aber keinen "In Foreach" mehr.
Der Prozess der durch BlockingCall gestartet wurde, ist dann auch beendet. Fehlermeldungen finde ich weder auf der Konsole, noch im Log oder im Eventmonitor.

Wie kann ich dem Fehler auf die Spur kommen und dir Ursache beheben?

Vielen Dank!