You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Dgraph Zero currently enforces a strict global lock allowing only one predicate move at a time across the entire cluster. When rebalancing or reorganizing clusters containing dozens or hundreds of predicates, processing them in a strictly serial, non-concurrent fashion is prohibitively time-consuming, taking days or even weeks to complete.
Impact
Operational Bottlenecks: Cluster maintenance, node decommissioning, and rebalancing operations are blocked by single-file predicate transfers.
Prohibitive Execution Times: Even if individual predicate moves are optimized, transferring multiple predicates sequentially creates unacceptable operational overhead and unnecessarily long maintenance windows. Writes to the predicate are fully blocked until the predicate moves. In a schema with lots of interconnection, this block expands to large amounts of predicates, causing unknown transaction issues to users. Directly, this error is never surfaced to the client. (See PR starting to address this: feat(txn): surface transaction abort reasons to clients #9747)
Desired Outcome
Dgraph Zero should support concurrent predicate moves across the cluster, allowing operators to move multiple predicates in parallel while maintaining cluster stability and data integrity.
Acceptance Criteria
Multiple predicate moves can execute concurrently across the cluster.
Total cluster rebalancing duration is significantly reduced compared to the single-threaded serial baseline.
Data integrity and tablet ownership state remain consistent during concurrent moves.
Problem Statement
Dgraph Zero currently enforces a strict global lock allowing only one predicate move at a time across the entire cluster. When rebalancing or reorganizing clusters containing dozens or hundreds of predicates, processing them in a strictly serial, non-concurrent fashion is prohibitively time-consuming, taking days or even weeks to complete.
Impact
Desired Outcome
Dgraph Zero should support concurrent predicate moves across the cluster, allowing operators to move multiple predicates in parallel while maintaining cluster stability and data integrity.
Acceptance Criteria