Fabric–CockroachDB Distributed Ledger Sync
Budget: $750 – $1,500 USD
I want to demonstrate provable data consistency across a geographically distributed Hyperledger Fabric network by persisting the blockchain ledger in CockroachDB instead of the default back-end. The work centres on two Fabric layers: chaincode and the ledger itself. Chaincode reads and writes must be routed so that every block committed by a peer is durably stored in CockroachDB, and peers must replay that data with no divergence even under node failure or network partitions.
The scope includes mapping Fabric’s block and state data structures to a CockroachDB schema, wiring the peer so that commit and endorsement steps call the database seamlessly, and validating the design with a small multi-region testnet. CockroachDB will act strictly as the ledger store; MSP and other services remain unchanged.
Deliverables
• A runnable PoC network (Docker Compose or Kubernetes) showing Fabric peers committing blocks that immediately surface in CockroachDB tables.
• Updated chaincode sample proving that standard read/write sets still behave correctly.
• Automated tests that halt or partition nodes to prove data remains consistent.
• Clear setup notes so I can reproduce the environment from scratch.
Success is met when I can spin up the stack on fresh machines, invoke transactions, and watch the same ledger materialise in CockroachDB clusters on two different regions without mismatch or data loss.
The scope includes mapping Fabric’s block and state data structures to a CockroachDB schema, wiring the peer so that commit and endorsement steps call the database seamlessly, and validating the design with a small multi-region testnet. CockroachDB will act strictly as the ledger store; MSP and other services remain unchanged.
Deliverables
• A runnable PoC network (Docker Compose or Kubernetes) showing Fabric peers committing blocks that immediately surface in CockroachDB tables.
• Updated chaincode sample proving that standard read/write sets still behave correctly.
• Automated tests that halt or partition nodes to prove data remains consistent.
• Clear setup notes so I can reproduce the environment from scratch.
Success is met when I can spin up the stack on fresh machines, invoke transactions, and watch the same ledger materialise in CockroachDB clusters on two different regions without mismatch or data loss.