Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
W
wendelin.core
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Joshua
wendelin.core
Commits
192343fb
Commit
192343fb
authored
Apr 17, 2019
by
Kirill Smelkov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
464b0dd7
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
19 deletions
+8
-19
wcfs/internal/xbtree/δbtail.go
wcfs/internal/xbtree/δbtail.go
+8
-19
No files found.
wcfs/internal/xbtree/δbtail.go
View file @
192343fb
...
...
@@ -56,28 +56,17 @@ type Value = zodb.Oid // XXX assumes key points to IPersistent
// atTail:
// {} root -> {}(key, value)
//
// It covers changes to keys from tracked subset of BTrees parts and
// semantically consists of
// It covers only changes to keys from tracked subset of BTrees parts.
// In particular a key that was not explicitly requested to be tracked, even if
// it was changes in δZ, is not guaranted to be present in δB.
//
// # trees changed by a revision
// [](rev↑, []root) ; rev ∈ (tail, head]
// ΔTail provides the following operations:
//
// # for every tree:
// {} root ->
// # k/v change history ; rev ∈ (tail, head]
// [](rev↑, {}(key, value))
// .Track(path) - start tracking tree nodes and keys; root=path[0], keys=path[-1].keys
//
// # set of k/v @tail for keys changed in (tail, head].
// {}(key, value)
//
// A tree nodes become tracked via Track(path) request.
//
// It provides the following operations:
//
// - Track(path) - start tracking tree nodes and keys; root=path[0], keys=path[-1].keys
// - ForgetPast(revCut) - forget changes past revCut
// - Get(root, key, at) - get root[key] @at assuming root[key] ∈ tracked
// - Update(δZ) -> δB - update BTree δ tail given raw ZODB changes
// .Update(δZ) -> δB - update BTree δ tail given raw ZODB changes
// .ForgetPast(revCut) - forget changes past revCut
// .Get(root, key, at) - get root[key] @at assuming root[key] ∈ tracked
//
// 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.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment