SQLite column_info statement is inactive, breaking ActiveRecord auto_load
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 85/100
Piste de recherche
Commencez par src/main/java/org/perlonjava/runtime/perlmodule/DBI.java et le point d’entrée columnInfoViaPragma, puis examinez src/main/perl/lib/DBI.pm fetchall_arrayref et sa vérification de Active. Exécutez t/07-auto_load.t ; cela signifie que les lignes SQLite column_info sont renvoyées et que les accesseurs first_name et id passent.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Summary
ActiveRecord::Simple 1.11 fails to discover SQLite columns on PerlOnJava because the synthetic statement handle returned by SQLite DBI.column_info is not marked active. The bundled DBI.pm implementation of fetchall_arrayref returns undef immediately for an inactive statement handle, so auto_load receives no columns and does not generate column accessors.
This causes t/07-auto_load.t to fail its first_name and id accessor assertions.
Evidence
- CPAN random tester run:
20261002-084902-54310 - Distribution/version:
ActiveRecord-Simple1.11 - System Perl 5.42.2 on macOS 26.6.2 arm64: all 16 test files passed (206 tests).
- PerlOnJava 5.44.1, build
f25d551c1, Java 24.0.2 on macOS 26.6.2 arm64:t/07-auto_load.treproducibly fails tests 2 and 3 on both JVM and interpreter backends. - A focused metadata check returned
COLUMN_NAMErows throughcolumn_info, butfetchall_arrayref({})yielded no rows; afterauto_load,Customer->can('first_name')andCustomer->can('id')were false.
Suspected cause
columnInfoViaPragma in src/main/java/org/perlonjava/runtime/perlmodule/DBI.java stores the rows in _pragma_rows, but unlike the ordinary metadata result handle it does not set the statement handle's Active flag. src/main/perl/lib/DBI.pm checks $sth->{Active} at the start of fetchall_arrayref and returns undef when false.
Expected result
The synthetic SQLite metadata statement should behave as an active DBI statement handle, and fetchall_arrayref({}) should return the column rows so auto_load can generate accessors.
The same CPAN run also found a separate SQLite identifier quoting failure for a table named order; that behavior is tracked separately.
- Langage dominant
- Perl
- Étoiles
- 64
- Forks
- 8
- Merge moyen
- 5 h 39 min
- PR mergées (30 j)
- 213
Préparer son environnement
- Fournit un Dockerfile ou un fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de fglock/PerlOnJava
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
fglock/PerlOnJava#1579 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 48/100
fglock/PerlOnJava#1835 ·
Les mainteneurs répondent en général sous 1 jour
-
area:cpan-port bug
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
fglock/PerlOnJava#1820 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 Une demi-journée Accessibilité débutants 45/100
fglock/PerlOnJava#1808 ·
Les mainteneurs répondent en général sous 1 jour
-
area:cpan-port area:runtime bug
Difficulté 4/5 3-5 jours Accessibilité débutants 28/100
fglock/PerlOnJava#1802 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de fglock/PerlOnJava
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
libwww-perl/URI#211 ·
-
Type: Bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
inverse-inc/packetfence#9549 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 80/100
jimsalterjrs/sanoid#1116 · 1 réaction ·
-
Add .gitattributes so share/skel keeps LF on a Windows git checkoutPeut-être pris @sadhana-s-codez l’a pris il y a 4 jours. Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
PerlDancer/Dancer2#1854 · 1 commentaire ·
Les mainteneurs répondent en général sous 2 jours