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
Labels
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
Kirill Smelkov
wendelin.core
Commits
4495707b
Commit
4495707b
authored
Dec 25, 2018
by
Kirill Smelkov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
9f5efdff
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
143 additions
and
128 deletions
+143
-128
wcfs/todo.dot
wcfs/todo.dot
+2
-0
wcfs/todo.svg
wcfs/todo.svg
+141
-128
No files found.
wcfs/todo.dot
View file @
4495707b
...
...
@@ -28,6 +28,7 @@ digraph {
ZODB_go_inv
->
fs1_go_inv
;
ZODB_go_inv
->
zeo_go_inv
;
ZODB_go_inv
->
neo_go_inv
;
ZODB_go_inv
->
zcache_go_inv
;
wcfsRead
->
blktabGet
;
wcfsRead
->
δ
Ftail
;
...
...
@@ -87,6 +88,7 @@ digraph {
fs1_go_inv
[
label
=
"fs1/go\ninvalidations"
,
style
=
filled
fillcolor
=
grey95
]
zeo_go_inv
[
label
=
"zeo/go\ninvalidations"
]
neo_go_inv
[
label
=
"neo/go\ninvalidations"
]
zcache_go_inv
[
label
=
"ZCache/go\n<-watchq"
]
// Btree_read [label="BTree read", style=filled fillcolor=lightyellow]
// ZBlk_read [label="ZBigFile / ZBlk* read", style=filled fillcolor=lightyellow]
// ZODB_read [label="ZODB deserialize object", style=filled fillcolor=lightyellow]
...
...
wcfs/todo.svg
View file @
4495707b
...
...
@@ -4,303 +4,316 @@
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
-->
<!-- Title: %3 Pages: 1 -->
<svg
width=
"1
449
pt"
height=
"403pt"
viewBox=
"0.00 0.00 1
449
.46 402.96"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
>
<svg
width=
"1
554
pt"
height=
"403pt"
viewBox=
"0.00 0.00 1
554
.46 402.96"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
>
<g
id=
"graph0"
class=
"graph"
transform=
"scale(1 1) rotate(0) translate(4 398.9605)"
>
<title>
%3
</title>
<polygon
fill=
"#ffffff"
stroke=
"transparent"
points=
"-4,4 -4,-398.9605 1
445.4565,-398.9605 1445
.4565,4 -4,4"
/>
<polygon
fill=
"#ffffff"
stroke=
"transparent"
points=
"-4,4 -4,-398.9605 1
550.4565,-398.9605 1550
.4565,4 -4,4"
/>
<!-- wcfs -->
<g
id=
"node1"
class=
"node"
>
<title>
wcfs
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
754
.8112"
cy=
"-368.0904"
rx=
"27.0966"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
754
.8112"
y=
"-364.3904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
wcfs
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
859
.8112"
cy=
"-368.0904"
rx=
"27.0966"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
859
.8112"
y=
"-364.3904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
wcfs
</text>
</g>
<!-- invProto -->
<g
id=
"node2"
class=
"node"
>
<title>
invProto
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
960
.8112"
cy=
"-368.0904"
rx=
"78.4777"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
960
.8112"
y=
"-371.8904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
open/invalidation
</text>
<text
text-anchor=
"middle"
x=
"
960
.8112"
y=
"-356.8904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
protocol
</text>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
1065
.8112"
cy=
"-368.0904"
rx=
"78.4777"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
1065
.8112"
y=
"-371.8904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
open/invalidation
</text>
<text
text-anchor=
"middle"
x=
"
1065
.8112"
y=
"-356.8904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
protocol
</text>
</g>
<!-- wcfs->invProto -->
<g
id=
"edge1"
class=
"edge"
>
<title>
wcfs
->
invProto
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
782.1706,-368.0904C812.1593,-368.0904 842.1481,-368.0904 872
.1369,-368.0904"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
872.307,-371.5905 882.307,-368.0904 872.307,-364.5905 872
.307,-371.5905"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
887.1706,-368.0904C917.1593,-368.0904 947.1481,-368.0904 977
.1369,-368.0904"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
977.307,-371.5905 987.307,-368.0904 977.307,-364.5905 977
.307,-371.5905"
/>
</g>
<!-- autoexit -->
<g
id=
"node4"
class=
"node"
>
<title>
autoexit
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
522
.8112"
cy=
"-278.3503"
rx=
"52.1524"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
522
.8112"
y=
"-282.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
autoexit
</text>
<text
text-anchor=
"middle"
x=
"
522
.8112"
y=
"-267.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
if !activity
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
627
.8112"
cy=
"-278.3503"
rx=
"52.1524"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
627
.8112"
y=
"-282.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
autoexit
</text>
<text
text-anchor=
"middle"
x=
"
627
.8112"
y=
"-267.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
if !activity
</text>
</g>
<!-- wcfs->autoexit -->
<g
id=
"edge3"
class=
"edge"
>
<title>
wcfs
->
autoexit
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
730.5583,-359.7121C697.2492,-348.0832 635.5811,-326.1155 583.8112,-305.2203 579.8876,-303.6367 575.8405,-301.9574 571
.7852,-300.2419"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
572.9322,-296.9256 562.3621,-296.2017 570.1737,-303.3592 572
.9322,-296.9256"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
835.5583,-359.7121C802.2492,-348.0832 740.5811,-326.1155 688.8112,-305.2203 684.8876,-303.6367 680.8405,-301.9574 676
.7852,-300.2419"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
677.9322,-296.9256 667.3621,-296.2017 675.1737,-303.3592 677
.9322,-296.9256"
/>
</g>
<!-- wcfsInvProcess -->
<g
id=
"node5"
class=
"node"
>
<title>
wcfsInvProcess
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
682
.8112"
cy=
"-278.3503"
rx=
"89.6056"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
682
.8112"
y=
"-282.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
process
</text>
<text
text-anchor=
"middle"
x=
"
682
.8112"
y=
"-267.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZODB invalidations
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
787
.8112"
cy=
"-278.3503"
rx=
"89.6056"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
787
.8112"
y=
"-282.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
process
</text>
<text
text-anchor=
"middle"
x=
"
787
.8112"
y=
"-267.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZODB invalidations
</text>
</g>
<!-- wcfs->wcfsInvProcess -->
<g
id=
"edge4"
class=
"edge"
>
<title>
wcfs
->
wcfsInvProcess
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
741.939,-352.0467C733.2299,-341.1917 721.3891,-326.4335 710
.5908,-312.9745"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
713.0273,-310.4184 704.0393,-304.8088 707.5674,-314.799 713
.0273,-310.4184"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
846.939,-352.0467C838.2299,-341.1917 826.3891,-326.4335 815
.5908,-312.9745"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
818.0273,-310.4184 809.0393,-304.8088 812.5674,-314.799 818
.0273,-310.4184"
/>
</g>
<!-- wcfsRead -->
<g
id=
"node6"
class=
"node"
>
<title>
wcfsRead
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
992
.8112"
cy=
"-278.3503"
rx=
"47.3916"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
992
.8112"
y=
"-274.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
read(#blk)
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
1097
.8112"
cy=
"-278.3503"
rx=
"47.3916"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
1097
.8112"
y=
"-274.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
read(#blk)
</text>
</g>
<!-- wcfs->wcfsRead -->
<g
id=
"edge5"
class=
"edge"
>
<title>
wcfs
->
wcfsRead
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
778.9416,-358.9918C818.9371,-343.9111 899.5048,-313.5323 949
.532,-294.6691"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
950.9871,-297.8611 959.1092,-291.058 948.5173,-291.3112 950
.9871,-297.8611"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
883.9416,-358.9918C923.9371,-343.9111 1004.5048,-313.5323 1054
.532,-294.6691"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
1055.9871,-297.8611 1064.1092,-291.058 1053.5173,-291.3112 1055
.9871,-297.8611"
/>
</g>
<!-- client -->
<g
id=
"node3"
class=
"node"
>
<title>
client
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
128
.8112"
cy=
"-368.0904"
rx=
"30.5947"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1
128
.8112"
y=
"-364.3904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
client
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
233
.8112"
cy=
"-368.0904"
rx=
"30.5947"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1
233
.8112"
y=
"-364.3904"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
client
</text>
</g>
<!-- invProto->client -->
<g
id=
"edge2"
class=
"edge"
>
<title>
invProto
->
client
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
049.628,-368.0904C1065.7958,-368.0904 1081.9636,-368.0904 1098
.1315,-368.0904"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
049.5612,-364.5905 1039.5612,-368.0904 1049.5611,-371.5905 1049
.5612,-364.5905"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
154.628,-368.0904C1170.7958,-368.0904 1186.9636,-368.0904 1203
.1315,-368.0904"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
154.5612,-364.5905 1144.5612,-368.0904 1154.5611,-371.5905 1154
.5612,-364.5905"
/>
</g>
<!-- client->wcfsRead -->
<g
id=
"edge2
1
"
class=
"edge"
>
<g
id=
"edge2
2
"
class=
"edge"
>
<title>
client
->
wcfsRead
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
108.4506,-354.6554C1086.3478,-340.0708 1050.7503,-316.5816 1024
.8833,-299.5132"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
026.7919,-296.5793 1016.5176,-293.993 1022.9366,-302.422 1026
.7919,-296.5793"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
213.4506,-354.6554C1191.3478,-340.0708 1155.7503,-316.5816 1129
.8833,-299.5132"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
131.7919,-296.5793 1121.5176,-293.993 1127.9366,-302.422 1131
.7919,-296.5793"
/>
</g>
<!-- mappingRegister -->
<g
id=
"node1
6
"
class=
"node"
>
<g
id=
"node1
7
"
class=
"node"
>
<title>
mappingRegister
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
159
.8112"
cy=
"-188.6102"
rx=
"65.1077"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"1
159
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
mmappings:
</text>
<text
text-anchor=
"middle"
x=
"1
159
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
register/maint
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
264
.8112"
cy=
"-188.6102"
rx=
"65.1077"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"1
264
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
mmappings:
</text>
<text
text-anchor=
"middle"
x=
"1
264
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
register/maint
</text>
</g>
<!-- client->mappingRegister -->
<g
id=
"edge2
2
"
class=
"edge"
>
<g
id=
"edge2
3
"
class=
"edge"
>
<title>
client
->
mappingRegister
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
131.621,-349.886C1135.2019,-326.9188 1141.6665,-286.2213 1147.8112,-251.4802 1149.2972,-243.0787 1150.9712,-234.0613 1152
.5869,-225.5533"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
156.0681,-225.9835 1154.5122,-215.5036 1149.1931,-224.6664 1156
.0681,-225.9835"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
236.621,-349.886C1240.2019,-326.9188 1246.6665,-286.2213 1252.8112,-251.4802 1254.2972,-243.0787 1255.9712,-234.0613 1257
.5869,-225.5533"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
261.0681,-225.9835 1259.5122,-215.5036 1254.1931,-224.6664 1261
.0681,-225.9835"
/>
</g>
<!-- clientInvHandle -->
<g
id=
"node2
1
"
class=
"node"
>
<g
id=
"node2
2
"
class=
"node"
>
<title>
clientInvHandle
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
237
.8112"
cy=
"-278.3503"
rx=
"80.7205"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"1
237
.8112"
y=
"-282.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
process
</text>
<text
text-anchor=
"middle"
x=
"1
237
.8112"
y=
"-267.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
#blk invalidations
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
342
.8112"
cy=
"-278.3503"
rx=
"80.7205"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"1
342
.8112"
y=
"-282.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
process
</text>
<text
text-anchor=
"middle"
x=
"1
342
.8112"
y=
"-267.1503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
#blk invalidations
</text>
</g>
<!-- client->clientInvHandle -->
<g
id=
"edge2
3
"
class=
"edge"
>
<g
id=
"edge2
4
"
class=
"edge"
>
<title>
client
->
clientInvHandle
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
146.8103,-353.2716C1161.0729,-341.5292 1181.5081,-324.7049 1199
.4013,-309.9733"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
201.9168,-312.4359 1207.4124,-303.3777 1197.4676,-307.0317 1201
.9168,-312.4359"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
251.8103,-353.2716C1266.0729,-341.5292 1286.5081,-324.7049 1304
.4013,-309.9733"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
306.9168,-312.4359 1312.4124,-303.3777 1302.4676,-307.0317 1306
.9168,-312.4359"
/>
</g>
<!-- nowcfs -->
<g
id=
"node2
2
"
class=
"node"
>
<g
id=
"node2
3
"
class=
"node"
>
<title>
nowcfs
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
388
.8112"
cy=
"-278.3503"
rx=
"52.7911"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1
388
.8112"
y=
"-274.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
!wcfs mode
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
493
.8112"
cy=
"-278.3503"
rx=
"52.7911"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1
493
.8112"
y=
"-274.6503"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
!wcfs mode
</text>
</g>
<!-- client->nowcfs -->
<g
id=
"edge2
4
"
class=
"edge"
>
<g
id=
"edge2
5
"
class=
"edge"
>
<title>
client
->
nowcfs
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
156.4952,-360.3797C1195.2362,-349.3561 1267.6328,-327.9035 1327.8112,-305.2203 1334.359,-302.7523 1341.217,-299.9509 1347
.8732,-297.1115"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
349.6473,-300.1567 1357.4215,-292.9586 1346.8553,-293.7376 1349
.6473,-300.1567"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
261.4952,-360.3797C1300.2362,-349.3561 1372.6328,-327.9035 1432.8112,-305.2203 1439.359,-302.7523 1446.217,-299.9509 1452
.8732,-297.1115"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
454.6473,-300.1567 1462.4215,-292.9586 1451.8553,-293.7376 1454
.6473,-300.1567"
/>
</g>
<!-- ZODB_go_inv -->
<g
id=
"node7"
class=
"node"
>
<title>
ZODB_go_inv
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
210
.8112"
cy=
"-188.6102"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
210
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZODB/go
</text>
<text
text-anchor=
"middle"
x=
"
210
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
324
.8112"
cy=
"-188.6102"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
324
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZODB/go
</text>
<text
text-anchor=
"middle"
x=
"
324
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
</g>
<!-- wcfsInvProcess->ZODB_go_inv -->
<g
id=
"edge6"
class=
"edge"
>
<title>
wcfsInvProcess
->
ZODB_go_inv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
618.6883,-259.5135C607.145,-256.5331 595.1713,-253.7055 583.8112,-251.4802 454.6238,-226.1743 418.1401,-244.831 289.8112,-215.4802 282.2646,-213.7542 274.4264,-211.578 266.747,-209.2147
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
267.7297,-205.8544 257.1388,-206.141 265.5968,-212.5216 267.7297,-205.8544
"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
723.6883,-259.5135C712.145,-256.5331 700.1713,-253.7055 688.8112,-251.4802 559.6238,-226.1743 522.5488,-247.306 394.8112,-215.4802 389.4429,-214.1427 383.9278,-212.5087 378.4625,-210.7136
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
379.3162,-207.3053 368.7214,-207.3375 377.0239,-213.9193 379.3162,-207.3053
"
/>
</g>
<!-- zconnCacheGet -->
<g
id=
"node8"
class=
"node"
>
<title>
zconnCacheGet
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
369
.8112"
cy=
"-188.6102"
rx=
"71.4873"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
369
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
zconn.Cache.Get
</text>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
474
.8112"
cy=
"-188.6102"
rx=
"71.4873"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
474
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
zconn.Cache.Get
</text>
</g>
<!-- wcfsInvProcess->zconnCacheGet -->
<g
id=
"edge7"
class=
"edge"
>
<title>
wcfsInvProcess
->
zconnCacheGet
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
616.2468,-260.277C605.406,-257.3355 594.2965,-254.3222 583.8112,-251.4802 524.7056,-235.4599 509.4515,-233.1278 450.8112,-215.4802 441.341,-212.6302 431.3025,-209.4397 421
.6358,-206.2799"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
422.7211,-202.9524 412.128,-203.1441 420.5285,-209.6002 422
.7211,-202.9524"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
721.2468,-260.277C710.406,-257.3355 699.2965,-254.3222 688.8112,-251.4802 629.7056,-235.4599 614.4515,-233.1278 555.8112,-215.4802 546.341,-212.6302 536.3025,-209.4397 526
.6358,-206.2799"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
527.7211,-202.9524 517.128,-203.1441 525.5285,-209.6002 527
.7211,-202.9524"
/>
</g>
<!-- zobj2file -->
<g
id=
"node9"
class=
"node"
>
<title>
zobj2file
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
529
.8112"
cy=
"-188.6102"
rx=
"70.3881"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
529
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Z* → file/[]#blk
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
634
.8112"
cy=
"-188.6102"
rx=
"70.3881"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
634
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Z* → file/[]#blk
</text>
</g>
<!-- wcfsInvProcess->zobj2file -->
<g
id=
"edge8"
class=
"edge"
>
<title>
wcfsInvProcess
->
zobj2file
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
641.81,-254.3016C618.5232,-240.643 589.5977,-223.6771 566
.9761,-210.4087"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
568.7252,-207.3771 558.3286,-205.3367 565.1836,-213.4151 568
.7252,-207.3771"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
746.81,-254.3016C723.5232,-240.643 694.5977,-223.6771 671
.9761,-210.4087"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
673.7252,-207.3771 663.3286,-205.3367 670.1836,-213.4151 673
.7252,-207.3771"
/>
</g>
<!-- δFtail -->
<g
id=
"node10"
class=
"node"
>
<title>
δFtail
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
797
.8112"
cy=
"-188.6102"
rx=
"31.6951"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
797
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
δFtail
</text>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
902
.8112"
cy=
"-188.6102"
rx=
"31.6951"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
902
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
δFtail
</text>
</g>
<!-- wcfsInvProcess->δFtail -->
<g
id=
"edge9"
class=
"edge"
>
<title>
wcfsInvProcess
->
δFtail
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
715.1511,-253.1138C732.6886,-239.4285 754.1158,-222.7078 770
.7595,-209.7199"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
773.2507,-212.2155 778.9812,-203.3041 768.9443,-206.6969 773
.2507,-212.2155"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
820.1511,-253.1138C837.6886,-239.4285 859.1158,-222.7078 875
.7595,-209.7199"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
878.2507,-212.2155 883.9812,-203.3041 873.9443,-206.6969 878
.2507,-212.2155"
/>
</g>
<!-- fuseRetrieveCache -->
<g
id=
"node11"
class=
"node"
>
<title>
fuseRetrieveCache
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
682
.8112"
cy=
"-188.6102"
rx=
"65.1077"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
682
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
FUSE:
</text>
<text
text-anchor=
"middle"
x=
"
682
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
retrieve cache
</text>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
787
.8112"
cy=
"-188.6102"
rx=
"65.1077"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
787
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
FUSE:
</text>
<text
text-anchor=
"middle"
x=
"
787
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
retrieve cache
</text>
</g>
<!-- wcfsInvProcess->fuseRetrieveCache -->
<g
id=
"edge10"
class=
"edge"
>
<title>
wcfsInvProcess
->
fuseRetrieveCache
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
682.8112,-251.4253C682.8112,-243.3504 682.8112,-234.3471 682
.8112,-225.7362"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
686.3113,-225.5161 682.8112,-215.5162 679.3113,-225.5162 686
.3113,-225.5161"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
787.8112,-251.4253C787.8112,-243.3504 787.8112,-234.3471 787
.8112,-225.7362"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
791.3113,-225.5161 787.8112,-215.5162 784.3113,-225.5162 791
.3113,-225.5161"
/>
</g>
<!-- wcfsRead->δFtail -->
<g
id=
"edge1
5
"
class=
"edge"
>
<g
id=
"edge1
6
"
class=
"edge"
>
<title>
wcfsRead
->
δFtail
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
957.4077,-266.3553C925.3717,-254.9534 877.3024,-236.4646 837.8112,-215.4802 833.9881,-213.4488 830.0761,-211.1406 826
.2674,-208.7506"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
827.9424,-205.664 817.6582,-203.1172 824.1096,-211.5214 827
.9424,-205.664"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
1062.4077,-266.3553C1030.3717,-254.9534 982.3024,-236.4646 942.8112,-215.4802 938.9881,-213.4488 935.0761,-211.1406 931
.2674,-208.7506"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
932.9424,-205.664 922.6582,-203.1172 929.1096,-211.5214 932
.9424,-205.664"
/>
</g>
<!-- blktabGet -->
<g
id=
"node1
5
"
class=
"node"
>
<g
id=
"node1
6
"
class=
"node"
>
<title>
blktabGet
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
961
.8112"
cy=
"-188.6102"
rx=
"114.6026"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
961
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
blktab.Get(#blk):
</text>
<text
text-anchor=
"middle"
x=
"
961
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
manually + → ⌈rev(#blk)⌉
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
1066
.8112"
cy=
"-188.6102"
rx=
"114.6026"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
1066
.8112"
y=
"-192.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
blktab.Get(#blk):
</text>
<text
text-anchor=
"middle"
x=
"
1066
.8112"
y=
"-177.4102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
manually + → ⌈rev(#blk)⌉
</text>
</g>
<!-- wcfsRead->blktabGet -->
<g
id=
"edge1
4
"
class=
"edge"
>
<g
id=
"edge1
5
"
class=
"edge"
>
<title>
wcfsRead
->
blktabGet
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
986.5379,-260.19C983.0824,-250.187 978.665,-237.3994 974
.5225,-225.4074"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
977.7079,-223.9089 971.1345,-215.5998 971.0915,-226.1946 977
.7079,-223.9089"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
1091.5379,-260.19C1088.0824,-250.187 1083.665,-237.3994 1079
.5225,-225.4074"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
1082.7079,-223.9089 1076.1345,-215.5998 1076.0915,-226.1946 1082
.7079,-223.9089"
/>
</g>
<!-- wcfsRead->mappingRegister -->
<g
id=
"edge1
6
"
class=
"edge"
>
<g
id=
"edge1
7
"
class=
"edge"
>
<title>
wcfsRead
->
mappingRegister
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
020.3878,-263.5315C1044.9872,-250.3127 1081.5709,-230.6538 1111
.0922,-214.7901"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
112.8541,-217.8167 1120.0061,-210.0001 1109.5406,-211.6506 1112
.8541,-217.8167"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
125.3878,-263.5315C1149.9872,-250.3127 1186.5709,-230.6538 1216
.0922,-214.7901"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
217.8541,-217.8167 1225.0061,-210.0001 1214.5406,-211.6506 1217
.8541,-217.8167"
/>
</g>
<!-- headInv -->
<g
id=
"node1
7
"
class=
"node"
>
<g
id=
"node1
8
"
class=
"node"
>
<title>
headInv
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
315
.8112"
cy=
"-188.6102"
rx=
"73.387"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1
315
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
#blk ← head/inv.
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"1
420
.8112"
cy=
"-188.6102"
rx=
"73.387"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"1
420
.8112"
y=
"-184.9102"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
#blk ← head/inv.
</text>
</g>
<!-- wcfsRead->headInv -->
<g
id=
"edge1
7
"
class=
"edge"
>
<g
id=
"edge1
8
"
class=
"edge"
>
<title>
wcfsRead
->
headInv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
033.103,-268.6434C1081.1291,-256.8881 1163.7014,-236.0908 1233.8112,-215.4802 1243.2972,-212.6916 1253.3423,-209.5548 1263
.0277,-206.4349"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
264.1326,-209.756 1272.5592,-203.334 1261.9669,-203.0995 1264
.1326,-209.756"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
138.103,-268.6434C1186.1291,-256.8881 1268.7014,-236.0908 1338.8112,-215.4802 1348.2972,-212.6916 1358.3423,-209.5548 1368
.0277,-206.4349"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
369.1326,-209.756 1377.5592,-203.334 1366.9669,-203.0995 1369
.1326,-209.756"
/>
</g>
<!-- fs1_go_inv -->
<g
id=
"node12"
class=
"node"
>
<title>
fs1_go_inv
</title>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
60
.8112"
cy=
"-98.8701"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
60
.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fs1/go
</text>
<text
text-anchor=
"middle"
x=
"
60
.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
<ellipse
fill=
"#f2f2f2"
stroke=
"#000000"
cx=
"
326
.8112"
cy=
"-98.8701"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
326
.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fs1/go
</text>
<text
text-anchor=
"middle"
x=
"
326
.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
</g>
<!-- ZODB_go_inv->fs1_go_inv -->
<g
id=
"edge11"
class=
"edge"
>
<title>
ZODB_go_inv
->
fs1_go_inv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
174.5004,-166.8866C153.8487,-154.5314 127.8076,-138.9518 105.8607,-125.8217
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
107.4257,-122.6795 97.0473,-120.5489 103.8318,-128.6865 107.4257,-122.6795
"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
325.4112,-161.6852C325.5912,-153.6102 325.7919,-144.607 325.9838,-135.9961
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
329.4878,-135.8516 326.2115,-125.776 322.4895,-135.6955 329.4878,-135.8516
"
/>
</g>
<!-- zeo_go_inv -->
<g
id=
"node13"
class=
"node"
>
<title>
zeo_go_inv
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
200
.8112"
cy=
"-98.8701"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
200
.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
zeo/go
</text>
<text
text-anchor=
"middle"
x=
"
200
.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
466
.8112"
cy=
"-98.8701"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
466
.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
zeo/go
</text>
<text
text-anchor=
"middle"
x=
"
466
.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
</g>
<!-- ZODB_go_inv->zeo_go_inv -->
<g
id=
"edge12"
class=
"edge"
>
<title>
ZODB_go_inv
->
zeo_go_inv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
207.8109,-161.6852C206.911,-153.6102 205.9078,-144.607 204.9482,-135.9961
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
208.3954,-135.3269 203.8094,-125.776 201.4385,-136.1022 208.3954,-135.326
9"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
359.9123,-166.4272C379.0279,-154.3467 402.8549,-139.2887 423.1594,-126.4568
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
425.0381,-129.4099 431.6217,-121.1088 421.2985,-123.4925 425.0381,-129.409
9"
/>
</g>
<!-- neo_go_inv -->
<g
id=
"node14"
class=
"node"
>
<title>
neo_go_inv
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
34
0.8112"
cy=
"-98.8701"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
34
0.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
neo/go
</text>
<text
text-anchor=
"middle"
x=
"
34
0.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
6
0.8112"
cy=
"-98.8701"
rx=
"60.623"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"
6
0.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
neo/go
</text>
<text
text-anchor=
"middle"
x=
"
6
0.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
invalidations
</text>
</g>
<!-- ZODB_go_inv->neo_go_inv -->
<g
id=
"edge13"
class=
"edge"
>
<title>
ZODB_go_inv
->
neo_go_inv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M243.6157,-165.965C260.5514,-154.2741 281.3882,-139.8902 299.42,-127.4428"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"301.7759,-130.0694 308.0172,-121.508 297.7992,-124.3087 301.7759,-130.0694"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M274.7254,-173.1826C235.4057,-160.8778 179.3773,-142.9172 130.8112,-125.7401 126.025,-124.0473 121.0724,-122.2466 116.1154,-120.4103"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"117.2119,-117.0836 106.6195,-116.8539 114.7567,-123.6389 117.2119,-117.0836"
/>
</g>
<!-- zcache_go_inv -->
<g
id=
"node15"
class=
"node"
>
<title>
zcache_go_inv
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"193.8112"
cy=
"-98.8701"
rx=
"53.9813"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"193.8112"
y=
"-102.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZCache/go
</text>
<text
text-anchor=
"middle"
x=
"193.8112"
y=
"-87.6701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
<-
watchq
</text>
</g>
<!-- ZODB_go_inv->zcache_go_inv -->
<g
id=
"edge14"
class=
"edge"
>
<title>
ZODB_go_inv
->
zcache_go_inv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M291.7544,-165.965C274.1388,-153.8976 252.3349,-138.9611 233.7745,-126.2465"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"235.7297,-123.3434 225.5017,-120.5793 231.7736,-129.1183 235.7297,-123.3434"
/>
</g>
<!-- zblk2file -->
<g
id=
"node1
8
"
class=
"node"
>
<g
id=
"node1
9
"
class=
"node"
>
<title>
zblk2file
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
740
.8112"
cy=
"-98.8701"
rx=
"83.3857"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
740
.8112"
y=
"-95.1701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZBlk* → file/[]#blk
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
632
.8112"
cy=
"-98.8701"
rx=
"83.3857"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
632
.8112"
y=
"-95.1701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ZBlk* → file/[]#blk
</text>
</g>
<!-- zobj2file->zblk2file -->
<g
id=
"edge1
8
"
class=
"edge"
>
<g
id=
"edge1
9
"
class=
"edge"
>
<title>
zobj2file
->
zblk2file
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
566.0834,-173.1833C601.2772,-158.2151 654.873,-135.4203 693.4229,-119.0247
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"6
95.0468,-122.1375 702.8792,-115.0028 692.3071,-115.6959 695.0468,-122.1375
"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
634.4065,-170.4499C634.1299,-158.043 633.758,-141.3523 633.4428,-127.209
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"6
36.9373,-126.9228 633.2153,-117.0033 629.9391,-127.0788 636.9373,-126.9228
"
/>
</g>
<!-- zbtree2file -->
<g
id=
"node
19
"
class=
"node"
>
<g
id=
"node
20
"
class=
"node"
>
<title>
zbtree2file
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
529
.8112"
cy=
"-98.8701"
rx=
"109.6807"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
529
.8112"
y=
"-95.1701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
BTree/Bucket → file/[]#blk
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
843
.8112"
cy=
"-98.8701"
rx=
"109.6807"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
843
.8112"
y=
"-95.1701"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
BTree/Bucket → file/[]#blk
</text>
</g>
<!-- zobj2file->zbtree2file -->
<g
id=
"edge
19
"
class=
"edge"
>
<g
id=
"edge
20
"
class=
"edge"
>
<title>
zobj2file
->
zbtree2file
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
529.8112,-170.4499C529.8112,-158.043 529.8112,-141.3523 529.8112,-127.209
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
533.3113,-127.0033 529.8112,-117.0033 526.3113,-127.0033 533.3113,-127.0033
"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
671.2162,-172.9786C705.6095,-158.2109 757.4333,-135.9589 795.3179,-119.692
"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
796.8224,-122.8551 804.6302,-115.6935 794.0605,-116.423 796.8224,-122.8551
"
/>
</g>
<!-- δBTree -->
<g
id=
"node2
0
"
class=
"node"
>
<g
id=
"node2
1
"
class=
"node"
>
<title>
δBTree
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
529
.8112"
cy=
"-18"
rx=
"43.5923"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
529
.8112"
y=
"-14.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
δ(BTree)
</text>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"
843
.8112"
cy=
"-18"
rx=
"43.5923"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"
843
.8112"
y=
"-14.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
δ(BTree)
</text>
</g>
<!-- zbtree2file->δBTree -->
<g
id=
"edge2
0
"
class=
"edge"
>
<g
id=
"edge2
1
"
class=
"edge"
>
<title>
zbtree2file
->
δBTree
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
529.8112,-80.5194C529.8112,-70.4898 529.8112,-57.8453 529
.8112,-46.5565"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
533.3113,-46.278 529.8112,-36.278 526.3113,-46.2781 533
.3113,-46.278"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M
843.8112,-80.5194C843.8112,-70.4898 843.8112,-57.8453 843
.8112,-46.5565"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"
847.3113,-46.278 843.8112,-36.278 840.3113,-46.2781 847
.3113,-46.278"
/>
</g>
<!-- clientInvHandle->headInv -->
<g
id=
"edge2
5
"
class=
"edge"
>
<g
id=
"edge2
6
"
class=
"edge"
>
<title>
clientInvHandle
->
headInv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
260.372,-252.3937C1270.8272,-240.3648 1283.2118,-226.1162 1293
.6208,-214.1405"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
296.5449,-216.1116 1300.4634,-206.268 1291.2617,-211.5194 1296
.5449,-216.1116"
/>
<path
fill=
"none"
stroke=
"#000000"
d=
"M1
365.372,-252.3937C1375.8272,-240.3648 1388.2118,-226.1162 1398
.6208,-214.1405"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"1
401.5449,-216.1116 1405.4634,-206.268 1396.2617,-211.5194 1401
.5449,-216.1116"
/>
</g>
</g>
</svg>
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