mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-11-06 19:06:58 +00:00
* feat(ingest): track confirmed writes through batching and retries Batched writes can partially reach storage before another partition fails. Callers need the successful row count and the failure together to report accurate ingestion results. Add WriteProgress and a confirmed-write context, carry row ownership through partitioning and retry rebuilds, and retain completions through ordinary and logical-table batchers. Existing callers retain the completion/result wrappers. Tests cover partial progress, request ownership, batching and retries. This supplies the accounting required by Remote Write exemplar written-count headers. Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix(servers): coalesce flow notifications Signed-off-by: shuiyisong <xixing.sys@gmail.com> * perf(ingest): reduce write progress overhead Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix: preserve retry hints across error wrappers Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix(ingest): drain confirmed writes on cancellation Signed-off-by: shuiyisong <xixing.sys@gmail.com> * perf(batcher): reduce row owner allocations Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix: sqlness Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix(batcher): restore per-flush metrics Signed-off-by: shuiyisong <xixing.sys@gmail.com> * revert: scope retry-hint fix to storage writes Signed-off-by: shuiyisong <xixing.sys@gmail.com> * chore: comments Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix(ingest): restore flush metrics and benchmark Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix(ingest): propagate sync batch write errors Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix: preserve peer batching for confirmed writes Signed-off-by: shuiyisong <xixing.sys@gmail.com> * perf: avoid unnecessary row owner copies Signed-off-by: shuiyisong <xixing.sys@gmail.com> * perf: reuse IPC buffers in tracked retries Signed-off-by: shuiyisong <xixing.sys@gmail.com> * style: order write dispatcher imports Signed-off-by: shuiyisong <xixing.sys@gmail.com> * fix: rebase main Signed-off-by: shuiyisong <xixing.sys@gmail.com> --------- Signed-off-by: shuiyisong <xixing.sys@gmail.com>