clustericious / Clustericious

2 stars 3 forks source link

Tests fail (with Mojolicious 6.57?) #40

Closed eserte closed 8 years ago

eserte commented 8 years ago

t/command_plackup.t started to fail:

# TIMEOUT: giving up
# No tests run!
t/command_plackup.t ................... 
Dubious, test returned 255 (wstat 65280, 0xff00)
Failed 1/1 subtests 

Statistical analysis suggests that the problem could be caused by Mojolicious 6.57, though the evidence is not 100%:

****************************************************************
Regression 'mod:Mojolicious'
****************************************************************
Name                   Theta          StdErr     T-stat
[0='const']           1.0000          0.0523      19.13
[1='eq_6.52']        -0.0000          0.1109      -0.00
[2='eq_6.53']        -0.0000          0.0867      -0.00
[3='eq_6.54']        -0.0000          0.0640      -0.00
[4='eq_6.55']        -0.0000          0.0669      -0.00
[5='eq_6.56']         0.0000          0.1109       0.00
[6='eq_6.57']        -0.9375          0.0627     -14.96

R^2= 0.915, N= 56, K= 7
****************************************************************
eserte commented 8 years ago

Actually something else is happening here: the wrong plackup is picked in this test. Note the difference between the used perl and the used plackup (which is the the one in the user's PATH, not the one belonging to perl5.23.9):

perl5.23.9 -Mblib t/command_plackup.t 
1..1
# [extract] DIR  /tmp/Wdchcxy7Ai/my_home/bin
# [extract] FILE /tmp/Wdchcxy7Ai/my_home/bin/hello (*)
# [extract] DIR  /tmp/Wdchcxy7Ai/my_home/etc
# [extract] FILE /tmp/Wdchcxy7Ai/my_home/etc/Clustericious-HelloWorld.conf
# [mirror ] FILE /tmp/Wdchcxy7Ai/my_home/etc/nginx.conf
# [mirror ] FILE /tmp/Wdchcxy7Ai/my_home/etc/lighttpd.conf
# [mirror ] FILE /tmp/Wdchcxy7Ai/my_home/etc/hypnotoad.conf
# [mirror ] FILE /tmp/Wdchcxy7Ai/my_home/etc/apache24-cgi.conf
# [mirror ] FILE /tmp/Wdchcxy7Ai/my_home/etc/apache24-proxy.conf
# [plackup] % hello plackup
# [plackup] [err] /opt/perl-5.20.1/bin/perl: symbol lookup error: /opt/perl-5.23.9/lib/site_perl/5.23.9/x86_64-linux/auto/List/Util/Util.so: undefined symbol: Perl_xs_handshake
# TIMEOUT: giving up
# killing 25447
# No tests run!
plicease commented 8 years ago

Thanks. I may end up disabling this test unless it is explicitly enabled by the environment. This I have done for a couple of other tests as well.

eserte commented 8 years ago

I think the actual problem is that PERL5LIB was set here, and some of the modules in the active PERL5LIB were incompatible with the perl used for running plackup. This is a problem which occasionally pops up while smoking the CPAN. A possible workaround is to make sure that only a fitting plackup is used (e.g. by forcing to use something like $Config{bin}/plackup).

plicease commented 8 years ago

Even $Config{bin}/plackup could be the "wrong" one (or the "right" one could be in a different path, which is the case at $work as it happens). I am content for this to be a developer test done when I commit/release.

plicease commented 8 years ago

This should be resolved in 1.18 on its way to CPAN now.