Disk polling: investigate tail latency under concurrent writes

Aperta
#4,178 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
30/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
docker, rust
Ambito
performance

Direzione di ricerca

Inizia dalle cronologie grezze e dai record delle risorse pubblicati della release collegata, mantenendo separati l’ordine di esecuzione e le operazioni lente valide. Riutilizza la diagnostica e i timestamp di #4177, aggiungendo osservazioni rade sulle fasi o sulle code solo quando necessario. Il lavoro è completo quando vengono indicati il limite di latenza e il modello di carico, viene identificato un meccanismo supportato se ne esiste uno e vengono seguite le regole sul budget fisso e sul modello di arrivo dell’issue padre.

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

Descrizione

performance server

Part of #4174, which records the compared revisions, workload and statistical method.

Investigate the unresolved tail behavior under concurrent writes. Start with archived timelines; collect more diagnostics only when a recurring delay or an explicit tail requirement makes the decision useful.

Case Change in run p99 Pointwise 95% interval
Explicit offset −0.02% [−2.79%, +2.88%]
Explicit offset with writes +3.40% [−0.62%, +7.63%]
Next −0.84% [−2.37%, +0.69%]
Consumer group +0.86% [−0.89%, +2.65%]
Resident −2.33% [−6.29%, +1.23%]

Positive values mean higher p99. Estimates are geometric means of paired ratios of run p99 values, not pooled request percentiles. They use the same pair bootstrap described in #4174. The interval with writes includes a small improvement and a meaningful increase, so it neither confirms a tail regression nor resolves a 3% margin. Mean elapsed time is a separate metric, reported in the parent.

The preceding campaign with the same binaries reported Next p99 +6.79% and group p99 +6.06%; those increases were not reproduced. Keep the campaigns separate. The rerun followed reported high Docker memory consumption and a guest restart, but memory pressure was not independently controlled and continuously measured. No container CPU throttling or memory limit events were recorded; those checks cannot exclude host pressure or establish a memory cause.

  1. Inspect the published raw timelines and resource records, including run order and valid slow operations. Look for clustering around a stage or resource condition.
  2. Reuse the parent's diagnostics and timestamps from #4177. Add sparse stage timestamps, scheduler waits or queue observations only where needed to locate the delay. CPU profiles alone cannot locate waiting.
  3. State the latency boundary, load model and worthwhile effect before fresh confirmation. Follow the parent's fixed budget and arrival model rules, including scheduling delays, errors and timeouts.

Tracing can create the tail being studied. Preserve valid slow runs and stop according to the declared budget. Repeating measurements on the same VM cannot remove systematic environment bias or establish physical device latency. A change should address a supported mechanism, not merely a difference between campaigns.

Lingua principale
Rust
Stelle
5.2k
Fork
502
Merge medio
3g 8h
PR unite (30g)
146

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

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 apache/iggy

Tutte le issue di apache/iggy

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.