Skip to content

perf(gr26): batch signal inserts into a single round trip - #222

Merged
BK1031 merged 1 commit into
mainfrom
bk1031/batch-signal-inserts
Aug 7, 2026
Merged

perf(gr26): batch signal inserts into a single round trip#222
BK1031 merged 1 commit into
mainfrom
bk1031/batch-signal-inserts

Conversation

@BK1031

@BK1031 BK1031 commented Aug 7, 2026

Copy link
Copy Markdown
Contributor
  • CreateSignals was issuing one synchronous Exec per signal — one network round trip each (~25-30ms from foundry to ClickHouse), which serialized the shelter ingest to ~4.5 rows/sec and taxes every live frame the same way
  • Switch to PrepareBatch/Append/Send so the whole slice lands in one buffered block insert, one round trip per call
  • async_insert context settings don't apply to native block inserts, so the batch uses a plain context; InsertCtx remains for the single-row CreateCAN path
  • Early-return on empty slice to avoid a wasted round trip

@BK1031
BK1031 merged commit 2e12ddb into main Aug 7, 2026
19 checks passed
@BK1031
BK1031 deleted the bk1031/batch-signal-inserts branch August 7, 2026 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants