Subject: | Regression in 1.35 execute_for_fetch/execute_array with freetds 0.82 (current Debian stable) |
Damn it, I should have tested this more :(((
Somewhat reduced test case:
https://github.com/dbsrgits/dbix-class/blob/8c4e88c67d11ba11847e801e03a96d384ff616a5/t/746mssql.t
Available in two incarnations - one is the original execute_array()
based code (8c4e88c67) and the other the current master including the
new execute_for_fetch() based code (1d1906158).
I can try to reduce it more, let me know!
Attached is a run capture, and full level 5 traces of all 4 runs:
rabbit@Thesaurus:~/devel/dbic/dbgit$ perl Makefile.PL &>/dev/null ; git
rev-parse HEAD
8c4e88c67d11ba11847e801e03a96d384ff616a5
rabbit@Thesaurus:~/devel/dbic/dbgit$
DBI_TRACE=5=ODBC_1.33_execute_array_PASS prove -l t/746mssql.t
t/746mssql.t .. ok
Result: PASS
rabbit@Thesaurus:~/devel/dbic/dbgit$ perl Makefile.PL &>/dev/null ; git
rev-parse HEAD
1d190615808b90d101ee6c2bd6931458b861d344
rabbit@Thesaurus:~/devel/dbic/dbgit$
DBI_TRACE=5=ODBC_1.33_execute_for_fetch_PASS prove -l t/746mssql.t
Result: PASS
rabbit@Thesaurus:~/devel/dbic/dbgit$ PERL_CPANM_OPT= cpanm DBD::ODBC
--> Working on DBD::ODBC
...
Successfully installed DBD-ODBC-1.35 (upgraded from 1.33)
rabbit@Thesaurus:~/devel/dbic/dbgit$
DBI_TRACE=5=ODBC_1.35_execute_for_fetch_FAIL prove -l t/746mssql.t
t/746mssql.t .. 3/?
# Failed test 'populate with PKs supplied ok'
# at t/746mssql.t line 101.
# died: DBIx::Class::Exception (DBIx::Class::Schema::populate():
execute_for_fetch() aborted with 'failed to retrieve diags' at populate
slice:
# {
# id => 2,
# name => "woggle"
# } at t/746mssql.t line 83
# )
t/746mssql.t .. 4/?
# Failed test 'populate with PKs supplied ok'
# at t/746mssql.t line 101.
# died: DBIx::Class::Exception (DBIx::Class::Schema::populate():
execute_for_fetch() aborted with 'failed to retrieve diags' at populate
slice:
# {
# id => 3,
# name => "boggle"
# } at t/746mssql.t line 83
# )
# Looks like you failed 2 tests of 5.
t/746mssql.t .. Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/5 subtests
(less 2 skipped subtests: 1 okay)
Test Summary Report
-------------------
t/746mssql.t (Wstat: 512 Tests: 5 Failed: 2)
Failed tests: 3-4
Non-zero exit status: 2
Files=1, Tests=5, 9 wallclock secs ( 0.02 usr 0.00 sys + 0.30 cusr
0.00 csys = 0.32 CPU)
Result: FAIL
rabbit@Thesaurus:~/devel/dbic/dbgit$ perl Makefile.PL &>/dev/null ; git
rev-parse HEAD
8c4e88c67d11ba11847e801e03a96d384ff616a5
rabbit@Thesaurus:~/devel/dbic/dbgit$
DBI_TRACE=5=ODBC_1.35_execute_array_FAIL prove -l t/746mssql.t
t/746mssql.t .. 3/?
# Failed test 'populate with PKs supplied ok'
# at t/746mssql.t line 100.
# died: DBIx::Class::Exception (DBIx::Class::Schema::populate():
execute_array() aborted with 'failed to retrieve diags' at populate slice:
# {
# id => 2,
# name => "woggle"
# } at t/746mssql.t line 82
# )
t/746mssql.t .. 4/?
# Failed test 'populate with PKs supplied ok'
# at t/746mssql.t line 100.
# died: DBIx::Class::Exception (DBIx::Class::Schema::populate():
execute_array() aborted with 'failed to retrieve diags' at populate slice:
# {
# id => 2,
# name => "woggle"
# } at t/746mssql.t line 82
# )
t/746mssql.t .. 5/? # Looks like you failed 2 tests of 5.
t/746mssql.t .. Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/5 subtests
(less 2 skipped subtests: 1 okay)
Test Summary Report
-------------------
t/746mssql.t (Wstat: 512 Tests: 5 Failed: 2)
Failed tests: 3-4
Non-zero exit status: 2
Files=1, Tests=5, 10 wallclock secs ( 0.02 usr 0.00 sys + 0.30 cusr
0.02 csys = 0.34 CPU)
Result: FAIL
Subject: | ODBC_1.35_execute_for_fetch_FAIL |
Message body not shown because it is not plain text.
Subject: | ODBC_1.35_execute_array_FAIL |
Message body not shown because it is not plain text.
Subject: | ODBC_1.33_execute_array_PASS |
Message body not shown because it is not plain text.
Subject: | ODBC_1.33_execute_for_fetch_PASS |
Message body not shown because it is not plain text.