Query DB: measure repeated legacy-owner key parsing
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 22/100
- Type d'issue
- Refactorisation
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- typescript
- Domaine
- data-engineering
Piste de recherche
Start in packages/query-db-collection/src/query.ts at getLegacyOwnerHashes, where candidates are built from persisted owner hashes and retention markers and JSON-parsed per eligible equality demand. Write a benchmark that varies owner count, demand count and marker count to measure parsing cost. Done means a measured result showing whether an index built once per metadata generation is worth it, with the static-key prefix and markerless-owner migration checks still passing.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Observation
PR #2134 performs one persisted-row metadata scan per sync run, but getLegacyOwnerHashes then builds a candidate set from every persisted owner hash and every retention marker and JSON-parses candidates for each eligible equality demand (packages/query-db-collection/src/query.ts). This gives repeated work proportional to demands × (owners + markers), including fresh installs with no historical alias. The current oracle bounds scan count but not this parsing work.
This is a source-level performance concern; no user latency regression has been measured. Keep the correctness repair in #2134 focused.
Follow-up
Measure load cost across increasing owner and demand counts, including marker-heavy storage. If material, build the normalized historical-key index once per relevant metadata generation, with explicit updates when owners or markers change. Preserve the current static-key prefix and full-demand checks and the markerless-owner migration witness.
- Langage dominant
- TypeScript
- Étoiles
- 4k
- Forks
- 277
- Merge moyen
- 18 h 49 min
- PR mergées (30 j)
- 224
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un 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 TanStack/db
-
`Collection.currentStateAsChanges` JSDoc examples don’t match `CurrentStateAsChangesOptions`Ouverte
Difficulté 1/5 1-3 heures Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
OfflineExecutor.dispose() never settles pendingTransactionPromisesPeut-être pris @Claire-ovo l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
TanStack/db#2254 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 28/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de TanStack/db
Issues similaires
-
支持对已取消(cancelled)任务生成报告Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
Clouditera/VulnHunter#57 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
bug bug:behavior clawsweeper:bulk-filed clawsweeper:fix-shape-clear clawsweeper:no-new-fix-pr clawsweeper:source-repro impact:auth-provider issue-rating: 🦞 diamond lobster P2
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
openclaw/openclaw#185297 · 1 commentaire · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
-
bug needs-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
apex-dev-tools/apex-log-parser#199 ·
Les mainteneurs répondent en général sous 1 jour