2564
func (n *Node) PartitionedSnapshot(
2565
exclusiveMinVT *persistencespb.VersionedTransition,
2566
>
) (NodesSnapshot, *persistencespb.ChasmLocalState) {
tree.go
2567
>
snapshot := n.Snapshot(exclusiveMinVT)
2568
>
localState := &persistencespb.ChasmLocalState{
2569
>
Nodes: make(map[string]*persistencespb.ChasmNodeLocalState),
2570
>
}
2571
>
for path, node := range snapshot.Nodes {
2572
>
componentAttr := node.GetMetadata().GetComponentAttributes()
2573
>
if componentAttr == nil {
2574
continue
2575
}
2576
>
if len(componentAttr.SideEffectTasks)+len(componentAttr.PureTasks) == 0 {
tree.go
2577
>
continue
2578
}
2579
// Deep-copy only the metadata (where physical task statuses live); the Data payload is