HyperProcess::new documents a 30s callback timeout but waits 60s
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 68/100
Direzione di ricerca
Leggi hyperdb-api/src/process.rs:226 e wait_for_callback alla riga 709, quindi controlla in CI l’avvio lento di hyperd segnalato. Decidi se il contratto previsto è di 30 o 60 secondi, allinea la documentazione e l’implementazione e valuta un const documentato, in modo che non possano divergere; il lavoro è completato quando il timeout pubblico e l’attesa effettiva coincidono.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
HyperProcess::new's doc comment promises a 30-second timeout for Hyper's connect-back callback, but the implementation waits 60 seconds.
The documented contract:
/// - Hyper doesn't connect back within the timeout (30 seconds)
— hyperdb-api/src/process.rs:226
The actual wait, in wait_for_callback:
let timeout = Duration::from_secs(60);
— hyperdb-api/src/process.rs:709
Why it matters
A caller sizing their own timeout or retry budget against the documented 30 seconds will be surprised by a failure path that takes twice as long. It matters most on a slow or loaded host, which is exactly when the callback is slowest and when a caller is most likely to be relying on the documented bound.
The doc comment is the public contract, so this is a defect in one of the two — either the doc understates the wait, or the implementation waits longer than intended.
Fix direction
Decide which value is correct and make the other match:
- If 60 s is the intended behaviour, update the doc comment.
- If 30 s is intended, change the constant — but check CI first.
hyperdstartup has been observed taking "10+ seconds under load" on CI runners, so halving this bound could introduce flakiness on the slowest legs. That argues for correcting the documentation rather than the constant, but the value should be a deliberate choice rather than an accident.
Either way, consider naming it as a const with a doc comment so the two cannot drift again, and referencing that constant from HyperProcess::new's docs instead of restating the number in prose.
Provenance
Noticed incidentally while auditing hyperdb-api's process lifecycle for the shared-daemon design exploration (#293). Verified against main at 6cfe312.
- Lingua principale
- Rust
- Stelle
- 3
- Fork
- 2
- Merge medio
- 23h 11m
- PR unite (30g)
- 65
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di tableau/hyper-api-rust
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
tableau/hyper-api-rust#311 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
tableau/hyper-api-rust#305 ·
I maintainer di solito rispondono entro 1 giorno
-
Windows Named Pipe: verify DACL denies other users, and measure read-path perf for MCP workloadsAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
tableau/hyper-api-rust#302 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
tableau/hyper-api-rust#300 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
tableau/hyper-api-rust#299 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di tableau/hyper-api-rust
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
Devolutions/picky-rs#546 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
zcashlabs/thus-spoke-zakura#153 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
topgrade-rs/topgrade#2395 ·
I maintainer di solito rispondono entro 1 giorno