IPC::Concurrency::DBI fails because successful DBI operations leave errstr defined
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 55/100
Research direction
Start by reproducing the minimal SQLite INSERT and inspect the bundled DBI compatibility layer that updates errstr after successful operations. Then run t/20-register_application.t, the t/30-Application tests, and t/35-get_application.t; done means successful operations leave errstr undefined and these failures pass under both backends.
Written by the indexing model from the issue text.
Description
Summary
IPC::Concurrency::DBI v1.2.0 fails under PerlOnJava even though its upstream suite passes under system Perl.
Evidence
- CPAN run:
20260928-091741-26386 - Distribution:
IPC-Concurrency-DBI v1.2.0 - System Perl: 22 test files, 103/103 tests passed.
- PerlOnJava: 12/22 test programs failed and 13/78 subtests failed.
- The failures occur in
t/20-register_application.t, thet/30-Application/...tests, andt/35-get_application.t. - Both JVM and interpreter backends reproduce the issue.
The first successful SQLite INSERT returns one affected row, but PerlOnJava reports defined($dbh->errstr) == 1 with an empty string. System Perl reports defined($dbh->errstr) == 0 after the same successful operation. IPC::Concurrency::DBI checks whether errstr is defined and therefore turns successful SQL operations into Cannot execute SQL: failures.
Minimal behavior:
my $rows = $dbh->do(
'INSERT INTO t(name,n) VALUES (?,0)', {}, 'x'
);
# PerlOnJava: rows=1, errstr defined, errstr=""
# System Perl: rows=1, errstr undef
This points to the bundled DBI compatibility layer clearing errstr to an empty defined scalar instead of undef after success.
Related issues
- DBI do() handling for MySQL SET statements (#1371)
- Delegate DBI transactions to non-JDBC drivers (#1455)
- DBD::SQLite REGEXP support (#1400)
- DBD::SQLite FTS4 custom tokenizers (#1459)
- SQLite-generated funcid values in TheSchwartz (#1320)
Dependency note
PerlOnJava uses its bundled Perl/JDBC DBI + SQLite implementation, so this is an internal DBI compatibility issue rather than an unsupported native prerequisite. A targeted DBD::SQLite reverse-dependency lookup was attempted for classification but MetaCPAN was unavailable; no dependency count is inferred.
- Dominant language
- Perl
- Stars
- 64
- Forks
- 6
- Avg merge
- 4h 29m
- Merged PRs (30d)
- 185
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from fglock/PerlOnJava
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
fglock/PerlOnJava#1579 ·
Maintainers usually reply within 1 day
-
area:cpan-port area:unicode bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
fglock/PerlOnJava#1341 ·
Maintainers usually reply within 1 day
-
area:io area:runtime bug
Difficulty 5/5 Over a week Newbie friendliness 35/100
fglock/PerlOnJava#1630 ·
Maintainers usually reply within 1 day
-
area:cpan-port area:unicode bug
Difficulty 4/5 3-5 days Newbie friendliness 48/100
fglock/PerlOnJava#1629 ·
Maintainers usually reply within 1 day
-
area:cpan-port bug
Difficulty 4/5 3-5 days Newbie friendliness 55/100
fglock/PerlOnJava#1626 ·
Maintainers usually reply within 1 day
All issues in fglock/PerlOnJava
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 3 days
-
Difficulty 1/5 Under an hour Newbie friendliness 86/100
-
language/en needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
kubernetes/website#57846 · 2 comments ·
Maintainers usually reply within 2 days
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
objectionary/eolang.sty#184 ·