s3wal: real-S3 e2e push p50 ~1.07 s (~2.8x the PG+S3 baseline on the same bucket region) — census and trim per-push S3 round trips

Abierto
#182 3 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@ThomasK33 ya está trabajando en esto.

Desde el 11/9/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

enhancement

From the 2026-08-27 real-S3 session (eu-central-1, ~7 ms HTTP RTT to the S3 endpoint): sequential empty-commit git push against a live serve node measured

  • s3wal (bucket = ref+meta authority + blobs): p50 1070 ms (n=20, p90 1171 ms)
  • PG+S3 (containerized Postgres + same-region S3 blobs): p50 386 ms (n=20)
  • loopback-SeaweedFS s3wal e2e (Phase 4 bench): p50 138 ms

The §3 simulated-push cell (manifest GET + 8 MiB pack PUT + 2 CAS advances) costs only ~204 ms p50 on the same bucket, so the e2e path is paying roughly 25–30 additional sequential S3 round trips' worth of latency per push somewhere between receive-pack, the update hook, hydrate, LFS/quota/meta accounting, and generation bumps. Known suspect: hook processes reconstruct stores from env URLs per invocation (fresh S3 client, config load, TLS) rather than reusing the serve process's connections.

Not a Gate 1a-B kill criterion (that gate measures the simulated-push cell, which passes with wide margin), but ~1.1 s per uncontended push is the number a real adopter feels. Worth: (1) a per-push S3 round-trip census (count + purpose), (2) trimming the obvious redundancies, (3) re-measuring.


Generated with mux • Model: anthropic:claude-fable-5 • Thinking: xhigh

Lenguaje dominante
Go
Estrellas
0
Forks
0
Merge medio
6 h 16 min
PR fusionados (30 d)
243

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de coder/openstorage

Todos los issues de coder/openstorage

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.