Commit 7476fdac authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent ee79a1ad
...@@ -56,9 +56,12 @@ type Value = zodb.Oid // XXX assumes key points to IPersistent ...@@ -56,9 +56,12 @@ type Value = zodb.Oid // XXX assumes key points to IPersistent
// //
// A tree nodes become tracked via Track(path) request. // A tree nodes become tracked via Track(path) request.
// //
// XXX which operations are provided. // It provides the following operations:
// //
// - Get(root, key, at) // - Track(path) - start tracking tree nodes and keys; root=path[0], keys=path[-1].keys
// - Get(root, key, at) - get root[key] @at assuming root[key] ∈ tracked
// - Update(δZ) - update BTree δ tail given raw ZODB changes
// - ForgetPast(revCut) - forget changes past revCut
// //
// An example for tracked set is a set of visited BTree paths. // An example for tracked set is a set of visited BTree paths.
// There is no requirement that tracked set belongs to only one single BTree. // There is no requirement that tracked set belongs to only one single BTree.
...@@ -240,7 +243,7 @@ func (btail *ΔTail) Update(δZ *zodb.EventCommit) []ΔTree { ...@@ -240,7 +243,7 @@ func (btail *ΔTail) Update(δZ *zodb.EventCommit) []ΔTree {
// XXX only tracked set? // XXX only tracked set?
// //
// XXX at must ∈ (tail, head] XXX [tail ? // XXX at must ∈ (tail, head] XXX [tail ?
// XXX key must be tracked? // XXX key must be tracked -> yes
func (btail *ΔTail) Get(root *Tree, key Key, at zodb.Tid) (value Value, ok bool, rev zodb.Tid, revExact bool) { func (btail *ΔTail) Get(root *Tree, key Key, at zodb.Tid) (value Value, ok bool, rev zodb.Tid, revExact bool) {
// XXX key not tracked -> panic // XXX key not tracked -> panic
// XXX at not ∈ (tail, head] -> panic // XXX at not ∈ (tail, head] -> panic
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment