Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
f222e4a
feat: Sync V2 foundation — ops types, dedup helper, WAL writer/reader
JustMaier Mar 26, 2026
1470f79
feat: POST /ops endpoint + GET /sync-lag for Sync V2
JustMaier Mar 26, 2026
53ee7d5
feat: WAL ops processor — converts ops to engine mutations
JustMaier Mar 26, 2026
6132cae
feat: V2 ops poller — reads BitdexOps, deduplicates, POSTs to /ops en…
JustMaier Mar 26, 2026
1513c77
feat: YAML trigger config + SQL generator for Sync V2
JustMaier Mar 26, 2026
601bfa0
feat: dump pipeline — registry, persistence, server endpoints
JustMaier Mar 26, 2026
7b20663
feat: V2 sync Prometheus metrics (bitdex_sync_* namespace)
JustMaier Mar 26, 2026
8ae19f0
test: Sync V2 integration tests
JustMaier Mar 26, 2026
636f978
feat: wire WAL reader thread into server startup
JustMaier Mar 26, 2026
305b156
feat: CSV→ops adapter + WAL reader thread wiring
JustMaier Mar 26, 2026
fd21553
feat: rewrite ops_processor — BitmapSink dual-path + direct dump
JustMaier Mar 26, 2026
4c472ac
docs: update pg-sync-v2 design — pg-sync as data mover, BitDex owns p…
JustMaier Mar 26, 2026
5df69b6
fix: add computed field to SortFieldConfig in tests (rebase fix)
JustMaier Mar 26, 2026
bcc3cfe
perf: rayon parallel CSV parsing in direct dump path
JustMaier Mar 26, 2026
873549c
fix: address Ivanna review — incremental WAL reads + loading mode in …
JustMaier Mar 26, 2026
f0c2968
feat: wire ClickHouse metrics poller into V2 ops pipeline
JustMaier Mar 26, 2026
52529f6
fix: skip WAL phase in direct mode validation harness
JustMaier Mar 26, 2026
761a044
fix: simplify direct dump — read_lines + loading mode, fix chunked re…
JustMaier Mar 26, 2026
ce9178b
fix: chunked CSV processing to prevent OOM on 67GB tags.csv
JustMaier Mar 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 61 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,10 @@ default = []
server = ["dep:axum", "dep:tower-http", "dep:tokio", "dep:tokio-util", "dep:prometheus"]
loadtest = ["ureq"]
replay = ["ureq"]
pg-sync = ["dep:sqlx", "dep:clap", "dep:reqwest", "dep:chrono", "dep:tokio", "dep:axum", "dep:tower-http", "dep:futures-core", "dep:futures-util", "dep:bytes"]
pg-sync = ["dep:sqlx", "dep:clap", "dep:reqwest", "dep:chrono", "dep:tokio", "dep:axum", "dep:tower-http", "dep:futures-core", "dep:futures-util", "dep:bytes", "dep:serde_yaml"]
simd = ["roaring/simd"]
heap-prof = ["dep:tikv-jemallocator", "dep:tikv-jemalloc-ctl"]
serde_yaml = ["dep:serde_yaml"]

[dependencies]
# Bitmap indexes
Expand Down Expand Up @@ -85,6 +86,7 @@ thiserror = "2"
# Logging
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
serde_yaml = { version = "0.9.34", optional = true }

[dev-dependencies]
# Property-based testing
Expand Down
Loading
Loading