t/deep_recursion.t hangs on *BSD systems
Closed this issue · 4 comments
The test suite of Mojolicious-Plugin-TtRenderer-1.32 hangs on my FreeBSD systems. The hang happens while executing deep_recursion.t. Devel::Trace shows this line as the last one:
/home/cpansand/var/ctps/5160RC0/install/perl-5.16.0-RC0/lib/site_perl/5.16.0/Mojo/Log.pm:66: flock $handle, LOCK_EX;
This is usually happening on *BSD/Darwin systems if a temporary file created with File::Temp::tempfile() is locked later with flock(). On *BSD/Darwin systems temporary files are created with O_EXLOCK (other operating systems like Linux don't have this flag) and are already locked. To prevent this problem, use File::Temp::tempfile() with EXLOCK => 0.
Regards, Slaven
That's from the Mojolicious code rather than in this module, no?
Thanks, I've actually run into that before (and thus should have known better) I should be able to whip up a fix soon.
fixed in 1.33
Confirmed, tests pass now (FreeBSD 9.0, FreeBSD 8.0).