Bug#881291: libdbd-sqlite3-perl FTBFS with libsqlite3-dev 3.21.0-1

Florian Schlichting fsfs at debian.org
Tue Nov 14 22:13:35 UTC 2017


Control: Forwarded 881291 https://github.com/DBD-SQLite/DBD-SQLite/issues/28

> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/libdbd-sqlite3-perl.html
> 
> ...
> Test Summary Report
> -------------------
> t/virtual_table/rt_99748.t                          (Wstat: 512 Tests: 24 Failed: 1)
>   Failed test:  24
>   Non-zero exit status: 2
>   Parse errors: Bad plan.  You planned 52 tests but ran 24.
> Files=105, Tests=3555, 22 wallclock secs ( 0.81 usr  0.26 sys + 12.46 cusr  1.88 csys = 15.41 CPU)
> Result: FAIL
> Failed 1/105 test programs. 1/3555 subtests failed.
> Makefile:1078: recipe for target 'test_dynamic' failed
> make[1]: *** [test_dynamic] Error 2


I can confirm that it fails with libsqlite3-dev 3.21.0-1 and does not fail
with 3.20.1-2, all else being equal.

The test fails because of two warnings about uninitialized values, which
lead to a syntax error (missing operator) in the generated/eval'd code:

couldn't eval q{sub {my ($self, $i) = @_; my $row = $self->row($i); (defined($row->[1]) && defined($vals[0]) && $row->[1]  $vals[0])}} : syntax error at (eval 19) line 1, near "]  $vals"

#   Failed test 'no warnings'
#   at /usr/share/perl/5.26/Test/Builder.pm line 135.
# There were 2 warning(s)
#       Previous test 23 'SELECT rowid FROM vtb WHERE c = 'six''
#       Use of uninitialized value $op in pattern match (m//) at /home/fs/src/pkg-perl/git/packages/libdbd-sqlite3-perl/blib/lib/DBD/SQLite/VirtualTable/PerlData.pm line 104.
#  at /home/fs/src/pkg-perl/git/packages/libdbd-sqlite3-perl/blib/lib/DBD/SQLite/VirtualTable/PerlData.pm line 104.
#       DBD::SQLite::VirtualTable::PerlData::BEST_INDEX(DBD::SQLite::VirtualTable::PerlData=HASH(0x557070b2ec60), ARRAY(0x557070b277e8), ARRAY(0x557070b271e8)) called at /home/fs/src/pkg-perl/git/packages/libdbd-sqlite3-perl/blib/lib/DBD/SQLite.pm line 202
#       DBD::SQLite::db::prepare(DBI::db=HASH(0x557070b15c60), "SELECT a FROM vtb WHERE b IS NULL ORDER BY a", undef) called at /usr/lib/x86_64-linux-gnu/perl5/5.26/DBI.pm line 1690
#       DBD::_::db::selectcol_arrayref(DBI::db=HASH(0x557070b15c60), "SELECT a FROM vtb WHERE b IS NULL ORDER BY a") called at t/virtual_table/rt_99748.t line 80
#       main::test_table(DBI::db=HASH(0x557070b15d08), "vtb") called at t/virtual_table/rt_99748.t line 57
# 
# ----------
#       Previous test 23 'SELECT rowid FROM vtb WHERE c = 'six''
#       Use of uninitialized value $op in concatenation (.) or string at /home/fs/src/pkg-perl/git/packages/libdbd-sqlite3-perl/blib/lib/DBD/SQLite/VirtualTable/PerlData.pm line 108.
#  at /home/fs/src/pkg-perl/git/packages/libdbd-sqlite3-perl/blib/lib/DBD/SQLite/VirtualTable/PerlData.pm line 108.
#       DBD::SQLite::VirtualTable::PerlData::BEST_INDEX(DBD::SQLite::VirtualTable::PerlData=HASH(0x557070b2ec60), ARRAY(0x557070b277e8), ARRAY(0x557070b271e8)) called at /home/fs/src/pkg-perl/git/packages/libdbd-sqlite3-perl/blib/lib/DBD/SQLite.pm line 202
#       DBD::SQLite::db::prepare(DBI::db=HASH(0x557070b15c60), "SELECT a FROM vtb WHERE b IS NULL ORDER BY a", undef) called at /usr/lib/x86_64-linux-gnu/perl5/5.26/DBI.pm line 1690
#       DBD::_::db::selectcol_arrayref(DBI::db=HASH(0x557070b15c60), "SELECT a FROM vtb WHERE b IS NULL ORDER BY a") called at t/virtual_table/rt_99748.t line 80
#       main::test_table(DBI::db=HASH(0x557070b15d08), "vtb") called at t/virtual_table/rt_99748.t line 57
# 
# Looks like your test exited with 2 just after 24.
t/virtual_table/rt_99748.t ............................

Florian



More information about the pkg-perl-maintainers mailing list