schnibitz has asked for the wisdom of the Perl Monks concerning the following question:

Hi Everyone, this is probable slightly more humorous to those of us who don't really understand what it means: "panic: MUTEX_LOCK (22) op.c:352 during global destruction." Just though y'all might want a Sunday laugh.

Replies are listed 'Best First'.
Re: Error Humor
by ikegami (Patriarch) on Jan 03, 2010 at 19:14 UTC
    "panic" indicates the program aborted due to some exceptional circumstance. In Perl, you'd use die and throw an exception instead.
Re: Error Humor
by ReturnOfThelonious (Beadle) on Jan 04, 2010 at 00:24 UTC

    It is an unexpected error at line 352 of the file "op.c" in the perl source code. This is probably caused by a bug in the perl source code, but you may be able to avoid the situation where this condition arises.

    I see one other monk who experienced this error message. Perhaps you can learn from his post.

      A panic is always an error in perl - although some can be triggered by Perl containing a syntax error (or an invalid regexp). Some are known, and some of them unlikely to get fixed any time soon ((?{ }) and (??{ }) regexp constructs for instance). Sometimes, a construct is marked experimental because it's known to trigger a panic.

      I'd say, figure out what it is you did that caused the panic, and reduce that to the shortest possible program. If it's not by a construct marked 'experimental', file a bug report. After all, one doesn't fix bugs oneself, and you don't report the bug in RT (use perlbug, not perlmonks), it's unlikely to get fixed.

        It could also be an error in XS code