The remote cache keeps one entry per task, so branches overwrite each other's results
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
- rust
- Domaine
- backend-api-design, distributed-systems
Piste de recherche
Start with the server API design discussed in #713 and the remote cache upload flow in #755. Trace how cache keys are looked up and replaced, then define completion as allowing different input states to coexist and enabling a run to hit a result uploaded from another branch.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
A remote cache entry is stored under a key made from the task's command, arguments, env, and input/output globs. The contents of the input files aren't part of the key. They're checked after the entry is fetched.
So all input states of a task share one entry. When main and PR branches run the same task with different sources, each upload replaces the previous one, and a fetch hits only if the latest upload came from the same inputs. The more branches share a remote cache, the fewer hits each gets.
The secondary key doesn't help: it only identifies the task, and a fallback through it is used only to explain the miss.
Adding a digest of the input files to the key only covers tasks with explicit input globs. By default, inputs are detected while the task runs, so they aren't known at lookup time. Covering them needs a lookup that can return several candidate entries for one key.
Expected: entries for different input states coexist, so a run can hit an entry uploaded from another branch.
Affects the server API design (#713) and remote cache uploads (#755).
- Langage dominant
- Rust
- Étoiles
- 473
- Forks
- 44
- Merge moyen
- 1 j 1 h
- PR mergées (30 j)
- 63
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- 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 voidzero-dev/vite-task
-
Windows: automatic filesystem tracking makes Git/MSYS sh.exe fail with MapViewOfFileEx error 487Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 18/100
voidzero-dev/vite-task#830 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
voidzero-dev/vite-task#822 ·
Les mainteneurs répondent en général sous 1 jour
-
Let tools mark cache directories with CACHEDIR.TAGPeut-être pris @lifeiscontent l’a pris il y a 9 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
voidzero-dev/vite-task#793 ·
Les mainteneurs répondent en général sous 1 jour
-
Preview cache hits without running tasksPeut-être pris @lifeiscontent l’a pris il y a 10 jours. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 52/100
voidzero-dev/vite-task#791 ·
Les mainteneurs répondent en général sous 1 jour
-
Built-in tool tasks miss the cache after the workspace movesPeut-être pris @lifeiscontent l’a pris il y a 10 jours. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 67/100
voidzero-dev/vite-task#790 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de voidzero-dev/vite-task
Issues similaires
-
ai-priority/P2 bug db/oracle user-priority/P1
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
servo/mozjs#831 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
swc-project/swc#12516 ·
Les mainteneurs répondent en général sous 1 jour
-
app bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100