pub fn partition_kway_with_progress<F>(
graph: &SqliteGraph,
config: &PartitionConfig,
progress: &F,
) -> Result<PartitionResult, SqliteGraphError>where
F: ProgressCallback,Expand description
Partition graph into k balanced partitions with progress tracking.
Same algorithm as partition_kway but reports progress during execution.
Useful for long-running operations on large graphs.
§Arguments
graph- The graph to partitionconfig- Partitioning configurationprogress- Progress callback for reporting execution status
§Returns
PartitionResult containing k balanced partitions.
§Progress Reporting
The callback receives:
current: Current number of nodes assignedtotal: Total number of nodes in graphmessage: “K-way partition: assigned {current}/{total} nodes”
Progress is reported during BFS growth phase as nodes are assigned.
§Example
ⓘ
let progress = ConsoleProgress::new();
let config = PartitionConfig::default();
let result = partition_kway_with_progress(&graph, &config, &progress)?;
// Output: K-way partition: assigned 10/100 nodes...