`by_pk` causes stack overflow when used with single primary key while table define composite primary key
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Start with the reported users.by_pk('0049d2d1-b433-48d7-818a-a2672ae05fa').one reproduction against the composite-primary-key users table. Trace how by_pk handles one value when the inferred schema has id and tenant_id keys; done means it raises an incorrect-number-of-arguments error instead of overflowing the stack.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
When using by_pk with one value while the table has composite primary key, ROM can raise stack overflow error.
To Reproduce
- Create a table in DB:
create table users (
id VARCHAR(50),
tenant_id VARCHAR(50),
primary key (id, tenant_id)
)
- Run the below snippet
require "rom"
rom = ROM.container(:sql, 'postgres://localhost/test') do |config|
config.relation(:users) do
schema(infer: true)
auto_struct true
end
end
users = rom.relations[:users]
users.by_pk('0049d2d1-b433-48d7-818a-a2672ae05fa').one
Expected behavior
The error should be raised with incorrect number of argument message.
My environment
- Affects my production application: NO
- Ruby version: 3.3.0
- OS: MacOS 14.4.1
- Lenguaje dominante
- Ruby
- Estrellas
- 220
- Forks
- 97
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
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 rom-rb/rom-sql
-
bug help wanted
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
-
bug help wanted
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
-
Relation#last removes combinesAbiertobug help wanted
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
-
bug help wanted
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
-
bug help wanted
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
Todos los issues de rom-rb/rom-sql
Issues similares
-
test_rescues_connection_reset_on_issue_comments_lookup fails on master and blocks every pull requestAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 91/100
zerocracy/judges-action#3142 ·
Los mantenedores suelen responder en 2 días
-
Malformed encoded_filters causes a 500, and keeps failing with session persistencePosiblemente ocupada @officialasishkumar la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
avo-hq/avo#4986 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
-
Visual COBOL: missing 11.0 and 12.0, and 9.0 date differs from Rocket Software's lifecycle pageAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
endoflife-date/endoflife.date#11561 ·
Los mantenedores suelen responder en 1 día