Performance: DateTime::Event::Holiday::US holiday-set test exceeds CPAN timeout
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- compilers, performance
Línea de trabajo
Start with the focused t/00-basic.t test in DateTime-Event-Holiday-US-0.02 and reproduce the holiday-list construction on the PerlOnJava JVM and interpreter backends. Compare the recurrence/set enumeration behavior with standard Perl, then verify that the test completes within a practical CPAN timeout without changing its 224 assertions.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
DateTime-Event-Holiday-US-0.02 runs substantially slower on PerlOnJava than on standard Perl when building the combined holiday set. The CPAN tester's 120-second timeout is too short for this test under PerlOnJava.
Reproduction
Distribution: DateTime-Event-Holiday-US-0.02
Focused test: t/00-basic.t (224 assertions)
CPAN random tester run: 20260926-090435-21478
The test reaches:
# Building list of holidays. This will take a long time.
Results:
- Standard Perl 5.42.2: all 224 assertions pass in about 16 seconds.
- PerlOnJava JVM backend: all 224 assertions pass with a 300-second timeout, completing in roughly 3 minutes; it exceeds the tester's 120-second timeout.
- PerlOnJava interpreter backend: no additional output for 60 seconds after module load and holiday-list construction began.
The same CPAN dependency overlay was used for the PerlOnJava reproduction. The distribution and its dependencies are pure Perl; no native prerequisite is involved.
Expected behavior
The test should complete within a practical CPAN compatibility timeout, closer to standard Perl performance.
Investigation requested
Please identify why recurrence/set enumeration for this workload is so much slower on PerlOnJava, and optimize or otherwise address the regression. The timeout itself is not an infinite hang: the JVM backend eventually completes successfully with a 300-second bound.
- Lenguaje dominante
- Perl
- Estrellas
- 64
- Forks
- 6
- Merge medio
- 4 h 55 min
- PR fusionados (30 d)
- 169
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de fglock/PerlOnJava
-
area:cpan-port area:unicode bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
fglock/PerlOnJava#1341 ·
Los mantenedores suelen responder en 1 día
-
area:cpan-port area:regex area:unicode bug
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
fglock/PerlOnJava#1556 ·
Los mantenedores suelen responder en 1 día
-
area:backend area:runtime bug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
fglock/PerlOnJava#1554 ·
Los mantenedores suelen responder en 1 día
-
area:cpan-port area:runtime bug
Dificultad 3/5 1-2 días Aptitud para principiantes 55/100
fglock/PerlOnJava#1552 ·
Los mantenedores suelen responder en 1 día
-
area:backend area:cpan-port bug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
fglock/PerlOnJava#1548 ·
Los mantenedores suelen responder en 1 día
Todos los issues de fglock/PerlOnJava
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
objectionary/eolang.sty#167 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
conan-io/conan-center-index#31065 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
openfoodfacts/openfoodfacts-server#14749 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
rubocop/ruby-style-guide#982 ·