feat: cancel queued and active SQLite reads
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 35/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- javascript, react-native, sqlite
Piste de recherche
Start by tracing the current JavaScript queue and native per-connection FIFO, then read SQLite's sqlite3_interrupt() documentation for cross-thread and transaction behavior. Add coverage for cancellation before admission, while queued in both layers, during a long-running query, and after completion. Done means cancelled reads reject recognizably, only their connection is interrupted, later queries still run, and connection closure remains safe.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Async reads can queue behind an older query even after their caller no longer needs the result. A screen that changes query parameters quickly may therefore wait for several obsolete reads. The current JavaScript queue and native per-connection FIFO have no operation-specific cancellation path.
Add cancellation for asynchronous read queries and prepared-statement reads. A request cancelled before it starts should leave both queues without running SQL. An active request should interrupt only its own connection and reject with a recognizable cancellation error. Handle the race where a query finishes while cancellation is requested, and make sure a late cancellation cannot interrupt the next job. Keep connection closure safe while an interrupt is in flight.
Start with read-only operations. SQLite can roll back an entire explicit transaction when an interrupted write fails, so cancellation of writes, batches, and callback transactions needs a separate contract. Test cancellation before admission, while queued in JavaScript, while queued natively, during a long-running query, and just after completion. Verify that later queries on the same connection still run.
Related: #62. SQLite documents the cross-thread and transaction behavior of sqlite3_interrupt() at https://www.sqlite.org/c3ref/interrupt.html.
- Langage dominant
- C
- Étoiles
- 580
- Forks
- 53
- Merge moyen
- 1 j 12 h
- PR mergées (30 j)
- 52
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de margelo/react-native-nitro-sqlite
-
feat: bind named SQL parametersOuvertearea:api area:runtime enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
margelo/react-native-nitro-sqlite#402 ·
Les mainteneurs répondent en général sous 1 jour
-
area:api area:runtime enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 28/100
margelo/react-native-nitro-sqlite#401 ·
Les mainteneurs répondent en général sous 1 jour
-
area:api area:runtime enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 28/100
margelo/react-native-nitro-sqlite#399 ·
Les mainteneurs répondent en général sous 1 jour
-
area:api area:runtime enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
margelo/react-native-nitro-sqlite#398 ·
Les mainteneurs répondent en général sous 1 jour
-
area:api area:runtime enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 48/100
margelo/react-native-nitro-sqlite#397 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de margelo/react-native-nitro-sqlite
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
-
build help wanted new feature
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
AOMediaCodec/SVT-AV1#2516 · 2 commentaires ·
-
sist2-admin: stale ocr_lang is not cleared when disabling OCR, causing scan validation failureOuvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 63/100
Les mainteneurs répondent en général sous 4 jours