Commit cf616c8a authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 191ae761
......@@ -1294,7 +1294,7 @@ def test_wcfs():
w_assertPin( {2:at3, 5:at0}, {2:at3, 5:at0}, {2:at2, 5:at0})
# commit again:
# - block is already pinned (#2) -> not notified
# - block is already pinned (#2) -> wl3 not notified
# - watch stopped (wl3_) -> watch no longer notified
# - wlink closed (wl2) -> watch no longer notified
f.assertCache([1,1,1,1,1,1])
......@@ -1329,55 +1329,44 @@ def test_wcfs():
f.assertBlk(5, '4f', {wl3: {}, wl3_: {}})
w_assertPin( {2:at3, 3:at2, 5:at0})
# XXX 2 opened watchs for 1 file at the same time
# XXX advance watch - receives new pins/unpins to @head
wl3.close()
# XXX commit after current file size -> watch
# XXX watch with @at > head - must wait for head to become >= at
# XXX access to block not previously accessed but invalidated in ZODB
# XXX drop file[blk] from cache, access again -> no pin message sent the second time
# XXX no reply to pin - killed
# XXX blk not initially covered by f.δtail (blk never accessed - f.δtail
# not updated on invalidation). then blk is accessed - what happens with
# watch that should be triggerring for this blk?
# XXX access to block not previously accessed but invalidated in ZODB
# XXX similar to ^^^ but with two changes to blk not covered by f.δtail. To
# which @rev blk is pinned on watch? (δtail is missing both and if it will
# be another blk rev < rev1,rev2 - it will be incorrect)
# XXX watch @at when file did not existed -> error
# XXX going not only up, but also down at1 <- at2 <- at3 ? -> forbid?
# XXX watch for 2 files via single watch open
# XXX watch with @at > head - must wait for head to become >= at
# XXX watch for 2 files via single wlink
# XXX drop file[blk] from cache, access again -> no pin message sent the second time
# XXX going not only up, but also down at1 <- at2 <- at3 ? -> forbid?
# XXX mmap f; change f[blk] on pin message while under pagefault - should get changed page
# XXX new watch request while previous watch request is in progress (over the same /head/watch handle)
# XXX blk not initially covered by f.δtail (blk never accessed - f.δtail
# not updated on invalidation). then blk is accessed - what happens with
# watch that should be triggerring for this blk?
# XXX similar to ^^^ but with two changes to blk not covered by f.δtail. To
# which @rev blk is pinned on watch? (δtail is missing both and if it will
# be another blk rev < rev1,rev2 - it will be incorrect)
# XXX pin message when blk data only first appeared after > w.at - pin
# needs to pin to zero (or at0 ?).
# XXX watch @at when file did not existed -> error
# XXX ZBlk copied from blk1 -> blk2 ; for the same file and for file1 -> file2
# XXX ZBlk moved from blk1 -> blk2 ; for the same file and for file1 -> file2
# XXX ZBlk copied from blk1 -> blk2 ; for the same file and for file1 -> file2 (δbtree)
# XXX ZBlk moved from blk1 -> blk2 ; for the same file and for file1 -> file2 (δbtree)
# XXX read file[blk]=hole; then file[blk]=zblk - must be invalidated and
# setupWatch must send pins.
# setupWatch must send pins. (δbtree)
# ---- misc ---
......
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