Source/Packages

Checkpoint.NativeTreePublication

packages/execution/persistence/src/Checkpoint/NativeTreePublication.alpha

1,138 lines56 declarations55.0 KiBSHA-256 a6e4225ebb3a

def · lines 658–723

nativeTreeCommitUpward

Full file
Commit this role's group manifest to its parent and wait for release.
658def nativeTreeCommitUpward =
659  (lambda unrestricted plan : (family NativeTreeCheckpoint) .
660    (lambda unrestricted node : (family ParticipantTreeNode) .
661      (lambda unrestricted edges : (family StdList (family NativePeerEdge)) .
662        (lambda unrestricted commitment : (pi unrestricted child : Nat . (family RegionFrameLayout)) .
663          (lambda unrestricted release : (pi unrestricted child : Nat . (family RegionFrameLayout)) .
664            (lambda unrestricted stateAt : Nat .
665              (lambda unrestricted agreed : Nat .
666                (lambda unrestricted epoch : (family NativePhysicalOperand) .
667                  (lambda unrestricted version : (family NativePhysicalOperand) .
668                    (lambda unrestricted tail : (family NativePhysicalCommands) .
669                      (let unrestricted role =
670                        (participantTreeRoleOf node)
671                        in
672                        (let unrestricted frame =
673                          (commitment role)
674                          in
675                          (let unrestricted released =
676                            (release role)
677                            in
678                            (let unrestricted parent =
679                              (nativeLaunchRecipeSlotValue
680                                (nativePeerEdgeConnectionTo edges (participantTreeParentOf node)))
681                              in
682                              (nativeFrameInitializeRound
683                                frame
684                                epoch
685                                version
686                                (nativeFrameInitializeRound
687                                  released
688                                  epoch
689                                  version
690                                  (nativeMemoryCopyOperands
691                                    (nativeMemoryState (framePayloadAt frame))
692                                    (nativeMemoryState stateAt)
693                                    agreed
694                                    nativePeerScratchSlot
695                                    b"tree-commit-position"
696                                    (nativeMemoryCopyPayload
697                                      (naturalAdd (framePayloadAt frame) agreed)
698                                      (nativeTreeChildDescriptor role (participantTreeSizeOf node))
699                                      (nativeMemoryCopyOperands
700                                        (nativeMemoryState
701                                        (naturalAdd
702                                        (framePayloadAt frame)
703                                        (naturalAdd agreed nativeRegionDescriptorBytes)))
704                                        (nativeMemoryState
705                                        (nativeTreeLayoutDigestAt (nativeTreeGroup plan)))
706                                        checkpointEnvelopeDigestBytes
707                                        nativePeerScratchSlot
708                                        b"tree-commit-digest"
709                                        (nativePeerPublicationIO
710                                        parent
711                                        1
712                                        frame
713                                        (nativePeerPublicationIO
714                                        parent
715                                        0
716                                        released
717                                        (nativeFrameConsume
718                                        released
719                                        (nativeLaunchRecipeAssertEqual
720                                        (nativeMemoryLoad (framePayloadAt released))
721                                        version
722                                        b"tree-released-version"
723                                        tail)))))))))))))))))))))))

The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.