in reply to Extra hash key when reading text file into hash

If you looked at your server log or whereever your STDERR is going to, you should have noticed this:
=-> perl -we 'my %hash = {}' Reference found where even-sized list expected at -e line 1. =->

So check those logs or run the script on a shell to check for errors. It saves time.