perf: add an opt-in read-only connection pool
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
- 28/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Activo
- Stack tecnológico
- android, ios, react-native, sqlite
- Área
- database, mobile, performance
Línea de trabajo
Start by reviewing the existing independent read-only connection API and native FIFO behavior, then compare one connection with a small read pool on mixed read/write workloads for queue wait, query time, memory, WAL size, and battery/CPU cost on iOS and Android. Done requires recorded measurements before implementation, plus documented journal-mode and snapshot semantics and a clearly scoped opt-in pool lifecycle.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
NitroSQLite now supports independent read-only connections to one database file, but callers must create, select, and close each connection themselves. A write-heavy app with long reads may benefit from an opt-in pool that routes independent read queries across a bounded set of handles while retaining one writer connection.
Design a small pool API on top of the existing independent-connection and native FIFO behavior. Bound the connection count, preserve each connection's configuration, reject writes on reader handles, and close all handles only after outstanding work has settled or been cancelled. Document the SQLite journal mode and snapshot semantics; a pool must not silently change a database's journal mode or promise parallel writes.
Before implementation, compare one connection with a small read pool on realistic mixed read/write workloads. Record queue wait, query time, peak memory, WAL size, and battery/CPU cost on iOS and Android. Avoid a default pool until measurements show a benefit beyond the existing independent-connection API.
Related: #62, #364, #369. The independent read-only connections are already available; this issue tracks automatic routing and lifecycle only.
- Lenguaje dominante
- C
- Estrellas
- 579
- Forks
- 53
- Merge medio
- 2 d 5 h
- PR fusionados (30 d)
- 67
Preparar el entorno
- Sin Dockerfile ni 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 margelo/react-native-nitro-sqlite
-
feat: bind named SQL parametersAbiertoarea:api area:runtime enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
margelo/react-native-nitro-sqlite#402 ·
Los mantenedores suelen responder en 1 día
-
area:api area:runtime enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
margelo/react-native-nitro-sqlite#400 ·
Los mantenedores suelen responder en 1 día
-
area:api area:runtime enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 28/100
margelo/react-native-nitro-sqlite#399 ·
Los mantenedores suelen responder en 1 día
-
area:api area:runtime enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
margelo/react-native-nitro-sqlite#398 ·
Los mantenedores suelen responder en 1 día
-
area:api area:runtime enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 48/100
margelo/react-native-nitro-sqlite#397 ·
Los mantenedores suelen responder en 1 día
Todos los issues de margelo/react-native-nitro-sqlite
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
libsdl-org/SDL#16444 ·
Los mantenedores suelen responder en 1 día
-
bug Component component: net
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
RT-Thread/rt-thread#11852 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
MiSTer-devel/ao486_MiSTer#243 ·
-
Dropped last row with parallel scan of attached SQLite tables if the rowid range is a multiple of 122,880Posiblemente ocupada @staticlibs la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
duckdb/duckdb-sqlite#240 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
siderolabs/pkgs#1710 ·
Los mantenedores suelen responder en 1 día