in reply to Unexplained flock() errors

It's a system error. DBD::File is trying to flock the database file by doing a system call. This call fails, due to the shown reason.

There will be a maximum number of locks your system can deal with, and there might be a limit per user, process of file as well. You might want to consult Stevens' "Advanced programming in the UNIX environment". You also might want to consult your system administrator. Perhaps there's a process out of control, consuming all the available locks. Perhaps NFS is involved. Perhaps you need to modify a kernel parameter - which might require a kernel rebuild, which in turn might require a reboot.

There are too many unknowns to say anything concrete. It's out of Perls hand, you've entered the territory of the OS.

Abigail