Skip to content

Instantly share code, notes, and snippets.

@stefansbv
Created November 5, 2017 13:10
Show Gist options
  • Save stefansbv/9f57e627007aea56f6ecbe08daa190e5 to your computer and use it in GitHub Desktop.
Save stefansbv/9f57e627007aea56f6ecbe08daa190e5 to your computer and use it in GitHub Desktop.
Debug Sqitch firebird test failure
### A random error on the theory/master branch:
t/firebird.t (Wstat: 11 Tests: 78 Failed: 0)
Non-zero wait status: 11
### Sometimes:
Error in perl corrupted double-linked list
###
ok 369 - with_registry_prefix feature
1..369
ok 79 - live database
Can't locate object method "type" via package "Test::Builder::Result::Plan" at .../perl5/perlbrew/perls/5.20.2t/lib/site_perl/5.20.2/Test/Builder/Formatter.pm line 17.
# Looks like your test exited with 255 just after 79.
Dubious, test returned 255 (wstat 65280, 0xff00)
All 79 subtests passed
###
ok 12 - Create engine with alternate params
*** Error in `.../perl5/perlbrew/perls/5.20.2t/bin/perl': free(): invalid pointer: 0x0000000004b6bfe0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x776f4)[0x7f123811e6f4]
/lib64/libc.so.6(+0x7f57a)[0x7f123812657a]
/lib64/libc.so.6(cfree+0xf7)[0x7f123812acc7]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(Perl_sv_setsv_cow+0x41)[0x4c0e21]
.../perl5/perlbrew/perls/5.20.2t/bin/perl[0x50943d]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(Perl_regexec_flags+0x904)[0x5171e4]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(Perl_pp_match+0x1de)[0x4ad31e]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(Perl_runops_standard+0x16)[0x4a97a6]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(perl_run+0x1f5)[0x43cf95]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(main+0x12b)[0x41b88b]
/lib64/libc.so.6(__libc_start_main+0xf0)[0x7f12380c77d0]
.../perl5/perlbrew/perls/5.20.2t/bin/perl(_start+0x29)[0x41b8c9]
======= Memory map: ========
...
###
ok 369 - with_registry_prefix feature
1..369
ok 79 - live database
1..79
All 79 subtests passed
Test Summary Report
-------------------
t/firebird.t (Wstat: 11 Tests: 79 Failed: 0)
Non-zero wait status: 11
###
ok 369 - with_registry_prefix feature
1..369
*** Error in `.../perl5/perlbrew/perls/5.22.0t/bin/perl': corrupted double-linked list: 0x000000000426fd70 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x776f4)[0x7f1feaba46f4]
/lib64/libc.so.6(+0x7e838)[0x7f1feabab838]
/lib64/libc.so.6(+0x8152e)[0x7f1feabae52e]
/lib64/libc.so.6(+0x829c0)[0x7f1feabaf9c0]
/lib64/libc.so.6(realloc+0x179)[0x7f1feabb0f19]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(Perl_safesysrealloc+0x2a)[0x4980ca]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(Perl_av_extend_guts+0xf2)[0x4b4352]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(Perl_stack_grow+0x23)[0x4ee8f3]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(Perl_pp_flop+0x874)[0x4f9534]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(Perl_runops_standard+0x16)[0x4b5c86]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(perl_run+0x21d)[0x44470d]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(main+0x12b)[0x41e2cb]
/lib64/libc.so.6(__libc_start_main+0xf0)[0x7f1feab4d7d0]
.../perl5/perlbrew/perls/5.22.0t/bin/perl(_start+0x29)[0x41e309]
###
$ MALLOC_CHECK_=3 prove -lv t/firebird.t
ok 23 - And it should show the proper schema in the error message
not ok 24 - Database error should be converted to Sqitch exception
# Failed test 'Database error should be converted to Sqitch exception'
# at t/lib/DBIEngineTest.pm line 171.
# expecting: App::Sqitch::X
# found: Can't locate object method "state" via package "DBI::db" at .../project/public/sqitch-prefix/lib/App/Sqitch/Engine/firebird.pm line 86.
# Looks like you planned 0 tests but ran 24.
# Looks like you failed 1 test of 24 run.
not ok 79 - live database
# Failed test 'live database'
# at t/lib/DBIEngineTest.pm line 1789.
Can't locate object method "ident" via package "Can't locate object method "state" via package "DBI::db" at .../project/public/sqitch-prefix/lib/App/Sqitch/Engine/firebird.pm line 86.
" (perhaps you forgot to load "Can't locate object method "state" via package "DBI::db" at .../project/public/sqitch-prefix/lib/App/Sqitch/Engine/firebird.pm line 86.
"?) at t/lib/DBIEngineTest.pm line 173.
# Tests were run but no plan was declared and done_testing() was not seen.
# Looks like your test exited with 255 just after 79.
###
ok 79 - live database
2..79
*** Error in `.../perl5/perlbrew/perls/5.24.0t/bin/perl': free(): invalid pointer: 0x0000000003a7c4c0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x79745)[0x7f8efff2c745]
/lib64/libc.so.6(+0x81fca)[0x7f8efff34fca]
/lib64/libc.so.6(cfree+0x127)[0x7f8efff39697]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(Perl_hv_undef_flags+0x5b)[0x4b7bab]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(Perl_sv_clear+0x26e)[0x4c774e]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(Perl_sv_free2+0x5d)[0x4c7ecd]
.../perl5/perlbrew/perls/5.24.0t/bin/perl[0x4c603b]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(Perl_sv_clean_objs+0x24)[0x4c8284]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(perl_destruct+0x1e4)[0x43ed64]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(main+0xf3)[0x41d523]
/lib64/libc.so.6(__libc_start_main+0xf0)[0x7f8effed3350]
.../perl5/perlbrew/perls/5.24.0t/bin/perl(_start+0x29)[0x41d599]
======= Memory map: ========
###
$ MALLOC_CHECK_=2 prove -lv t/firebird.t
ok 23 - And it should show the proper schema in the error message
not ok 24 - Database error should be converted to Sqitch exception
# Failed test 'Database error should be converted to Sqitch exception'
# at t/lib/DBIEngineTest.pm line 171.
# expecting: App::Sqitch::X
# found: Can't locate object method "state" via package "DBI::db" at .../project/public/sqitch-prefix/lib/App/Sqitch/Engine/firebird.pm line 86.
# Looks like you planned 0 tests but ran 24.
# Looks like you failed 1 test of 24 run.
not ok 79 - live database
# Failed test 'live database'
# at t/lib/DBIEngineTest.pm line 1789.
Can't locate object method "ident" via package "Can't locate object method "state" via package "DBI::db" at .../project/public/sqitch-prefix/lib/App/Sqitch/Engine/firebird.pm line 86.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment