Perl interpreter unexpected crash on two different computers

Posted by gosseyn on 2017-12-29 15:29

Dear all,

I'm having a very urgent issue with Active Perl on two different computers, and with different scripts. The symptoms are the following:
- A perl script is executed through the Windows explorer or called by a batch file.
- The script runs, but after a few seconds, Perl interpreter crashes with no explanation. (the issue is given with the perl522.dll file)
- This occurs on two different computers, the first one running Windows 2008 R2 Server and the other running Windows 2012 R2 Server.
- All the scripts were running perfectly for months everyday before the problem occurred two days ago.
- The server are not in the same scope and communicate only through a single FTP account, exchanging only text files.
- An anti-virus has been executed to perform an entire computer scan and found no threat.

Both computers were running Active Perl 5.22.3.2204 64 bit edition.
I have tried uninstalling the program and reinstalling with the very last version 5.24, still in 64 bits : same problem. The interpreter crashes and the scripts cannot any longer be executed. Absolutely nothing has been modified neither on the scripts or on the Active Perl installation.

Please, all help is welcome.
Thanks.

grahams
ActiveState Staff
Thu, 2018-01-04 14:22

The full text of the error message would be helpful, but Perl can only report the last step of execution. If something external to Perl (the vc runtime for example) triggers the crash, you'll only see the last good Perl context reported by Perl. System logs might have the detail from the Windows side.

Does the interpreter crash if you run interactively and then source the Perl script, or is the crash confined to running a Perl script without starting Perl first.
That might also help determine if that crash is reproducible when running as a normal userID, or if it only happens when running under a system account.

gosseyn | Wed, 2018-01-10 13:27

Dear Grahams,

Thanks a lot for anwering me, but the problem is now solved. After some discussions with the guys of the #Perl IRC channel, we found some known bug in the Perl compiler, now solved in 5.8. When writing to file handlers using the old method (file handlers with names in CAPS and without $ sign in the name), some handler names starting with letters "INF" or "NAN" make the compiler crash without any error message.

The relative bug also mentionned array name issue in this URI :

I was about to fix the issue by changing the variable names in my perl scripts.

Thanks,
Alan.