Provides a basic implementation for migration handled through a flowgraph
Provides a basic implementation for migration handled through a flowgraph
(handle-seen this k)
Update the migration context for a node that we expect to be newly seen
Update the migration context for a node that we expect to be newly seen
(maybe-writable this k)
Given a node key, update the ledger to note that it can be written provided all of its children are written.
Given a node key, update the ledger to note that it can be written *provided* all of its children are written.
(note-state this k state)
Update the node state in the ledger to (max current-state state)
Update the node state in the ledger to (max current-state state)
(process-parent this parent-node-info parent-k children-ks)
If the provided parent node has any children which are not yet written, note them as such and add the node itself to the context to await release once the nodes' children have been written.
If the provided parent node has any children which are not yet written, note them as such and add the node itself to the context to await release once the nodes' children have been written.
(ledger this k)
The ledger is a map from all node keys that the migration context has seen to the most advanced state we know the node to be in, as per 'node-states'
The ledger is a map from all node keys that the migration context has seen to the most advanced state we know the node to be in, as per 'node-states'
(handle-written this k)
Update the migration context to note that the provided node has been written
Update the migration context to note that the provided node has been written
(maybe-release-parents this k)
Given the key of a written node, check the set parents of the node. If any are releasable, remove the nodes from the awaiting-parents and add them as released-parents
Given the key of a written node, check the set parents of the node. If any are releasable, remove the nodes from the awaiting-parents and add them as released-parents
(at-state? this k state)
Returns true if the node is in the ledger at a state >= the provided state.
Returns true if the node is in the ledger at a state >= the provided state.
(handle-new this k)
Update the migration context for a node that we expect to be new
Update the migration context for a node that we expect to be new
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close