Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

PrebuiltBundleRetention aborts every pass on hosts that hold a synced Deployments copy (memex-cloud, memex): consumer inventory never complete

Aperta
#6,989 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
csharp
Ambito
backend

Direzione di ricerca

Start by reading DeploymentPinnedReferences.Resolve and the PrebuiltBundleRetention architecture documentation, then trace how Hosting:ReportTo and synced Deployments/* records determine the inventory source. Check the reported retention faults and the existing work for #6983 to understand the intended behavior. Done means hosts that are not the report sink can use the complete inventory from the control instance, while retention still fails closed when that inventory is incomplete.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug sev:H

Refs #6983

Observed

On memex-cloud and memex, every PrebuiltBundleRetention pass ends with the pass over /data/prebuilt-bundles faulted — nothing was collected. The fault on memex-cloud (Ops/Logs/memex-cloud-1792439265558156205-95979d-ff6bd, on the control instance, 2026-10-19 19:47:45Z) is:

System.InvalidOperationException: the fleet consumer inventory is INCOMPLETE — 6 refusal(s) over 6 expected instance(s) (0 retired, 0 reporting without a record), so no artifact can be shown to be unreferenced and nothing may be collected

In 48 h, Ops/Actions/bug6983-retention-warnings-48h read 19 such faults and no completed pass on memex-cloud. That window was cut at 200 lines. memex logs the same fault on every pod (Ops/Actions/bug6983-bundle-retention-fault, Ops/Actions/bug6983-memex-crossidentity). Meanwhile the store keeps growing: the share holds 811 identity directories on memex-cloud and 372 on memex.

Why

DeploymentPinnedReferences.Resolve counts every non-retired Hosting/Deployment record on the host as an EXPECTED consumer, and refuses the pass when that consumer has no fresh Hosting/ModuleInventory report. The public instance holds a synced copy of the Deployments/* folder. memex has 6 such records too, judging from the count. But the reports are posted to the control instance (Hosting:ReportTo), so they never arrive on either host. The pass therefore fails by construction, on every tick, forever.

The fail-closed direction is right: the registry must protect what remote consumers pull. What is wrong is the input. A host that is NOT the report sink cannot hold a complete consumer inventory, and it should read the inventory from the control instance that holds it. Simply ignoring the records would be the wrong fix.

Effect

Even with PreWarm__PrebuiltBundleRetention__Delete armed, nothing would be collected on these two hosts. The report-only ledger and log line are never produced either, so "read one report, then arm" (Doc/Architecture/PrebuiltBundleRetention) cannot even begin.

Not established

  • How many bytes the 811 identity directories hold. The census added in the PR for #6983 measures that.
  • Whether other instances that hold the synced folder are affected the same way.
Lingua principale
C#
Stelle
12
Fork
5
Merge medio
5h 57m
PR unite (30g)
967

Preparare l'ambiente

  • Nessun Dockerfile né file Docker Compose
  • Ha un modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Systemorph/MeshWeaver

Tutte le issue di Systemorph/MeshWeaver

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.