Unclear Memory Ownership and Lifetimes
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Documentación
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- pandas, python
Línea de trabajo
Lee la sección sobre el alcance “Memory Ownership and Lifetimes” del documento de la API de dataframe y compárala con la especificación de gestión de memoria de Arrow C Data Interface enlazada. Usa el fallo del ciclo de vida de los datos de tipo string de pandas descrito aquí para identificar las indicaciones que faltan; el trabajo está terminado cuando el documento de la API define claramente las expectativas de propiedad y ciclo de vida para este caso.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I see the scope of the dataframe api mentions "Memory Ownership and Lifetimes" as In Scope, but I couldn't find anything in else in the document that actually enforces this.
While trying to use the dataframe api with pandas, I ran into an issue where the current pandas implementation to write string data makes a temporary buffer whose lifetime has nothing to do with the dataframe itself. I found this because I wrote an extension that assumed the lifetime of a buffer in the dataframe API was the same as the producing dataframe. That held while I was using primitive types but once I tried to use strings I started seeing segfaults.
My first thought was that pandas was doing something wrong, but without any guidance from the document it is hard to make that judgment.
By contrast, the Arrow C Data specification (which I ultimately ended up using) has well defined semantics for memory management:
https://arrow.apache.org/docs/format/CDataInterface.html#memory-management
- Lenguaje dominante
- Python
- Estrellas
- 106
- Forks
- 22
- Métricas de merge de PR
- Sin PR fusionados en 30 d
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.
Más de data-apis/dataframe-api
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
data-apis/dataframe-api#363 · 1 comentario · 8 reacciones ·
-
Row ordering design choice AbiertoAPI design
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
data-apis/dataframe-api#356 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
data-apis/dataframe-api#355 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
data-apis/dataframe-api#352 ·
-
documentation
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
data-apis/dataframe-api#314 · 1 comentario ·
Todos los issues de data-apis/dataframe-api
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stephrobert/dsoxlab#238 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
sublimehq/package_control#1780 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
nwg-piotr/nwg-displays#145 ·