MT-Blacklist 1.65, Movable Type 2.65 and Perl 5.8.8
My hosting provider recently updated the server this site is on, and in that process Perl was upgraded to version 5.8.8. Everything seemed to work fine until I started getting hit by comment spam. A quick investigation revealed that MT-Blacklist had stopped working. Not good.
MT-Blacklist kept causing this error:
Long integer size is not compatible at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/thaw.al) line 366, at [path to MT directory]/lib/MT/PluginData.pm line 28
This is slightly different from the problem I got in May last year (described in Server maintenance), and googling for it returned only one hit: Problemas con blacklist. I don’t speak Spanish, but I could make out enough of the post to realise that MT-Blacklist 1.65 is somehow not compatible with Perl 5.8.8. Sigh.
Yes, I am a dinosaur for still using Movable Type, and even more so for being stuck at version 2.65. But I’ve hacked and tweaked this installation so much I am terrified of attempting to upgrade. I just don’t have the time to deal with all the problems I would run into.
So, I really needed to get MT-Blacklist up and running again. If I couldn’t, I would have to either spend days on upgrading Movable Type, migrating to another CMS, or spend hours every week to manually remove spam. I considered building a spam filter from scratch, and even started doing so. Despite my primitive Perl skills I managed to come up with something that worked. But it wasn’t as good or elegant as MT-Blacklist.
Eventually I did find a solution, so in case someone else is having the same problem, here is how to fix it:
- Make a backup of your
- Delete all records in the
mt_plugindatatable, as suggested in MT-Blacklist Error : Byte order is not compatible.
- Go to the MT-Blacklist Configure tab and reactivate MT-Blacklist.
- Go to the MT-Blacklist Add tab and import the contents of
- Sit back and relax. View your activity log every now and then and smile when you see all those “MT-Blacklist comment denial” entries.
- Previous post: Why is the style attribute allowed in strict doctypes?
- Next post: Indicating language choice on the Web