This queue is for tickets about the Cache-Cache CPAN distribution.

Report information
The Basics
Id:
92600
Status:
new
Priority:
Low/Low
Queue:

People
Owner:
Nobody in particular
Requestors:
KENTNL [...] cpan.org
ether [...] cpan.org
Cc:
AdminCc:

BugTracker
Severity:
(no value)
Broken in:
1.06
Fixed in:
(no value)



Subject: Test Fails under Parallel Testing

Seems there are some shared paths between 2 or more tests causing unpredictable behaviour when those tests are run together.

Full build log showing failures attached.

But you can reproduce a subset of these failures (though it may take several runs to make it happen ) with:

 prove -b -j2 -vr t/3_test_file_cache.t  t/5_test_size_aware_file_cache.t
defined(@array) is deprecated at /home/kent/.cpanm/work/1391132572.279022/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 562.
    (Maybe you should just omit the defined()?)
===(       1;0   1/35   0/48 )==========================================defined(@array) is deprecated at /home/kent/.cpanm/work/1391132572.279022/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 562.
    (Maybe you should just omit the defined()?)
===(      65;18  33/35  32/48 )=========================================ok
t/5_test_size_aware_file_cache.t ..
ok 33
ok 34
ok 35
ok 36
ok 37
ok 38
ok 39
ok 40
ok 41
ok 42
ok 43
ok 44
ok 45
ok 46
ok 47
ok 48
Failed 5/48 subtests

Test Summary Report
-------------------
t/5_test_size_aware_file_cache.t (Wstat: 0 Tests: 48 Failed: 5)
  Failed tests:  10, 18, 24, 27, 29
Files=2, Tests=83, 23 wallclock secs ( 0.05 usr  0.00 sys +  0.24 cusr  0.07 csys =  0.36 CPU)
Result: FAIL
 


Running each test independently avoids failure case.

Subject: build.log
cpanm (App::cpanminus) 1.7001 on perl 5.019008 built for x86_64-linux Work directory is /home/kent/.cpanm/work/1391132306.278708 You have make /usr/bin/make You have LWP 6.05 You have /bin/tar: tar (GNU tar) 1.26 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by John Gilmore and Jay Fenlason. You have /usr/bin/unzip --> Working on BBYRD/Dist-Zilla-TravisCI-1.04.tar.gz Fetching http://www.cpan.org/authors/id/B/BB/BBYRD/Dist-Zilla-TravisCI-1.04.tar.gz -> OK Unpacking Dist-Zilla-TravisCI-1.04.tar.gz Entering Dist-Zilla-TravisCI-1.04 Checking configure dependencies from META.json Configuring Dist-Zilla-TravisCI-1.04 Running Makefile.PL -> OK Checking dependencies from MYMETA.json ... Checking if you have sanity 0.91 ... Yes (1.02) Checking if you have YAML 0.67 ... Yes (0.88) Checking if you have Dist::Zilla::Role::Git::Remote::Update v0.1.1 ... Yes (0.1.2) Checking if you have MooseX::Types::Moose 0 ... Yes (0.41) Checking if you have Dist::Zilla::Plugin::Git::Check 1.093250 ... Yes (2.019) Checking if you have Dist::Zilla 1.093220 ... Yes (5.012) Checking if you have Dist::Zilla::Role::Git::Remote::Check v0.1.1 ... Yes (0.1.2) Checking if you have MooseX::Has::Sugar 0.0100 ... Yes (1.000000) Checking if you have Dist::Zilla::Role::Git::DirtyFiles 1.100740 ... Yes (2.019) Checking if you have Dist::Zilla::Role::Git::Repo 1.113220 ... Yes (2.019) Checking if you have File::Slurp 9999.14 ... Yes (9999.19) Checking if you have Dist::Zilla::Role::Git::Remote::Branch v0.1.1 ... Yes (0.1.2) Checking if you have Moose::Autobox 0.09 ... Yes (0.15) Checking if you have Dist::Zilla::Role::Git::Remote v0.1.1 ... Yes (0.1.2) Checking if you have Test::CheckDeps 0.002 ... Yes (0.010) Checking if you have Dist::Zilla::Role::MetaCPANInterfacer 0.90 ... No Checking if you have Test::More 0.94 ... Yes (1.001002) Checking if you have List::AllUtils 0.01 ... Yes (0.07) Checking if you have Dist::Zilla::Role::Git::LocalRepository v0.1.1 ... Yes (0.1.2) Checking if you have Test::Most 0.01 ... Yes (0.33) Checking if you have Moose 0.34 ... Yes (2.1202) Checking if you have Test::Pod 1.41 ... Yes (1.48) Checking if you have Test::DZil 4.200002 ... Yes (5.012) ==> Found dependencies: Dist::Zilla::Role::MetaCPANInterfacer Searching Dist::Zilla::Role::MetaCPANInterfacer on cpanmetadb ... --> Working on Dist::Zilla::Role::MetaCPANInterfacer Fetching http://www.cpan.org/authors/id/B/BB/BBYRD/Dist-Zilla-Role-MetaCPANInterfacer-0.96.tar.gz -> OK Unpacking Dist-Zilla-Role-MetaCPANInterfacer-0.96.tar.gz Entering Dist-Zilla-Role-MetaCPANInterfacer-0.96 Checking configure dependencies from META.json Configuring Dist-Zilla-Role-MetaCPANInterfacer-0.96 Running Makefile.PL -> OK Checking dependencies from MYMETA.json ... Checking if you have Path::Class 0.17 ... Yes (0.33) Checking if you have List::AllUtils 0.01 ... Yes (0.07) Checking if you have sanity 0.91 ... Yes (1.02) Checking if you have CHI 0.01 ... Yes (0.58) Checking if you have MetaCPAN::API 0.02 ... Yes (0.43) Checking if you have Moose::Role 0.07 ... Yes (2.1202) Checking if you have Test::CheckDeps 0.002 ... Yes (0.010) Checking if you have Test::UseAllModules 0.10 ... Yes (0.14) Checking if you have WWW::Mechanize::Cached::GZip 0.10 ... No Checking if you have Moose 0.34 ... Yes (2.1202) Checking if you have namespace::clean 0.06 ... Yes (0.24) Checking if you have Test::Most 0.01 ... Yes (0.33) Checking if you have File::HomeDir 0 ... Yes (1.00) Checking if you have HTTP::Tiny::Mech v0.1.0 ... Yes (0.2.1) ==> Found dependencies: WWW::Mechanize::Cached::GZip Searching WWW::Mechanize::Cached::GZip on cpanmetadb ... --> Working on WWW::Mechanize::Cached::GZip Fetching http://www.cpan.org/authors/id/P/PE/PEGI/WWW-Mechanize-Cached-GZip-0.12.tar.gz -> OK Unpacking WWW-Mechanize-Cached-GZip-0.12.tar.gz Entering WWW-Mechanize-Cached-GZip-0.12 Checking configure dependencies from META.yml Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.86) Configuring WWW-Mechanize-Cached-GZip-0.12 Running Makefile.PL -> OK Checking dependencies from MYMETA.json ... Checking if you have WWW::Mechanize::Cached 0 ... No Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.86) Checking if you have WWW::Mechanize::GZip 0 ... Yes (0.12) Checking if you have Test::More 0 ... Yes (1.001002) ==> Found dependencies: WWW::Mechanize::Cached Searching WWW::Mechanize::Cached on cpanmetadb ... --> Working on WWW::Mechanize::Cached Fetching http://www.cpan.org/authors/id/O/OA/OALDERS/WWW-Mechanize-Cached-1.43.tar.gz -> OK Unpacking WWW-Mechanize-Cached-1.43.tar.gz Entering WWW-Mechanize-Cached-1.43 Checking configure dependencies from META.json Checking if you have ExtUtils::MakeMaker 6.30 ... Yes (6.86) Checking if you have Module::Build 0.3601 ... Yes (0.4204) Checking if you have Module::Build 0.36 ... Yes (0.4204) Configuring WWW-Mechanize-Cached-1.43 Running Build.PL -> OK Checking dependencies from MYMETA.json ... Checking if you have constant 0 ... Yes (1.31) Checking if you have Devel::SimpleTrace 0 ... Yes (0.08) Checking if you have Find::Lib 0 ... Yes (1.04) Checking if you have Carp 0 ... Yes (1.32) Checking if you have lib 0 ... Yes (0.63) Checking if you have strict 0 ... Yes (1.08) Checking if you have WWW::Mechanize 0 ... Yes (1.73) Checking if you have Module::Build 0.3601 ... Yes (0.4204) Checking if you have vars 0 ... Yes (1.03) Checking if you have Path::Class 0 ... Yes (0.33) Checking if you have Cache::FileCache 0 ... No Checking if you have File::Spec 0 ... Yes (3.40) Checking if you have Test::More 0 ... Yes (1.001002) Checking if you have Data::Dump 0 ... Yes (1.22) Checking if you have Moose 0 ... Yes (2.1202) Checking if you have warnings 0 ... Yes (1.21) Checking if you have HTTP::Request 0 ... Yes (6.00) Checking if you have Storable 2.21 ... Yes (2.48) ==> Found dependencies: Cache::FileCache Searching Cache::FileCache on cpanmetadb ... --> Working on Cache::FileCache Fetching http://www.cpan.org/authors/id/J/JS/JSWARTZ/Cache-Cache-1.06.tar.gz -> OK Unpacking Cache-Cache-1.06.tar.gz Entering Cache-Cache-1.06 Checking configure dependencies from META.yml Configuring Cache-Cache-1.05 Running Makefile.PL -> OK Checking dependencies from MYMETA.json ... Checking if you have ExtUtils::MakeMaker 0 ... Yes (6.86) Checking if you have Storable 1.014 ... Yes (2.48) Checking if you have File::Spec 0.82 ... Yes (3.40) Checking if you have Digest::SHA1 2.02 ... Yes (2.13) Checking if you have Error 0.15 ... Yes (0.17022) Building and testing Cache-Cache-1.06 cp lib/Cache/MemoryCache.pm blib/lib/Cache/MemoryCache.pm cp lib/Cache/NullCache.pm blib/lib/Cache/NullCache.pm cp lib/Cache/MemoryBackend.pm blib/lib/Cache/MemoryBackend.pm cp lib/Cache/FileBackend.pm blib/lib/Cache/FileBackend.pm cp lib/Cache/FileCache.pm blib/lib/Cache/FileCache.pm cp lib/Cache/CacheMetaData.pm blib/lib/Cache/CacheMetaData.pm cp lib/Cache/Cache.pm blib/lib/Cache/Cache.pm cp lib/Cache/Object.pm blib/lib/Cache/Object.pm cp lib/Cache/CacheSizer.pm blib/lib/Cache/CacheSizer.pm cp lib/Cache/SizeAwareMemoryCache.pm blib/lib/Cache/SizeAwareMemoryCache.pm cp lib/Cache/CacheUtils.pm blib/lib/Cache/CacheUtils.pm cp lib/Cache/SharedMemoryCache.pm blib/lib/Cache/SharedMemoryCache.pm cp lib/Cache/SizeAwareSharedMemoryCache.pm blib/lib/Cache/SizeAwareSharedMemoryCache.pm cp lib/Cache/SizeAwareCache.pm blib/lib/Cache/SizeAwareCache.pm cp lib/Cache/SizeAwareCacheTester.pm blib/lib/Cache/SizeAwareCacheTester.pm cp lib/Cache/SizeAwareFileCache.pm blib/lib/Cache/SizeAwareFileCache.pm cp lib/Cache/BaseCache.pm blib/lib/Cache/BaseCache.pm cp lib/Cache/CacheTester.pm blib/lib/Cache/CacheTester.pm cp lib/Cache/SharedMemoryBackend.pm blib/lib/Cache/SharedMemoryBackend.pm cp lib/Cache/BaseCacheTester.pm blib/lib/Cache/BaseCacheTester.pm Manifying blib/man3/Cache::BaseCache.3 Manifying blib/man3/Cache::BaseCacheTester.3 Manifying blib/man3/Cache::Cache.3 Manifying blib/man3/Cache::CacheMetaData.3 Manifying blib/man3/Cache::CacheSizer.3 Manifying blib/man3/Cache::CacheTester.3 Manifying blib/man3/Cache::CacheUtils.3 Manifying blib/man3/Cache::FileBackend.3 Manifying blib/man3/Cache::FileCache.3 Manifying blib/man3/Cache::MemoryBackend.3 Manifying blib/man3/Cache::MemoryCache.3 Manifying blib/man3/Cache::NullCache.3 Manifying blib/man3/Cache::Object.3 Manifying blib/man3/Cache::SharedMemoryBackend.3 Manifying blib/man3/Cache::SharedMemoryCache.3 Manifying blib/man3/Cache::SizeAwareCache.3 Manifying blib/man3/Cache::SizeAwareCacheTester.3 Manifying blib/man3/Cache::SizeAwareFileCache.3 Manifying blib/man3/Cache::SizeAwareMemoryCache.3 Manifying blib/man3/Cache::SizeAwareSharedMemoryCache.3 PERL_DL_NONLAZY=1 /home/kent/perl5/perlbrew/perls/perl-5.19.8/bin/perl5.19.8 "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/1_test_cache_interface.t t/2_test_memory_cache.t t/3_test_file_cache.t t/5_test_size_aware_file_cache.t t/6_test_size_aware_memory_cache.t t/1_test_cache_interface.t .......... ok defined(@array) is deprecated at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 562. (Maybe you should just omit the defined()?) defined(@array) is deprecated at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 562. (Maybe you should just omit the defined()?) defined(@array) is deprecated at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 562. (Maybe you should just omit the defined()?) Error: Error in tempfile() using template /tmp/FileCache/Default/9/1/7/XXXXXXXXXX: Parent directory (/tmp/FileCache/Default/9/1/7/) does not exist at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/FileBackend.pm line 567. Error in tempfile() using template /tmp/FileCache/Default/9/1/7/XXXXXXXXXX: Parent directory (/tmp/FileCache/Default/9/1/7/) does not exist at /home/kent/perl5/perlbrew/perls/perl-5.19.8/lib/site_perl/5.19.8/Error.pm line 40. Error::_throw_Error_Simple(HASH(0x1efaf20)) called at /home/kent/perl5/perlbrew/perls/perl-5.19.8/lib/site_perl/5.19.8/Error.pm line 312 Error::subs::run_clauses(HASH(0x1efae78), "Error in tempfile() using template /tmp/FileCache/Default/9/1"..., undef, ARRAY(0x2003fa0)) called at /home/kent/perl5/perlbrew/perls/perl-5.19.8/lib/site_perl/5.19.8/Error.pm line 432 Error::subs::try(CODE(0x1efac38), HASH(0x1efae78)) called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 59 Cache::CacheTester::test(Cache::CacheTester=HASH(0x1efabf0), Cache::SizeAwareFileCache=HASH(0x1ee8ed8)) called at t/5_test_size_aware_file_cache.t line 41 Error: Couldn't rename /tmp/FileCache/Default/9/1/7/V6KtW7hvIX to /tmp/FileCache/Default/9/1/7/917f21d2a3bc8c653bca5f5a9294c237c03bddf6: No such file or directory at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/FileBackend.pm line 578. Couldn't rename /tmp/FileCache/Default/9/1/7/V6KtW7hvIX to /tmp/FileCache/Default/9/1/7/917f21d2a3bc8c653bca5f5a9294c237c03bddf6: No such file or directory at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/FileBackend.pm line 578. Cache::FileBackend::_Write_File("/tmp/FileCache/Default/9/1/7/917f21d2a3bc8c653bca5f5a9294c237"..., SCALAR(0x1af5f70)) called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/FileBackend.pm line 682 Cache::FileBackend::_write_data(Cache::FileBackend=HASH(0x166bf38), "/tmp/FileCache/Default/9/1/7/917f21d2a3bc8c653bca5f5a9294c237"..., ARRAY(0x166c5c8)) called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/FileBackend.pm line 139 Cache::FileBackend::store(Cache::FileBackend=HASH(0x166bf38), "Default", "Test Key", Cache::Object=HASH(0x166c520)) called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/BaseCache.pm line 295 Cache::BaseCache::set_object(Cache::FileCache=HASH(0x163ed40), "Test Key", Cache::Object=HASH(0x166c340)) called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/BaseCache.pm line 278 Cache::BaseCache::set(Cache::FileCache=HASH(0x163ed40), "Test Key", "Test Value") called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 75 Cache::CacheTester::_test_one(Cache::CacheTester=HASH(0x166bf20), Cache::FileCache=HASH(0x163ed40)) called at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 32 Cache::CacheTester::test(Cache::CacheTester=HASH(0x166bf20), Cache::FileCache=HASH(0x163ed40)) called at t/3_test_file_cache.t line 41 t/3_test_file_cache.t ............... Failed 33/35 subtests defined(@array) is deprecated at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheTester.pm line 562. (Maybe you should just omit the defined()?) t/5_test_size_aware_file_cache.t .... Failed 31/48 subtests t/2_test_memory_cache.t ............. ok Couldn't limit size to 28 at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/CacheSizer.pm line 92. Use of uninitialized value $first_value in string eq at /home/kent/.cpanm/work/1391132306.278708/Cache-Cache-1.06/blib/lib/Cache/SizeAwareCacheTester.pm line 149. t/6_test_size_aware_memory_cache.t .. Failed 1/48 subtests Test Summary Report ------------------- t/3_test_file_cache.t (Wstat: 0 Tests: 2 Failed: 0) Parse errors: Bad plan. You planned 35 tests but ran 2. t/5_test_size_aware_file_cache.t (Wstat: 0 Tests: 17 Failed: 0) Parse errors: Bad plan. You planned 48 tests but ran 17. t/6_test_size_aware_memory_cache.t (Wstat: 0 Tests: 48 Failed: 1) Failed test: 45 Files=5, Tests=103, 24 wallclock secs ( 0.06 usr 0.01 sys + 0.31 cusr 0.07 csys = 0.45 CPU) Result: FAIL Failed 3/5 test programs. 1/103 subtests failed. make: *** [test_dynamic] Error 255 -> FAIL Installing Cache::FileCache failed. See /home/kent/.cpanm/work/1391132306.278708/build.log for details. Retry with --force to force install it. -> FAIL Installing the dependencies failed: Module 'Cache::FileCache' is not installed -> FAIL Bailing out the installation for WWW-Mechanize-Cached-1.43. -> FAIL Installing the dependencies failed: Module 'WWW::Mechanize::Cached' is not installed -> FAIL Bailing out the installation for WWW-Mechanize-Cached-GZip-0.12. -> FAIL Installing the dependencies failed: Module 'WWW::Mechanize::Cached::GZip' is not installed -> FAIL Bailing out the installation for Dist-Zilla-Role-MetaCPANInterfacer-0.96. -> FAIL Installing the dependencies failed: Module 'Dist::Zilla::Role::MetaCPANInterfacer' is not installed -> FAIL Bailing out the installation for Dist-Zilla-TravisCI-1.04.
On 2014-01-30 17:53:00, KENTNL wrote:
Show quoted text
> Seems there are some shared paths between 2 or more tests causing > unpredictable > behaviour when those tests are run together.
It looks like there is no way to use separate cache files in different bits of code! So this is a more serious issue than just in the tests -- any sort of parallelism will fail in the same way.


This service runs on Request Tracker, is sponsored by The Perl Foundation, and maintained by Best Practical Solutions.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.