objectbox / objectbox/objectbox-java
Detached entities 'ToMany.addAll' throws error
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 4.6k
- Forks
- 311
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Issue Basics
- ObjectBox version 1.4.4
- Reproducibility: Always
Reproducing the bug
When creating entities (for inserting into ObjectBox), the ToMany field will throw this error if I use .addAll(list) it works if I use .add(entity) in a loop over the list.
Code
entity.bodyparts.addAll(bodyparts)
Logs & stackstraces
io.objectbox.exception.DbDetachedException: Cannot resolve relation for detached entities
at io.objectbox.relation.ToMany.ensureBoxes(ToMany.java:144)
at io.objectbox.relation.ToMany.ensureEntities(ToMany.java:184)
at io.objectbox.relation.ToMany.ensureEntitiesWithTrackingLists(ToMany.java:155)
at io.objectbox.relation.ToMany.trackAdd(ToMany.java:230)
at io.objectbox.relation.ToMany.addAll(ToMany.java:264)
Entities
lateinit var bodyparts: ToMany<BodypartEntity>
Misc
As mentioned above, the issue seems to be with .addAll specifically, whereas .add does work. The issue happens with detached entities, not using @Id(assignable = true).
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
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.
Línea de trabajo
Comienza en io.objectbox.relation.ToMany.addAll en ToMany.java y compara después su recorrido por ensureBoxes, ensureEntities, ensureEntitiesWithTrackingLists y trackAdd con el bucle add funcional descrito en el informe. Se considerará terminado cuando se puedan pasar detached entities a addAll sin que se produzca una DbDetachedException, con cobertura para la reproducción indicada.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java, kotlin
- Área
- database
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 38/100