Thread panic: del_backref
(7 answers)
Opened by bened at 2009-10-03 13:06
Hallo allseits!
Ich bin gerade an der Entwicklung eines umfangreichen Template-Systems (~ 14.800 Zeilen). Seit ich das Upgrade auf Debian 5 gemacht habe (= von perl 5.8 auf perl 5.10), bekomme ich zu verschiedenen Anlässen den Fehler: "panic: del_backref at ... line x" Am Ende kommt dann manchmal noch ein "Speicherzugriffsfehler" dazu. Jetzt gemeinsam den Bug zu finden ist glaube ich fast unmöglich. Deswegen gebe ich nur mal den Hinweis, dass ich mit ge"tied"en Datenstrukturen arbeite. Um Memory-Leaks zu vermeiden muss ich da gelegentlich "weaken" aus "Scalar::Util" verwenden. Das Problem beim Debuggen ist halt, dass an jeder Stelle im Code Fehler auftreten können, die eigentlich aus den Klassen stammen, an die die Datenstrukturen gebunden sind. Den Ratschlag, doch einfach keine ties zu verwenden, erahne ich schon, den könnt ihr euch also sparen. Es ist jetzt eben erstmal so und ich will nicht hunderte von Codezeilen neu entwickeln, um diesen Design-Flaw (?) zu korrigieren. Meine eigentliche Frage ist, wie ich das Programm daraufhin debuggen kann, wo der Fehler passiert. Und was soll das überhaupt für ein Fehler sein? Der Diagnose-Text ist: "Failed an internal consistency check while trying to reset a weak reference." Was genau heißt hier eine schwache Referenz zu "resetten"? Wäre für alle Ideen und geballtes Wissen zu dem Thema sehr dankbar. |