Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
varnish-cache
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
varnishcache
varnish-cache
Commits
ee31c0b9
Commit
ee31c0b9
authored
Aug 07, 2019
by
Poul-Henning Kamp
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of github.com:varnishcache/varnish-cache
parents
d00de5d7
d760826b
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
428 additions
and
363 deletions
+428
-363
cache_req_fsm.dot
doc/graphviz/cache_req_fsm.dot
+1
-1
cache_req_fsm.svg
doc/graphviz/cache_req_fsm.svg
+426
-358
vcl-built-in-subs.rst
doc/sphinx/users-guide/vcl-built-in-subs.rst
+0
-4
vte.c
lib/libvarnish/vte.c
+1
-0
No files found.
doc/graphviz/cache_req_fsm.dot
View file @
ee31c0b9
...
...
@@ -121,7 +121,7 @@ digraph cache_req_fsm {
]
lookup2
[
shape
=
record
label
=
"{<top>cnt_lookup:|{vcl_hit\{\}|{req.*|obj.*}}|{fail|<deliver>deliver|<pass>pass|restart|synth
|<miss>miss
}}"
label
=
"{<top>cnt_lookup:|{vcl_hit\{\}|{req.*|obj.*}}|{fail|<deliver>deliver|<pass>pass|restart|synth}}"
]
}
lookup
:
busy
:
s
->
lookup
:
top
:
ne
[
label
=
" waitinglist"
,
...
...
doc/graphviz/cache_req_fsm.svg
View file @
ee31c0b9
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.
38.0 (20140413.2041
)
<!-- Generated by graphviz version 2.
40.1 (20161225.0304
)
-->
<!-- Title: cache_req_fsm Pages: 1 -->
<svg
width=
"104
5pt"
height=
"1242
pt"
viewBox=
"18.00 18.00 1027.
00 1224
.00"
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(22 12
20
)"
>
<svg
width=
"104
6pt"
height=
"1253
pt"
viewBox=
"18.00 18.00 1027.
78 1235
.00"
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(22 12
31
)"
>
<title>
cache_req_fsm
</title>
<polygon
fill=
"white"
stroke=
"none"
points=
"-4,4 -4,-1202 1005,-1202 1005,4 -4,4"
/>
<g
id=
"clust3"
class=
"cluster"
><title>
cluster_backend
</title>
<polygon
fill=
"aliceblue"
stroke=
"aliceblue"
points=
"215.5,-299 215.5,-408 506.5,-408 506.5,-299 215.5,-299"
/>
<polygon
fill=
"#ffffff"
stroke=
"transparent"
points=
"-4,4 -4,-1213 1005.7832,-1213 1005.7832,4 -4,4"
/>
<g
id=
"clust3"
class=
"cluster"
>
<title>
cluster_backend
</title>
<polygon
fill=
"#f0f8ff"
stroke=
"#f0f8ff"
points=
"174.4761,-294 174.4761,-441 470.4761,-441 470.4761,-294 174.4761,-294"
/>
</g>
<!-- acceptor -->
<g
id=
"node1"
class=
"node"
><title>
acceptor
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"711.108,-1101.5 669.804,-1119.5 587.196,-1119.5 545.892,-1101.5 587.196,-1083.5 669.804,-1083.5 711.108,-1101.5"
/>
<text
text-anchor=
"middle"
x=
"628.5"
y=
"-1097.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
Request received
</text>
<g
id=
"node1"
class=
"node"
>
<title>
acceptor
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"712.3771,-1113.5 671.4266,-1131.5 589.5256,-1131.5 548.575,-1113.5 589.5256,-1095.5 671.4266,-1095.5 712.3771,-1113.5"
/>
<text
text-anchor=
"middle"
x=
"630.4761"
y=
"-1109.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Request received
</text>
</g>
<!-- recv -->
<g
id=
"node5"
class=
"node"
><title>
recv
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"518.5,-971.5 518.5,-1040.5 850.5,-1040.5 850.5,-971.5 518.5,-971.5"
/>
<text
text-anchor=
"middle"
x=
"684.5"
y=
"-1025.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_recv:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"518.5,-1017.5 850.5,-1017.5 "
/>
<text
text-anchor=
"middle"
x=
"609.5"
y=
"-1002.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_recv{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"700.5,-994.5 700.5,-1017.5 "
/>
<text
text-anchor=
"middle"
x=
"775.5"
y=
"-1002.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"518.5,-994.5 850.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"536"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"553.5,-971.5 553.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"574"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
hash
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"594.5,-971.5 594.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"618"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
purge
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"641.5,-971.5 641.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"661.5"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
pass
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"681.5,-971.5 681.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"701.5"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
pipe
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"721.5,-971.5 721.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"746.5"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"771.5,-971.5 771.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"794.5"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"817.5,-971.5 817.5,-994.5 "
/>
<text
text-anchor=
"middle"
x=
"834"
y=
"-979.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl
</text>
<g
id=
"node5"
class=
"node"
>
<title>
recv
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"517.1851,-987.5 517.1851,-1053.5 851.7671,-1053.5 851.7671,-987.5 517.1851,-987.5"
/>
<text
text-anchor=
"middle"
x=
"684.4761"
y=
"-1038.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_recv:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"517.1851,-1031.5 851.7671,-1031.5 "
/>
<text
text-anchor=
"middle"
x=
"609.0015"
y=
"-1016.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_recv{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"700.8179,-1009.5 700.8179,-1031.5 "
/>
<text
text-anchor=
"middle"
x=
"776.0059"
y=
"-1016.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"517.1851,-1009.5 851.7671,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"534.5127"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"551.8403,-987.5 551.8403,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"572.6714"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
hash
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"593.5024,-987.5 593.5024,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"617.3174"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
purge
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"641.1323,-987.5 641.1323,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"661.1875"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
pass
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"681.2427,-987.5 681.2427,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"701.2944"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
pipe
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"721.3462,-987.5 721.3462,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"746.8359"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"772.3257,-987.5 772.3257,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"795.4946"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"818.6636,-987.5 818.6636,-1009.5 "
/>
<text
text-anchor=
"middle"
x=
"835.2153"
y=
"-994.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl
</text>
</g>
<!-- acceptor->recv -->
<g
id=
"edge2"
class=
"edge"
><title>
acceptor
->
recv
</title>
<path
fill=
"none"
stroke=
"black"
stroke-width=
"2"
d=
"M638.771,-1083.35C644.514,-1073.76 651.946,-1061.35 659.143,-1049.34"
/>
<polygon
fill=
"black"
stroke=
"black"
stroke-width=
"2"
points=
"662.179,-1051.08 664.315,-1040.7 656.174,-1047.48 662.179,-1051.08"
/>
<g
id=
"edge2"
class=
"edge"
>
<title>
acceptor
->
recv
</title>
<path
fill=
"none"
stroke=
"#000000"
stroke-width=
"2"
d=
"M641.1447,-1095.1262C646.6313,-1085.6772 653.5589,-1073.7462 660.256,-1062.2123"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
stroke-width=
"2"
points=
"663.31,-1063.9228 665.3047,-1053.5174 657.2565,-1060.4078 663.31,-1063.9228"
/>
</g>
<!-- label_select -->
<g
id=
"node2"
class=
"node"
><title>
label_select
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"819.559,-1101.5 797.029,-1119.5 751.971,-1119.5 729.441,-1101.5 751.971,-1083.5 797.029,-1083.5 819.559,-1101.5"
/>
<text
text-anchor=
"middle"
x=
"774.5"
y=
"-1097.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
LABEL
</text>
<g
id=
"node2"
class=
"node"
>
<title>
label_select
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"819.1136,-1113.5 796.7948,-1131.5 752.1573,-1131.5 729.8385,-1113.5 752.1573,-1095.5 796.7948,-1095.5 819.1136,-1113.5"
/>
<text
text-anchor=
"middle"
x=
"774.4761"
y=
"-1109.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
LABEL
</text>
</g>
<!-- label_select->recv -->
<g
id=
"edge3"
class=
"edge"
><title>
label_select
->
recv
</title>
<path
fill=
"none"
stroke=
"black"
stroke-width=
"2"
d=
"M757.993,-1083.35C748.405,-1073.39 735.887,-1060.39 723.906,-1047.94"
/>
<polygon
fill=
"black"
stroke=
"black"
stroke-width=
"2"
points=
"726.397,-1045.48 716.94,-1040.7 721.354,-1050.33 726.397,-1045.48"
/>
<g
id=
"edge3"
class=
"edge"
>
<title>
label_select
->
recv
</title>
<path
fill=
"none"
stroke=
"#000000"
stroke-width=
"2"
d=
"M756.695,-1095.1262C747.1922,-1085.3066 735.0954,-1072.8066 723.5317,-1060.8574"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
stroke-width=
"2"
points=
"725.8978,-1058.2695 716.4284,-1053.5174 720.8675,-1063.1375 725.8978,-1058.2695"
/>
</g>
<!-- ESI_REQ -->
<g
id=
"node3"
class=
"node"
><title>
ESI_REQ
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"527.578,-1101.5 497.539,-1119.5 437.461,-1119.5 407.422,-1101.5 437.461,-1083.5 497.539,-1083.5 527.578,-1101.5"
/>
<text
text-anchor=
"middle"
x=
"467.5"
y=
"-1097.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
ESI request
</text>
<g
id=
"node3"
class=
"node"
>
<title>
ESI_REQ
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"530.533,-1113.5 501.0045,-1131.5 441.9476,-1131.5 412.4192,-1113.5 441.9476,-1095.5 501.0045,-1095.5 530.533,-1113.5"
/>
<text
text-anchor=
"middle"
x=
"471.4761"
y=
"-1109.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
ESI request
</text>
</g>
<!-- ESI_REQ->recv -->
<g
id=
"edge1"
class=
"edge"
><title>
ESI_REQ
->
recv
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M501.884,-1085.68C527.555,-1074.62 563.829,-1058.99 597.291,-1044.58"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"598.844,-1047.72 606.643,-1040.55 596.074,-1041.29 598.844,-1047.72"
/>
<g
id=
"edge1"
class=
"edge"
>
<title>
ESI_REQ
->
recv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M506.1723,-1098.351C531.3859,-1087.3422 566.6499,-1071.9452 599.1673,-1057.7475"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"600.9403,-1060.7925 608.7043,-1053.5835 598.1392,-1054.3773 600.9403,-1060.7925"
/>
</g>
<!-- RESTART -->
<g
id=
"node4"
class=
"node"
><title>
RESTART
</title>
<text
text-anchor=
"middle"
x=
"919.5"
y=
"-1176.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
RESTART
</text>
<g
id=
"node4"
class=
"node"
>
<title>
RESTART
</title>
<text
text-anchor=
"middle"
x=
"919.4761"
y=
"-1186.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
RESTART
</text>
</g>
<!-- restart -->
<g
id=
"node24"
class=
"node"
><title>
restart
</title>
<polygon
fill=
"none"
stroke=
"grey"
points=
"838,-1078.5 838,-1124.5 1001,-1124.5 1001,-1078.5 838,-1078.5"
/>
<text
text-anchor=
"middle"
x=
"919.5"
y=
"-1109.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
cnt_restart:
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"838,-1101.5 1001,-1101.5 "
/>
<text
text-anchor=
"middle"
x=
"855.5"
y=
"-1086.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"873,-1078.5 873,-1101.5 "
/>
<text
text-anchor=
"middle"
x=
"891"
y=
"-1086.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
ok?
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"909,-1078.5 909,-1101.5 "
/>
<text
text-anchor=
"middle"
x=
"955"
y=
"-1086.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
max_restarts?
</text>
<g
id=
"node24"
class=
"node"
>
<title>
restart
</title>
<polygon
fill=
"none"
stroke=
"#c0c0c0"
points=
"837.1689,-1091.5 837.1689,-1135.5 1001.7832,-1135.5 1001.7832,-1091.5 837.1689,-1091.5"
/>
<text
text-anchor=
"middle"
x=
"919.4761"
y=
"-1120.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
cnt_restart:
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"837.1689,-1113.5 1001.7832,-1113.5 "
/>
<text
text-anchor=
"middle"
x=
"854.4966"
y=
"-1098.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"871.8242,-1091.5 871.8242,-1113.5 "
/>
<text
text-anchor=
"middle"
x=
"889.9312"
y=
"-1098.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
ok?
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"908.0381,-1091.5 908.0381,-1113.5 "
/>
<text
text-anchor=
"middle"
x=
"954.9106"
y=
"-1098.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
max_restarts?
</text>
</g>
<!-- RESTART->restart -->
<g
id=
"edge30"
class=
"edge"
><title>
RESTART
->
restart
</title>
<path
fill=
"none"
stroke=
"purple"
d=
"M919.5,-1161.64C919.5,-1153.7 919.5,-1144.02 919.5,-1134.81"
/>
<polygon
fill=
"purple"
stroke=
"purple"
points=
"923,-1134.74 919.5,-1124.74 916,-1134.74 923,-1134.74"
/>
<g
id=
"edge30"
class=
"edge"
>
<title>
RESTART
->
restart
</title>
<path
fill=
"none"
stroke=
"#a020f0"
d=
"M919.4761,-1172.6336C919.4761,-1164.5682 919.4761,-1154.8557 919.4761,-1145.6545"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
points=
"922.9762,-1145.5982 919.4761,-1135.5982 915.9762,-1145.5982 922.9762,-1145.5982"
/>
</g>
<!-- hash -->
<g
id=
"node26"
class=
"node"
><title>
hash
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"578.5,-864.5 578.5,-933.5 700.5,-933.5 700.5,-864.5 578.5,-864.5"
/>
<text
text-anchor=
"middle"
x=
"639.5"
y=
"-918.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_recv:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"578.5,-910.5 700.5,-910.5 "
/>
<text
text-anchor=
"middle"
x=
"617.5"
y=
"-895.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_hash{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"656.5,-887.5 656.5,-910.5 "
/>
<text
text-anchor=
"middle"
x=
"678.5"
y=
"-895.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"578.5,-887.5 700.5,-887.5 "
/>
<text
text-anchor=
"middle"
x=
"639.5"
y=
"-872.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
lookup
</text>
<g
id=
"node26"
class=
"node"
>
<title>
hash
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"577.6855,-883.5 577.6855,-949.5 701.2666,-949.5 701.2666,-883.5 577.6855,-883.5"
/>
<text
text-anchor=
"middle"
x=
"639.4761"
y=
"-934.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_recv:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"577.6855,-927.5 701.2666,-927.5 "
/>
<text
text-anchor=
"middle"
x=
"617.2881"
y=
"-912.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_hash{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"656.8906,-905.5 656.8906,-927.5 "
/>
<text
text-anchor=
"middle"
x=
"679.0786"
y=
"-912.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"577.6855,-905.5 701.2666,-905.5 "
/>
<text
text-anchor=
"middle"
x=
"639.1304"
y=
"-890.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
lookup
</text>
</g>
<!-- recv->hash -->
<g
id=
"edge33"
class=
"edge"
><title>
recv:hash
->
hash
</title>
<path
fill=
"none"
stroke=
"green"
stroke-width=
"2"
d=
"M573.5,-971C573.5,-960.048 577.765,-950.075 584.127,-941.293"
/>
<polygon
fill=
"green"
stroke=
"green"
stroke-width=
"2"
points=
"586.835,-943.51 590.497,-933.568 581.434,-939.057 586.835,-943.51"
/>
<g
id=
"edge33"
class=
"edge"
>
<title>
recv:hash
->
hash
</title>
<path
fill=
"none"
stroke=
"#00ff00"
stroke-width=
"2"
d=
"M572.4761,-987.5C572.4761,-976.3407 576.9083,-966.2249 583.4928,-957.3541"
/>
<polygon
fill=
"#00ff00"
stroke=
"#00ff00"
stroke-width=
"2"
points=
"586.2961,-959.4594 590.0795,-949.5632 580.9505,-954.9401 586.2961,-959.4594"
/>
</g>
<!-- recv->hash -->
<g
id=
"edge34"
class=
"edge"
><title>
recv:pipe
->
hash
</title>
<path
fill=
"none"
stroke=
"orange"
stroke-width=
"2"
d=
"M701.5,-971C701.5,-960.335 697.482,-950.498 691.491,-941.76"
/>
<polygon
fill=
"orange"
stroke=
"orange"
stroke-width=
"2"
points=
"694.127,-939.449 685.21,-933.727 688.613,-943.761 694.127,-939.449"
/>
<g
id=
"edge34"
class=
"edge"
>
<title>
recv:pipe
->
hash
</title>
<path
fill=
"none"
stroke=
"#ffa500"
stroke-width=
"2"
d=
"M701.4761,-987.5C701.4761,-976.7108 697.3639,-966.7698 691.2576,-957.9556"
/>
<polygon
fill=
"#ffa500"
stroke=
"#ffa500"
stroke-width=
"2"
points=
"693.8067,-955.5363 684.8612,-949.8593 688.314,-959.8757 693.8067,-955.5363"
/>
</g>
<!-- recv->hash -->
<g
id=
"edge35"
class=
"edge"
><title>
recv:pass
->
hash
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M661.5,-971C661.5,-961.905 659.833,-952.437 657.416,-943.49"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"660.682,-942.203 654.418,-933.658 653.987,-944.244 660.682,-942.203"
/>
<g
id=
"edge35"
class=
"edge"
>
<title>
recv:pass
->
hash
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M661.4761,-987.5C661.4761,-978.2127 659.7374,-968.536 657.2375,-959.4227"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"660.562,-958.326 654.2725,-949.8 653.8724,-960.3873 660.562,-958.326"
/>
</g>
<!-- recv->hash -->
<g
id=
"edge40"
class=
"edge"
><title>
recv:purge:s
->
hash
</title>
<path
fill=
"none"
stroke=
"purple"
stroke-width=
"2"
d=
"M617.5,-971C617.5,-961.905 619.167,-952.437 621.584,-943.49"
/>
<polygon
fill=
"purple"
stroke=
"purple"
stroke-width=
"2"
points=
"625.013,-944.244 624.582,-933.658 618.318,-942.203 625.013,-944.244"
/>
<g
id=
"edge40"
class=
"edge"
>
<title>
recv:s
->
hash
</title>
<path
fill=
"none"
stroke=
"#a020f0"
stroke-width=
"2"
d=
"M617.4761,-987.5C617.4761,-978.2127 619.2148,-968.536 621.7146,-959.4227"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
stroke-width=
"2"
points=
"625.0797,-960.3873 624.6797,-949.8 618.3901,-958.326 625.0797,-960.3873"
/>
</g>
<!-- vcl_label -->
<g
id=
"node28"
class=
"node"
><title>
vcl_label
</title>
<text
text-anchor=
"middle"
x=
"834.5"
y=
"-902.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
switch to vcl
</text>
<text
text-anchor=
"middle"
x=
"834.5"
y=
"-887.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
LABEL
</text>
<g
id=
"node28"
class=
"node"
>
<title>
vcl_label
</title>
<text
text-anchor=
"middle"
x=
"835.4761"
y=
"-919.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
switch to vcl
</text>
<text
text-anchor=
"middle"
x=
"835.4761"
y=
"-905.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
LABEL
</text>
</g>
<!-- recv->vcl_label -->
<g
id=
"edge41"
class=
"edge"
><title>
recv:vcl:s
->
vcl_label
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M834.5,-971C834.5,-956.94 834.5,-941.314 834.5,-928.309"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"838,-928.093 834.5,-918.093 831,-928.093 838,-928.093"
/>
<g
id=
"edge41"
class=
"edge"
>
<title>
recv:s
->
vcl_label
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M835.4761,-987.5C835.4761,-973.4402 835.4761,-957.8143 835.4761,-944.8091"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"838.9762,-944.5929 835.4761,-934.5929 831.9762,-944.5929 838.9762,-944.5929"
/>
</g>
<!-- SYNTH -->
<g
id=
"node6"
class=
"node"
><title>
SYNTH
</title>
<text
text-anchor=
"middle"
x=
"543.5"
y=
"-313.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
SYNTH
</text>
<g
id=
"node6"
class=
"node"
>
<title>
SYNTH
</title>
<text
text-anchor=
"middle"
x=
"510.4761"
y=
"-307.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
SYNTH
</text>
</g>
<!-- synth -->
<g
id=
"node12"
class=
"node"
><title>
synth
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"439,-158 439,-250 578,-250 578,-158 439,-158"
/>
<text
text-anchor=
"middle"
x=
"508.5"
y=
"-234.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_synth:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"439,-227 578,-227 "
/>
<text
text-anchor=
"middle"
x=
"482"
y=
"-200.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_synth{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"525,-181 525,-227 "
/>
<text
text-anchor=
"middle"
x=
"551.5"
y=
"-211.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"525,-204 578,-204 "
/>
<text
text-anchor=
"middle"
x=
"551.5"
y=
"-188.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
resp.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"439,-181 578,-181 "
/>
<text
text-anchor=
"middle"
x=
"456.5"
y=
"-165.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"474,-158 474,-181 "
/>
<text
text-anchor=
"middle"
x=
"501"
y=
"-165.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
deliver
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"528,-158 528,-181 "
/>
<text
text-anchor=
"middle"
x=
"553"
y=
"-165.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<g
id=
"node12"
class=
"node"
>
<title>
synth
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"404.2241,-157.5 404.2241,-245.5 544.728,-245.5 544.728,-157.5 404.2241,-157.5"
/>
<text
text-anchor=
"middle"
x=
"474.4761"
y=
"-230.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_synth:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"404.2241,-223.5 544.728,-223.5 "
/>
<text
text-anchor=
"middle"
x=
"447.6646"
y=
"-197.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_synth{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"491.105,-179.5 491.105,-223.5 "
/>
<text
text-anchor=
"middle"
x=
"517.5171"
y=
"-208.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"491.105,-201.5 543.9292,-201.5 "
/>
<text
text-anchor=
"middle"
x=
"517.5171"
y=
"-186.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
resp.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"404.2241,-179.5 544.728,-179.5 "
/>
<text
text-anchor=
"middle"
x=
"421.5518"
y=
"-164.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"438.8794,-157.5 438.8794,-179.5 "
/>
<text
text-anchor=
"middle"
x=
"466.314"
y=
"-164.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
deliver
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"493.7485,-157.5 493.7485,-179.5 "
/>
<text
text-anchor=
"middle"
x=
"519.2383"
y=
"-164.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
</g>
<!-- SYNTH->synth -->
<g
id=
"edge10"
class=
"edge"
><title>
SYNTH
->
synth
</title>
<path
fill=
"none"
stroke=
"purple"
d=
"M538.031,-298.656C534.72,-288.153 530.294,-274.117 525.878,-260.114"
/>
<polygon
fill=
"purple"
stroke=
"purple"
points=
"529.182,-258.953 522.837,-250.468 522.506,-261.058 529.182,-258.953"
/>
<g
id=
"edge10"
class=
"edge"
>
<title>
SYNTH
->
synth
</title>
<path
fill=
"none"
stroke=
"#a020f0"
d=
"M504.5314,-293.7532C501.059,-283.0948 496.4788,-269.0362 491.9438,-255.1161"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
points=
"495.251,-253.9686 488.8255,-245.5446 488.5954,-256.137 495.251,-253.9686"
/>
</g>
<!-- FAIL -->
<g
id=
"node7"
class=
"node"
><title>
FAIL
</title>
<text
text-anchor=
"middle"
x=
"619.5"
y=
"-313.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
FAIL
</text>
<g
id=
"node7"
class=
"node"
>
<title>
FAIL
</title>
<text
text-anchor=
"middle"
x=
"586.4761"
y=
"-307.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
FAIL
</text>
</g>
<!-- FAIL->synth -->
<g
id=
"edge9"
class=
"edge"
><title>
FAIL
->
synth
</title>
<path
fill=
"none"
stroke=
"purple"
d=
"M602.156,-298.656C591.048,-287.548 575.986,-272.486 561.191,-257.691"
/>
<polygon
fill=
"purple"
stroke=
"purple"
points=
"563.514,-255.064 553.968,-250.468 558.564,-260.014 563.514,-255.064"
/>
<g
id=
"edge9"
class=
"edge"
>
<title>
FAIL
->
synth
</title>
<path
fill=
"none"
stroke=
"#a020f0"
d=
"M567.9816,-293.7532C556.5552,-282.4799 541.2734,-267.4028 526.3801,-252.7089"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
points=
"528.6954,-250.0764 519.1186,-245.5446 523.7791,-255.0594 528.6954,-250.0764"
/>
</g>
<!-- deliver -->
<g
id=
"node8"
class=
"node"
><title>
deliver
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"236,-146.5 236,-261.5 421,-261.5 421,-146.5 236,-146.5"
/>
<text
text-anchor=
"middle"
x=
"328.5"
y=
"-246.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_deliver:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"236,-238.5 421,-238.5 "
/>
<text
text-anchor=
"middle"
x=
"328.5"
y=
"-223.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
Filter obj.
->
resp.
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"236,-215.5 421,-215.5 "
/>
<text
text-anchor=
"middle"
x=
"292.5"
y=
"-188.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_deliver{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"349,-169.5 349,-215.5 "
/>
<text
text-anchor=
"middle"
x=
"385"
y=
"-200.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"349,-192.5 421,-192.5 "
/>
<text
text-anchor=
"middle"
x=
"385"
y=
"-177.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
resp.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"236,-169.5 421,-169.5 "
/>
<text
text-anchor=
"middle"
x=
"253.5"
y=
"-154.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"271,-146.5 271,-169.5 "
/>
<text
text-anchor=
"middle"
x=
"296"
y=
"-154.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"321,-146.5 321,-169.5 "
/>
<text
text-anchor=
"middle"
x=
"348"
y=
"-154.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
deliver
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"375,-146.5 375,-169.5 "
/>
<text
text-anchor=
"middle"
x=
"398"
y=
"-154.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<g
id=
"node8"
class=
"node"
>
<title>
deliver
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"199.0552,-146.5 199.0552,-256.5 385.897,-256.5 385.897,-146.5 199.0552,-146.5"
/>
<text
text-anchor=
"middle"
x=
"292.4761"
y=
"-241.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_deliver:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"199.0552,-234.5 385.897,-234.5 "
/>
<text
text-anchor=
"middle"
x=
"292.4761"
y=
"-219.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
Filter obj.
->
resp.
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"199.0552,-212.5 385.897,-212.5 "
/>
<text
text-anchor=
"middle"
x=
"256.2612"
y=
"-186.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_deliver{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"313.4673,-168.5 313.4673,-212.5 "
/>
<text
text-anchor=
"middle"
x=
"349.3794"
y=
"-197.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"313.4673,-190.5 385.2915,-190.5 "
/>
<text
text-anchor=
"middle"
x=
"349.3794"
y=
"-175.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
resp.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"199.0552,-168.5 385.897,-168.5 "
/>
<text
text-anchor=
"middle"
x=
"216.3828"
y=
"-153.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"233.7104,-146.5 233.7104,-168.5 "
/>
<text
text-anchor=
"middle"
x=
"259.2002"
y=
"-153.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"284.6899,-146.5 284.6899,-168.5 "
/>
<text
text-anchor=
"middle"
x=
"312.1245"
y=
"-153.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
deliver
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"339.5591,-146.5 339.5591,-168.5 "
/>
<text
text-anchor=
"middle"
x=
"362.728"
y=
"-153.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
</g>
<!-- V1D_Deliver -->
<g
id=
"node9"
class=
"node"
><title>
V1D_Deliver
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"411.5"
cy=
"-91"
rx=
"58.4896"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"411.5"
y=
"-87.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
V1D_Deliver
</text>
<g
id=
"node9"
class=
"node"
>
<title>
V1D_Deliver
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"376.4761"
cy=
"-91"
rx=
"58.4823"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"376.4761"
y=
"-86.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
V1D_Deliver
</text>
</g>
<!-- deliver->V1D_Deliver -->
<g
id=
"edge4"
class=
"edge"
><title>
deliver:deliver:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"green"
stroke-width=
"2"
d=
"M348.5,-146C340.656,-129.929 348.195,-117.61 360.688,-108.824"
/>
<polygon
fill=
"green"
stroke=
"green"
stroke-width=
"2"
points=
"362.713,-111.692 369.502,-103.558 359.122,-105.683 362.713,-111.692"
/>
<g
id=
"edge4"
class=
"edge"
>
<title>
deliver:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"#00ff00"
stroke-width=
"2"
d=
"M312.4761,-146.5C304.7472,-130.3337 312.1366,-117.818 324.5111,-108.7984"
/>
<polygon
fill=
"#00ff00"
stroke=
"#00ff00"
stroke-width=
"2"
points=
"326.6027,-111.6197 333.2541,-103.3729 322.9117,-105.6718 326.6027,-111.6197"
/>
</g>
<!-- deliver->V1D_Deliver -->
<g
id=
"edge5"
class=
"edge"
><title>
deliver:deliver:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M348.5,-146C348.5,-131.486 358.258,-120.033 370.093,-111.479"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"372.033,-114.392 378.524,-106.018 368.228,-108.516 372.033,-114.392"
/>
<g
id=
"edge5"
class=
"edge"
>
<title>
deliver:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M312.4761,-146.5C312.4761,-131.8021 322.2295,-120.1217 334.1212,-111.3428"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"336.1965,-114.1664 342.602,-105.7272 332.3318,-108.33 336.1965,-114.1664"
/>
</g>
<!-- deliver->V1D_Deliver -->
<g
id=
"edge6"
class=
"edge"
><title>
deliver:deliver:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"blue"
stroke-width=
"2"
d=
"M348.5,-146C355.127,-132.423 367.853,-121.523 380.392,-113.17"
/>
<polygon
fill=
"blue"
stroke=
"blue"
stroke-width=
"2"
points=
"382.353,-116.072 388.965,-107.793 378.633,-110.142 382.353,-116.072"
/>
<g
id=
"edge6"
class=
"edge"
>
<title>
deliver:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"#0000ff"
stroke-width=
"2"
d=
"M312.4761,-146.5C319.0459,-132.7581 331.7437,-121.6539 344.3458,-113.0926"
/>
<polygon
fill=
"#0000ff"
stroke=
"#0000ff"
stroke-width=
"2"
points=
"346.4405,-115.9076 352.9786,-107.5707 342.6685,-110.0108 346.4405,-115.9076"
/>
</g>
<!-- DONE -->
<g
id=
"node11"
class=
"node"
><title>
DONE
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"661.5"
cy=
"-18"
rx=
"35.194"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"661.5"
y=
"-14.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
DONE
</text>
<g
id=
"node11"
class=
"node"
>
<title>
DONE
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"604.4761"
cy=
"-18"
rx=
"34.8371"
ry=
"18"
/>
<text
text-anchor=
"middle"
x=
"604.4761"
y=
"-13.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
DONE
</text>
</g>
<!-- V1D_Deliver->DONE -->
<g
id=
"edge8"
class=
"edge"
><title>
V1D_Deliver
->
DONE
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M453.063,-78.1961C500.018,-64.8608 575.882,-43.3156 621.979,-30.224"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"622.959,-33.5842 631.622,-27.4853 621.046,-26.8505 622.959,-33.5842"
/>
<g
id=
"edge8"
class=
"edge"
>
<title>
V1D_Deliver
->
DONE
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M416.9752,-78.0332C458.8242,-64.6341 523.7103,-43.8592 565.1301,-30.5976"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"566.4144,-33.8615 574.8709,-27.4789 564.2799,-27.1949 566.4144,-33.8615"
/>
</g>
<!-- stream -->
<g
id=
"node10"
class=
"node"
><title>
stream
</title>
<ellipse
fill=
"turquoise"
stroke=
"turquoise"
cx=
"637.5"
cy=
"-204"
rx=
"41.9398"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"637.5"
y=
"-207.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
stream?
</text>
<text
text-anchor=
"middle"
x=
"637.5"
y=
"-192.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
body
</text>
<g
id=
"node10"
class=
"node"
>
<title>
stream
</title>
<ellipse
fill=
"#40e0d0"
stroke=
"#40e0d0"
cx=
"604.4761"
cy=
"-201.5"
rx=
"42.1901"
ry=
"25.4118"
/>
<text
text-anchor=
"middle"
x=
"604.4761"
y=
"-204.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
stream?
</text>
<text
text-anchor=
"middle"
x=
"604.4761"
y=
"-190.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
body
</text>
</g>
<!-- stream->V1D_Deliver -->
<g
id=
"edge7"
class=
"edge"
><title>
stream
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"black"
stroke-dasharray=
"1,5"
d=
"M620.97,-179.113C611.959,-167.662 599.914,-154.6 586.5,-146 551.906,-123.821 507.638,-110.273 472.282,-102.294"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"472.604,-98.7831 462.09,-100.091 471.125,-105.625 472.604,-98.7831"
/>
<g
id=
"edge7"
class=
"edge"
>
<title>
stream
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"#000000"
stroke-dasharray=
"1,5"
d=
"M587.5949,-177.9853C578.5778,-166.9085 566.6326,-154.3303 553.4761,-146 518.3124,-123.7355 473.4992,-109.9292 437.763,-101.7176"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"438.4594,-98.2871 427.9398,-99.5475 436.9494,-105.1223 438.4594,-98.2871"
/>
</g>
<!-- synth->V1D_Deliver -->
<g
id=
"edge11"
class=
"edge"
><title>
synth:del:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"purple"
d=
"M500.5,-157C500.5,-134.249 481.3,-118.61 460.735,-108.384"
/>
<polygon
fill=
"purple"
stroke=
"purple"
points=
"462.124,-105.171 451.574,-104.195 459.212,-111.537 462.124,-105.171"
/>
<g
id=
"edge11"
class=
"edge"
>
<title>
synth:s
->
V1D_Deliver
</title>
<path
fill=
"none"
stroke=
"#a020f0"
d=
"M466.4761,-157.5C466.4761,-134.569 447.3436,-118.6467 426.7214,-108.1449"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
points=
"428.0656,-104.9096 417.5255,-103.8336 425.0941,-111.2476 428.0656,-104.9096"
/>
</g>
<!-- see backend graph -->
<g
id=
"node13"
class=
"node"
><title>
see backend graph
</title>
<text
text-anchor=
"middle"
x=
"447.5"
y=
"-386.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
see backend graph
</text>
<g
id=
"node13"
class=
"node"
>
<title>
see backend graph
</title>
<text
text-anchor=
"middle"
x=
"410.4761"
y=
"-418.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
see backend graph
</text>
</g>
<!-- BGFETCH -->
<g
id=
"node14"
class=
"node"
><title>
BGFETCH
</title>
<polygon
fill=
"turquoise"
stroke=
"turquoise"
points=
"293.5,-408 215.5,-408 215.5,-372 293.5,-372 293.5,-408"
/>
<text
text-anchor=
"middle"
x=
"254.5"
y=
"-386.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
BGFETCH
</text>
<g
id=
"node14"
class=
"node"
>
<title>
BGFETCH
</title>
<polygon
fill=
"#40e0d0"
stroke=
"#40e0d0"
points=
"254.2625,-441 174.6897,-441 174.6897,-405 254.2625,-405 254.2625,-441"
/>
<text
text-anchor=
"middle"
x=
"214.4761"
y=
"-418.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
BGFETCH
</text>
</g>
<!-- FETCH -->
<g
id=
"node15"
class=
"node"
><title>
FETCH
</title>
<polygon
fill=
"turquoise"
stroke=
"turquoise"
points=
"371,-408 312,-408 312,-372 371,-372 371,-408"
/>
<text
text-anchor=
"middle"
x=
"341.5"
y=
"-386.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
FETCH
</text>
<g
id=
"node15"
class=
"node"
>
<title>
FETCH
</title>
<polygon
fill=
"#40e0d0"
stroke=
"#40e0d0"
points=
"332.8149,-441 272.1372,-441 272.1372,-405 332.8149,-405 332.8149,-441"
/>
<text
text-anchor=
"middle"
x=
"302.4761"
y=
"-418.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
FETCH
</text>
</g>
<!-- FETCH_DONE -->
<g
id=
"node16"
class=
"node"
><title>
FETCH_DONE
</title>
<polygon
fill=
"turquoise"
stroke=
"turquoise"
points=
"380.5,-335 276.5,-335 276.5,-299 380.5,-299 380.5,-335"
/>
<text
text-anchor=
"middle"
x=
"328.5"
y=
"-313.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
FETCH_DONE
</text>
<g
id=
"node16"
class=
"node"
>
<title>
FETCH_DONE
</title>
<polygon
fill=
"#40e0d0"
stroke=
"#40e0d0"
points=
"345.697,-330 239.2551,-330 239.2551,-294 345.697,-294 345.697,-330"
/>
<text
text-anchor=
"middle"
x=
"292.4761"
y=
"-307.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
FETCH_DONE
</text>
</g>
<!-- FETCH->FETCH_DONE -->
<g
id=
"edge16"
class=
"edge"
><title>
FETCH
->
FETCH_DONE
</title>
<path
fill=
"none"
stroke=
"black"
stroke-dasharray=
"1,5"
d=
"M338.353,-371.813C336.884,-363.789 335.1,-354.047 333.456,-345.069"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"336.862,-344.235 331.618,-335.029 329.976,-345.496 336.862,-344.235"
/>
<g
id=
"edge16"
class=
"edge"
>
<title>
FETCH
->
FETCH_DONE
</title>
<path
fill=
"none"
stroke=
"#000000"
stroke-dasharray=
"1,5"
d=
"M300.8248,-404.6706C299.2542,-387.2373 296.8678,-360.7482 295.048,-340.5489"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"298.5131,-340.0022 294.1298,-330.3566 291.5413,-340.6304 298.5131,-340.0022"
/>
</g>
<!-- FETCH_FAIL -->
<g
id=
"node17"
class=
"node"
><title>
FETCH_FAIL
</title>
<polygon
fill=
"turquoise"
stroke=
"turquoise"
points=
"494.5,-335 398.5,-335 398.5,-299 494.5,-299 494.5,-335"
/>
<text
text-anchor=
"middle"
x=
"446.5"
y=
"-313.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
FETCH_FAIL
</text>
<g
id=
"node17"
class=
"node"
>
<title>
FETCH_FAIL
</title>
<polygon
fill=
"#40e0d0"
stroke=
"#40e0d0"
points=
"461.393,-330 363.5592,-330 363.5592,-294 461.393,-294 461.393,-330"
/>
<text
text-anchor=
"middle"
x=
"412.4761"
y=
"-307.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
FETCH_FAIL
</text>
</g>
<!-- FETCH->FETCH_FAIL -->
<g
id=
"edge17"
class=
"edge"
><title>
FETCH
->
FETCH_FAIL
</title>
<path
fill=
"none"
stroke=
"black"
stroke-dasharray=
"1,5"
d=
"M366.65,-371.994C380.445,-362.666 397.735,-350.974 412.696,-340.858"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"414.868,-343.614 421.191,-335.114 410.947,-337.816 414.868,-343.614"
/>
<g
id=
"edge17"
class=
"edge"
>
<title>
FETCH
->
FETCH_FAIL
</title>
<path
fill=
"none"
stroke=
"#000000"
stroke-dasharray=
"1,5"
d=
"M320.6403,-404.6706C338.7924,-386.3536 366.8515,-358.0394 387.1784,-337.5276"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"389.7319,-339.9233 394.2848,-330.3566 384.7597,-334.996 389.7319,-339.9233"
/>
</g>
<!-- FETCH_DONE->deliver -->
<g
id=
"edge14"
class=
"edge"
><title>
FETCH_DONE
->
deliver
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M323.438,-298.656C322.617,-291.065 322.095,-281.628 321.873,-271.691"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"325.373,-271.595 321.751,-261.638 318.373,-271.68 325.373,-271.595"
/>
<g
id=
"edge14"
class=
"edge"
>
<title>
FETCH_DONE
->
deliver
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M287.3098,-293.7532C286.5135,-286.0295 286.0175,-276.5203 285.8218,-266.5721"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"289.3213,-266.4936 285.7261,-256.5274 282.3216,-266.5603 289.3213,-266.4936"
/>
</g>
<!-- FETCH_DONE->deliver -->
<g
id=
"edge15"
class=
"edge"
><title>
FETCH_DONE
->
deliver
</title>
<path
fill=
"none"
stroke=
"blue"
stroke-width=
"2"
d=
"M333.562,-298.656C334.383,-291.065 334.905,-281.628 335.127,-271.691"
/>
<polygon
fill=
"blue"
stroke=
"blue"
stroke-width=
"2"
points=
"338.627,-271.68 335.249,-261.638 331.627,-271.595 338.627,-271.68"
/>
<g
id=
"edge15"
class=
"edge"
>
<title>
FETCH_DONE
->
deliver
</title>
<path
fill=
"none"
stroke=
"#0000ff"
stroke-width=
"2"
d=
"M297.6424,-293.7532C298.4386,-286.0295 298.9346,-276.5203 299.1304,-266.5721"
/>
<polygon
fill=
"#0000ff"
stroke=
"#0000ff"
stroke-width=
"2"
points=
"302.6305,-266.5603 299.226,-256.5274 295.6308,-266.4936 302.6305,-266.5603"
/>
</g>
<!-- FETCH_FAIL->synth -->
<g
id=
"edge13"
class=
"edge"
><title>
FETCH_FAIL
->
synth
</title>
<path
fill=
"none"
stroke=
"purple"
d=
"M456.188,-298.656C462.167,-287.951 470.196,-273.576 478.167,-259.306"
/>
<polygon
fill=
"purple"
stroke=
"purple"
points=
"481.282,-260.905 483.103,-250.468 475.171,-257.492 481.282,-260.905"
/>
<g
id=
"edge13"
class=
"edge"
>
<title>
FETCH_FAIL
->
synth
</title>
<path
fill=
"none"
stroke=
"#a020f0"
d=
"M422.7141,-293.7532C428.8094,-282.8898 436.8865,-268.4943 444.8434,-254.3132"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
points=
"447.9223,-255.9783 449.7632,-245.5446 441.8176,-252.553 447.9223,-255.9783"
/>
</g>
<!-- lookup2 -->
<g
id=
"node18"
class=
"node"
><title>
lookup2
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"0,-552.5 0,-644.5 267,-644.5 267,-552.5 0,-552.5"
/>
<text
text-anchor=
"middle"
x=
"133.5"
y=
"-629.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_lookup:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"0,-621.5 267,-621.5 "
/>
<text
text-anchor=
"middle"
x=
"72.5"
y=
"-594.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_hit{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"145,-575.5 145,-621.5 "
/>
<text
text-anchor=
"middle"
x=
"206"
y=
"-606.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"145,-598.5 267,-598.5 "
/>
<text
text-anchor=
"middle"
x=
"206"
y=
"-583.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
obj.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"0,-575.5 267,-575.5 "
/>
<text
text-anchor=
"middle"
x=
"17.5"
y=
"-560.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"35,-552.5 35,-575.5 "
/>
<text
text-anchor=
"middle"
x=
"62"
y=
"-560.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
deliver
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"89,-552.5 89,-575.5 "
/>
<text
text-anchor=
"middle"
x=
"109"
y=
"-560.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
pass
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"129,-552.5 129,-575.5 "
/>
<text
text-anchor=
"middle"
x=
"154"
y=
"-560.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"179,-552.5 179,-575.5 "
/>
<text
text-anchor=
"middle"
x=
"202"
y=
"-560.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"225,-552.5 225,-575.5 "
/>
<text
text-anchor=
"middle"
x=
"246"
y=
"-560.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
miss
</text>
<g
id=
"node18"
class=
"node"
>
<title>
lookup2
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"0,-582.5 0,-670.5 226.9521,-670.5 226.9521,-582.5 0,-582.5"
/>
<text
text-anchor=
"middle"
x=
"113.4761"
y=
"-655.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_lookup:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"0,-648.5 226.9521,-648.5 "
/>
<text
text-anchor=
"middle"
x=
"62.6611"
y=
"-622.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_hit{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"125.3223,-604.5 125.3223,-648.5 "
/>
<text
text-anchor=
"middle"
x=
"176.0171"
y=
"-633.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"125.3223,-626.5 226.7119,-626.5 "
/>
<text
text-anchor=
"middle"
x=
"176.0171"
y=
"-611.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
obj.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"0,-604.5 226.9521,-604.5 "
/>
<text
text-anchor=
"middle"
x=
"17.3276"
y=
"-589.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"34.6553,-582.5 34.6553,-604.5 "
/>
<text
text-anchor=
"middle"
x=
"62.0898"
y=
"-589.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
deliver
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"89.5244,-582.5 89.5244,-604.5 "
/>
<text
text-anchor=
"middle"
x=
"109.5796"
y=
"-589.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
pass
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"129.6348,-582.5 129.6348,-604.5 "
/>
<text
text-anchor=
"middle"
x=
"155.1245"
y=
"-589.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"180.6143,-582.5 180.6143,-604.5 "
/>
<text
text-anchor=
"middle"
x=
"203.7832"
y=
"-589.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
</g>
<!-- lookup2->deliver -->
<g
id=
"edge23"
class=
"edge"
><title>
lookup2:deliver:s
->
deliver:n
</title>
<path
fill=
"none"
stroke=
"green"
stroke-width=
"2"
d=
"M61.5,-552C61.5,-509.813 124.5,-523.187 124.5,-481 124.5,-481 124.5,-481 124.5,-316 124.5,-272.769 297.87,-303.207 324.959,-271.486"
/>
<polygon
fill=
"green"
stroke=
"green"
stroke-width=
"2"
points=
"328.282,-272.593 328.5,-262 321.724,-270.145 328.282,-272.593"
/>
<g
id=
"edge23"
class=
"edge"
>
<title>
lookup2:s
->
deliver:n
</title>
<path
fill=
"none"
stroke=
"#00ff00"
stroke-width=
"2"
d=
"M62.4761,-582.5C62.4761,-545.8367 104.4761,-548.1633 104.4761,-511.5 104.4761,-511.5 104.4761,-511.5 104.4761,-312 104.4761,-228.623 276.6669,-333.7963 291.4646,-266.6228"
/>
<polygon
fill=
"#00ff00"
stroke=
"#00ff00"
stroke-width=
"2"
points=
"294.9644,-266.7985 292.4761,-256.5 287.9991,-266.1024 294.9644,-266.7985"
/>
</g>
<!-- lookup2->BGFETCH -->
<g
id=
"edge12"
class=
"edge"
><title>
lookup2:deliver:s
->
BGFETCH
</title>
<path
fill=
"none"
stroke=
"green"
d=
"M61.5,-552C61.5,-516.855 108.713,-552.652 138.5,-534 185.353,-504.661 221.839,-449.707 240.584,-417.132"
/>
<polygon
fill=
"green"
stroke=
"green"
points=
"243.764,-418.619 245.61,-408.186 237.661,-415.19 243.764,-418.619"
/>
<text
text-anchor=
"middle"
x=
"260.5"
y=
"-483.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
parallel
</text>
<text
text-anchor=
"middle"
x=
"260.5"
y=
"-468.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
if obj expired
</text>
<g
id=
"edge12"
class=
"edge"
>
<title>
lookup2:s
->
BGFETCH
</title>
<path
fill=
"none"
stroke=
"#00ff00"
d=
"M62.4761,-582.5C62.4761,-556.2881 97.5468,-579.7806 118.4761,-564 158.3344,-533.947 187.3246,-482.3397 202.4781,-450.5924"
/>
<polygon
fill=
"#00ff00"
stroke=
"#00ff00"
points=
"205.6985,-451.9674 206.7334,-441.4232 199.349,-449.0206 205.6985,-451.9674"
/>
<text
text-anchor=
"middle"
x=
"225.1865"
y=
"-514.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
parallel
</text>
<text
text-anchor=
"middle"
x=
"225.1865"
y=
"-500.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
if obj expired
</text>
</g>
<!-- pass -->
<g
id=
"node21"
class=
"node"
><title>
pass
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"393,-445.5 393,-514.5 568,-514.5 568,-445.5 393,-445.5"
/>
<text
text-anchor=
"middle"
x=
"480.5"
y=
"-499.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_pass:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"393,-491.5 568,-491.5 "
/>
<text
text-anchor=
"middle"
x=
"445"
y=
"-476.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_pass{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"497,-468.5 497,-491.5 "
/>
<text
text-anchor=
"middle"
x=
"532.5"
y=
"-476.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"393,-468.5 568,-468.5 "
/>
<text
text-anchor=
"middle"
x=
"410.5"
y=
"-453.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"428,-445.5 428,-468.5 "
/>
<text
text-anchor=
"middle"
x=
"450"
y=
"-453.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fetch
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"472,-445.5 472,-468.5 "
/>
<text
text-anchor=
"middle"
x=
"495"
y=
"-453.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"518,-445.5 518,-468.5 "
/>
<text
text-anchor=
"middle"
x=
"543"
y=
"-453.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<g
id=
"node21"
class=
"node"
>
<title>
pass
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"353.5,-478.5 353.5,-544.5 529.4521,-544.5 529.4521,-478.5 353.5,-478.5"
/>
<text
text-anchor=
"middle"
x=
"441.4761"
y=
"-529.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_pass:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"353.5,-522.5 529.4521,-522.5 "
/>
<text
text-anchor=
"middle"
x=
"405.3267"
y=
"-507.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_pass{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"457.1533,-500.5 457.1533,-522.5 "
/>
<text
text-anchor=
"middle"
x=
"492.8413"
y=
"-507.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"353.5,-500.5 529.4521,-500.5 "
/>
<text
text-anchor=
"middle"
x=
"370.8276"
y=
"-485.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"388.1553,-478.5 388.1553,-500.5 "
/>
<text
text-anchor=
"middle"
x=
"410.145"
y=
"-485.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fetch
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"432.1348,-478.5 432.1348,-500.5 "
/>
<text
text-anchor=
"middle"
x=
"455.3037"
y=
"-485.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"478.4727,-478.5 478.4727,-500.5 "
/>
<text
text-anchor=
"middle"
x=
"503.9624"
y=
"-485.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
</g>
<!-- lookup2->pass -->
<g
id=
"edge24"
class=
"edge"
><title>
lookup2:pass:s
->
pass
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M108.5,-552C108.5,-527.011 194.917,-538.487 219.5,-534 273.65,-524.115 333.88,-511.963 382.824,-501.789"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"383.698,-505.182 392.774,-499.716 382.27,-498.329 383.698,-505.182"
/>
<g
id=
"edge24"
class=
"edge"
>
<title>
lookup2:s
->
pass
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M109.4761,-582.5C109.4761,-580.9908 245.5165,-552.3208 343.4315,-531.881"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"344.3036,-535.2745 353.3778,-529.8056 342.8737,-528.4221 344.3036,-535.2745"
/>
</g>
<!-- lookup -->
<g
id=
"node19"
class=
"node"
><title>
lookup
</title>
<polygon
fill=
"none"
stroke=
"grey"
points=
"154,-734.5 154,-803.5 459,-803.5 459,-734.5 154,-734.5"
/>
<text
text-anchor=
"middle"
x=
"306.5"
y=
"-788.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
cnt_lookup:
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"154,-780.5 459,-780.5 "
/>
<text
text-anchor=
"middle"
x=
"306.5"
y=
"-765.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
hash lookup
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"154,-757.5 459,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"172.5"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
hit?
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"191,-734.5 191,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"215"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
miss?
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"239,-734.5 239,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"282.5"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
hit
-
for
-
miss?
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"326,-734.5 326,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"368.5"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
hit
-
for
-
pass?
</text>
<polyline
fill=
"none"
stroke=
"grey"
points=
"411,-734.5 411,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"435"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
busy?
</text>
<g
id=
"node19"
class=
"node"
>
<title>
lookup
</title>
<polygon
fill=
"none"
stroke=
"#c0c0c0"
points=
"143.4424,-757.5 143.4424,-823.5 451.5098,-823.5 451.5098,-757.5 143.4424,-757.5"
/>
<text
text-anchor=
"middle"
x=
"297.4761"
y=
"-808.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
cnt_lookup:
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"143.4424,-801.5 451.5098,-801.5 "
/>
<text
text-anchor=
"middle"
x=
"297.4761"
y=
"-786.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
hash lookup
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"143.4424,-779.5 451.5098,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"161.939"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
hit?
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"180.4355,-757.5 180.4355,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"204.3804"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
miss?
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"228.3252,-757.5 228.3252,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"272.3472"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
hit
-
for
-
miss?
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"316.3691,-757.5 316.3691,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"359.6084"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
hit
-
for
-
pass?
</text>
<polyline
fill=
"none"
stroke=
"#c0c0c0"
points=
"402.8477,-757.5 402.8477,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"427.1787"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
busy?
</text>
</g>
<!-- lookup->lookup2 -->
<g
id=
"edge22"
class=
"edge"
><title>
lookup:h:s
->
lookup2
</title>
<path
fill=
"none"
stroke=
"green"
stroke-width=
"2"
d=
"M172.5,-733C172.5,-706.366 165.26,-677.9 157.018,-654.125"
/>
<polygon
fill=
"green"
stroke=
"green"
stroke-width=
"2"
points=
"160.26,-652.798 153.571,-644.582 153.677,-655.176 160.26,-652.798"
/>
<g
id=
"edge22"
class=
"edge"
>
<title>
lookup:s
->
lookup2
</title>
<path
fill=
"none"
stroke=
"#00ff00"
stroke-width=
"2"
d=
"M161.4761,-757.5C161.4761,-730.8892 152.6358,-702.9921 142.5429,-679.8136"
/>
<polygon
fill=
"#00ff00"
stroke=
"#00ff00"
stroke-width=
"2"
points=
"145.6425,-678.1744 138.3197,-670.5176 139.2694,-681.0698 145.6425,-678.1744"
/>
</g>
<!-- lookup->lookup -->
<g
id=
"edge18"
class=
"edge"
><title>
lookup:busy:s
->
lookup:top:ne
</title>
<path
fill=
"none"
stroke=
"grey"
d=
"M435.5,-734C465,-715 477,-715 477,-769 477,-811.188 469.676,-820.416 463.849,-813.375"
/>
<polygon
fill=
"grey"
stroke=
"grey"
points=
"466.883,-811.599 459.5,-804 460.533,-814.544 466.883,-811.599"
/>
<text
text-anchor=
"middle"
x=
"507.5"
y=
"-765.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"grey"
>
waitinglist
</text>
<g
id=
"edge18"
class=
"edge"
>
<title>
lookup:s
->
lookup:ne
</title>
<path
fill=
"none"
stroke=
"#c0c0c0"
d=
"M427.4761,-757.5C457.5098,-739 469.5098,-739 469.5098,-790.5 469.5098,-830.7344 462.1855,-839.5356 456.1041,-832.6394"
/>
<polygon
fill=
"#c0c0c0"
stroke=
"#c0c0c0"
points=
"459.1162,-830.8402 451.4761,-823.5 452.8713,-834.0026 459.1162,-830.8402"
/>
<text
text-anchor=
"middle"
x=
"500.8149"
y=
"-786.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#c0c0c0"
>
waitinglist
</text>
</g>
<!-- miss -->
<g
id=
"node20"
class=
"node"
><title>
miss
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"285,-564 285,-633 500,-633 500,-564 285,-564"
/>
<text
text-anchor=
"middle"
x=
"392.5"
y=
"-617.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_miss:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"285,-610 500,-610 "
/>
<text
text-anchor=
"middle"
x=
"347.5"
y=
"-594.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_miss{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"410,-587 410,-610 "
/>
<text
text-anchor=
"middle"
x=
"455"
y=
"-594.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"285,-587 500,-587 "
/>
<text
text-anchor=
"middle"
x=
"302.5"
y=
"-571.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"320,-564 320,-587 "
/>
<text
text-anchor=
"middle"
x=
"342"
y=
"-571.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
fetch
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"364,-564 364,-587 "
/>
<text
text-anchor=
"middle"
x=
"387"
y=
"-571.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"410,-564 410,-587 "
/>
<text
text-anchor=
"middle"
x=
"435"
y=
"-571.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"460,-564 460,-587 "
/>
<text
text-anchor=
"middle"
x=
"480"
y=
"-571.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
pass
</text>
<g
id=
"node20"
class=
"node"
>
<title>
miss
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"245.4448,-593.5 245.4448,-659.5 461.5073,-659.5 461.5073,-593.5 245.4448,-593.5"
/>
<text
text-anchor=
"middle"
x=
"353.4761"
y=
"-644.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_miss:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"245.4448,-637.5 461.5073,-637.5 "
/>
<text
text-anchor=
"middle"
x=
"308.0542"
y=
"-622.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_miss{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"370.6636,-615.5 370.6636,-637.5 "
/>
<text
text-anchor=
"middle"
x=
"415.8516"
y=
"-622.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"245.4448,-615.5 461.5073,-615.5 "
/>
<text
text-anchor=
"middle"
x=
"262.7725"
y=
"-600.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"280.1001,-593.5 280.1001,-615.5 "
/>
<text
text-anchor=
"middle"
x=
"302.0898"
y=
"-600.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fetch
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"324.0796,-593.5 324.0796,-615.5 "
/>
<text
text-anchor=
"middle"
x=
"347.2485"
y=
"-600.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"370.4175,-593.5 370.4175,-615.5 "
/>
<text
text-anchor=
"middle"
x=
"395.9072"
y=
"-600.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"421.397,-593.5 421.397,-615.5 "
/>
<text
text-anchor=
"middle"
x=
"441.4521"
y=
"-600.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
pass
</text>
</g>
<!-- lookup->miss -->
<g
id=
"edge19"
class=
"edge"
><title>
lookup:miss:s
->
miss
</title>
<path
fill=
"none"
stroke=
"blue"
stroke-width=
"2"
d=
"M214.5,-733C214.5,-705.26 270.529,-666.625 319.717,-638.052"
/>
<polygon
fill=
"blue"
stroke=
"blue"
stroke-width=
"2"
points=
"321.558,-641.031 328.489,-633.018 318.074,-634.959 321.558,-641.031"
/>
<g
id=
"edge19"
class=
"edge"
>
<title>
lookup:s
->
miss
</title>
<path
fill=
"none"
stroke=
"#0000ff"
stroke-width=
"2"
d=
"M204.4761,-757.5C204.4761,-717.3321 235.3955,-686.5759 269.0645,-664.9919"
/>
<polygon
fill=
"#0000ff"
stroke=
"#0000ff"
stroke-width=
"2"
points=
"270.9818,-667.9218 277.6666,-659.702 267.3149,-661.9591 270.9818,-667.9218"
/>
</g>
<!-- lookup->miss -->
<g
id=
"edge20"
class=
"edge"
><title>
lookup:hfm:s
->
miss
</title>
<path
fill=
"none"
stroke=
"blue"
stroke-width=
"2"
d=
"M282.5,-733C282.5,-695.827 308.217,-663.39 334.782,-639.801"
/>
<polygon
fill=
"blue"
stroke=
"blue"
stroke-width=
"2"
points=
"337.321,-642.235 342.65,-633.078 332.773,-636.913 337.321,-642.235"
/>
<text
text-anchor=
"middle"
x=
"342.5"
y=
"-681.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.
</text>
<text
text-anchor=
"middle"
x=
"342.5"
y=
"-666.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
is_hitmiss
</text>
<g
id=
"edge20"
class=
"edge"
>
<title>
lookup:s
->
miss
</title>
<path
fill=
"none"
stroke=
"#0000ff"
stroke-width=
"2"
d=
"M272.4761,-757.5C272.4761,-723.8667 292.0301,-691.6593 311.9231,-667.5959"
/>
<polygon
fill=
"#0000ff"
stroke=
"#0000ff"
stroke-width=
"2"
points=
"314.795,-669.6239 318.6547,-659.7572 309.4844,-665.0634 314.795,-669.6239"
/>
<text
text-anchor=
"middle"
x=
"323.6226"
y=
"-705.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.
</text>
<text
text-anchor=
"middle"
x=
"323.6226"
y=
"-691.8"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
is_hitmiss
</text>
</g>
<!-- lookup->pass -->
<g
id=
"edge21"
class=
"edge"
><title>
lookup:hfp:s
->
pass
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M368.5,-733C368.5,-659.507 472.955,-709.326 508.5,-645 529.186,-607.564 516.573,-558.565 502.262,-523.905"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"505.39,-522.319 498.207,-514.531 498.965,-525.098 505.39,-522.319"
/>
<text
text-anchor=
"middle"
x=
"548.5"
y=
"-602.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.
</text>
<text
text-anchor=
"middle"
x=
"548.5"
y=
"-587.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
is_hitpass
</text>
<g
id=
"edge21"
class=
"edge"
>
<title>
lookup:s
->
pass
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M359.4761,-757.5C359.4761,-694.956 443.0235,-727.1971 470.4761,-671 488.5224,-634.0581 476.5305,-587.3408 462.9055,-554.0331"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"466.0104,-552.3929 458.8502,-544.5838 459.5777,-555.1536 466.0104,-552.3929"
/>
<text
text-anchor=
"middle"
x=
"508.8398"
y=
"-629.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.
</text>
<text
text-anchor=
"middle"
x=
"508.8398"
y=
"-615.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
is_hitpass
</text>
</g>
<!-- miss->FETCH -->
<g
id=
"edge25"
class=
"edge"
><title>
miss:fetch:s
->
FETCH
</title>
<path
fill=
"none"
stroke=
"blue"
stroke-width=
"2"
d=
"M341.5,-562.5C341.5,-511.453 341.5,-451.86 341.5,-418.063"
/>
<polygon
fill=
"blue"
stroke=
"blue"
stroke-width=
"2"
points=
"345,-418.039 341.5,-408.039 338,-418.039 345,-418.039"
/>
<g
id=
"edge25"
class=
"edge"
>
<title>
miss:s
->
FETCH
</title>
<path
fill=
"none"
stroke=
"#0000ff"
stroke-width=
"2"
d=
"M302.4761,-593.5C302.4761,-543.4187 302.4761,-485.0629 302.4761,-451.2444"
/>
<polygon
fill=
"#0000ff"
stroke=
"#0000ff"
stroke-width=
"2"
points=
"305.9762,-451.1681 302.4761,-441.1681 298.9762,-451.1682 305.9762,-451.1681"
/>
</g>
<!-- miss->pass -->
<g
id=
"edge26"
class=
"edge"
><title>
miss:pass:s
->
pass
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M480.5,-562.5C480.5,-550.353 480.5,-537.187 480.5,-525.052"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"484,-524.704 480.5,-514.704 477,-524.705 484,-524.704"
/>
<g
id=
"edge26"
class=
"edge"
>
<title>
miss:s
->
pass
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M441.4761,-593.5C441.4761,-580.9322 441.4761,-567.2809 441.4761,-554.7879"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"444.9762,-554.6155 441.4761,-544.6155 437.9762,-554.6155 444.9762,-554.6155"
/>
</g>
<!-- pass->FETCH -->
<g
id=
"edge27"
class=
"edge"
><title>
pass:fetch:s
->
FETCH
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M449.5,-445C449.5,-441.01 411.3,-422.667 380.338,-408.453"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"381.562,-405.164 371.011,-404.195 378.655,-411.532 381.562,-405.164"
/>
<g
id=
"edge27"
class=
"edge"
>
<title>
pass:s
->
FETCH
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M410.4761,-478.5C410.4761,-474.5239 372.9556,-455.9536 342.145,-441.3746"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"343.386,-438.0904 332.8475,-436.9987 340.4051,-444.424 343.386,-438.0904"
/>
</g>
<!-- pipe -->
<g
id=
"node22"
class=
"node"
><title>
pipe
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"751.5,-711.5 751.5,-826.5 885.5,-826.5 885.5,-711.5 751.5,-711.5"
/>
<text
text-anchor=
"middle"
x=
"818.5"
y=
"-811.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_pipe:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"751.5,-803.5 885.5,-803.5 "
/>
<text
text-anchor=
"middle"
x=
"818.5"
y=
"-788.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
filter req.*
->
bereq.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"751.5,-780.5 885.5,-780.5 "
/>
<text
text-anchor=
"middle"
x=
"790"
y=
"-753.8"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_pipe{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"828.5,-734.5 828.5,-780.5 "
/>
<text
text-anchor=
"middle"
x=
"857"
y=
"-765.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"828.5,-757.5 885.5,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"857"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
bereq.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"751.5,-734.5 885.5,-734.5 "
/>
<text
text-anchor=
"middle"
x=
"771"
y=
"-719.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"790.5,-711.5 790.5,-734.5 "
/>
<text
text-anchor=
"middle"
x=
"812.5"
y=
"-719.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
pipe
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"834.5,-711.5 834.5,-734.5 "
/>
<text
text-anchor=
"middle"
x=
"860"
y=
"-719.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<g
id=
"node22"
class=
"node"
>
<title>
pipe
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"754.8579,-735.5 754.8579,-845.5 890.0942,-845.5 890.0942,-735.5 754.8579,-735.5"
/>
<text
text-anchor=
"middle"
x=
"822.4761"
y=
"-830.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_pipe:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"754.8579,-823.5 890.0942,-823.5 "
/>
<text
text-anchor=
"middle"
x=
"822.4761"
y=
"-808.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
filter req.*
->
bereq.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"754.8579,-801.5 890.0942,-801.5 "
/>
<text
text-anchor=
"middle"
x=
"793.6812"
y=
"-775.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_pipe{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"832.5044,-757.5 832.5044,-801.5 "
/>
<text
text-anchor=
"middle"
x=
"861.2993"
y=
"-786.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"832.5044,-779.5 890.0942,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"861.2993"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
bereq.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"754.8579,-757.5 890.0942,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"774.1855"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"793.5132,-735.5 793.5132,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"816.0649"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
pipe
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"838.6167,-735.5 838.6167,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"864.2856"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
</g>
<!-- pipe_do -->
<g
id=
"node23"
class=
"node"
><title>
pipe_do
</title>
<ellipse
fill=
"none"
stroke=
"black"
cx=
"838.5"
cy=
"-598.5"
rx=
"95.4188"
ry=
"26.7407"
/>
<text
text-anchor=
"middle"
x=
"838.5"
y=
"-602.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
send bereq,
</text>
<text
text-anchor=
"middle"
x=
"838.5"
y=
"-587.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
copy bytes until close
</text>
<g
id=
"node23"
class=
"node"
>
<title>
pipe_do
</title>
<ellipse
fill=
"none"
stroke=
"#000000"
cx=
"834.4761"
cy=
"-626.5"
rx=
"97.2377"
ry=
"25.4118"
/>
<text
text-anchor=
"middle"
x=
"834.4761"
y=
"-629.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
send bereq,
</text>
<text
text-anchor=
"middle"
x=
"834.4761"
y=
"-615.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
copy bytes until close
</text>
</g>
<!-- pipe->pipe_do -->
<g
id=
"edge28"
class=
"edge"
><title>
pipe:pipe
->
pipe_do
</title>
<path
fill=
"none"
stroke=
"orange"
stroke-width=
"2"
d=
"M812.5,-711C812.5,-685.089 819.241,-656.656 825.859,-634.987"
/>
<polygon
fill=
"orange"
stroke=
"orange"
stroke-width=
"2"
points=
"829.264,-635.828 828.966,-625.238 822.595,-633.703 829.264,-635.828"
/>
<g
id=
"edge28"
class=
"edge"
>
<title>
pipe:pipe
->
pipe_do
</title>
<path
fill=
"none"
stroke=
"#ffa500"
stroke-width=
"2"
d=
"M816.4761,-735.5C816.4761,-710.7759 821.04,-683.3137 825.5717,-662.1398"
/>
<polygon
fill=
"#ffa500"
stroke=
"#ffa500"
stroke-width=
"2"
points=
"829.0075,-662.8127 827.7735,-652.29 822.1761,-661.2855 829.0075,-662.8127"
/>
</g>
<!-- pipe_do->DONE -->
<g
id=
"edge29"
class=
"edge"
><title>
pipe_do
->
DONE
</title>
<path
fill=
"none"
stroke=
"orange"
stroke-width=
"2"
d=
"M806.365,-573.008C782.295,-551.65 753.5,-518.305 753.5,-481 753.5,-481 753.5,-481 753.5,-90 753.5,-61.4654 725.42,-42.7891 700.286,-31.7876"
/>
<polygon
fill=
"orange"
stroke=
"orange"
stroke-width=
"2"
points=
"701.444,-28.4797 690.862,-27.9423 698.799,-34.961 701.444,-28.4797"
/>
<g
id=
"edge29"
class=
"edge"
>
<title>
pipe_do
->
DONE
</title>
<path
fill=
"none"
stroke=
"#ffa500"
stroke-width=
"2"
d=
"M816.4249,-601.3665C802.103,-578.9288 784.4761,-544.5915 784.4761,-511.5 784.4761,-511.5 784.4761,-511.5 784.4761,-91 784.4761,-61.4581 700.1619,-38.1594 646.9439,-26.396"
/>
<polygon
fill=
"#ffa500"
stroke=
"#ffa500"
stroke-width=
"2"
points=
"647.5859,-22.954 637.0727,-24.2667 646.1099,-29.7967 647.5859,-22.954"
/>
</g>
<!-- restart->recv -->
<g
id=
"edge31"
class=
"edge"
><title>
restart:ok:s
->
recv
</title>
<path
fill=
"none"
stroke=
"black"
d=
"M890.5,-1078C890.5,-1064.91 875.442,-1053.71 853.468,-1044.33"
/>
<polygon
fill=
"black"
stroke=
"black"
points=
"854.598,-1041.01 844.013,-1040.56 852.004,-1047.51 854.598,-1041.01"
/>
<g
id=
"edge31"
class=
"edge"
>
<title>
restart:s
->
recv
</title>
<path
fill=
"none"
stroke=
"#000000"
d=
"M889.4761,-1091.5C889.4761,-1078.1582 873.776,-1066.7633 851.0656,-1057.2594"
/>
<polygon
fill=
"#000000"
stroke=
"#000000"
points=
"852.2589,-1053.9679 841.6714,-1053.5746 849.7028,-1060.4845 852.2589,-1053.9679"
/>
</g>
<!-- err_restart -->
<g
id=
"node25"
class=
"node"
><title>
err_restart
</title>
<text
text-anchor=
"middle"
x=
"955.5"
y=
"-1002.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
SYNTH
</text>
<g
id=
"node25"
class=
"node"
>
<title>
err_restart
</title>
<text
text-anchor=
"middle"
x=
"954.4761"
y=
"-1016.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
SYNTH
</text>
</g>
<!-- restart->err_restart -->
<g
id=
"edge32"
class=
"edge"
><title>
restart:max:s
->
err_restart
</title>
<path
fill=
"none"
stroke=
"purple"
d=
"M955.5,-1078C955.5,-1063.65 955.5,-1047.67 955.5,-1034.51"
/>
<polygon
fill=
"purple"
stroke=
"purple"
points=
"959,-1034.22 955.5,-1024.22 952,-1034.22 959,-1034.22"
/>
<g
id=
"edge32"
class=
"edge"
>
<title>
restart:s
->
err_restart
</title>
<path
fill=
"none"
stroke=
"#a020f0"
d=
"M954.4761,-1091.5C954.4761,-1077.4402 954.4761,-1061.8143 954.4761,-1048.8091"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
points=
"957.9762,-1048.5929 954.4761,-1038.5929 950.9762,-1048.5929 957.9762,-1048.5929"
/>
</g>
<!-- hash->lookup -->
<g
id=
"edge36"
class=
"edge"
><title>
hash:lookup:w
->
lookup
</title>
<path
fill=
"none"
stroke=
"green"
stroke-width=
"2"
d=
"M577.5,-876C501.089,-876 420.371,-838.999 367.108,-808.718"
/>
<polygon
fill=
"green"
stroke=
"green"
stroke-width=
"2"
points=
"368.555,-805.512 358.145,-803.539 365.052,-811.573 368.555,-805.512"
/>
<g
id=
"edge36"
class=
"edge"
>
<title>
hash:w
->
lookup
</title>
<path
fill=
"none"
stroke=
"#00ff00"
stroke-width=
"2"
d=
"M577.4761,-894.5C499.0047,-894.5 415.4676,-858.1605 360.273,-828.4433"
/>
<polygon
fill=
"#00ff00"
stroke=
"#00ff00"
stroke-width=
"2"
points=
"361.7772,-825.2767 351.3242,-823.5491 358.4184,-831.4183 361.7772,-825.2767"
/>
</g>
<!-- hash->pass -->
<g
id=
"edge38"
class=
"edge"
><title>
hash:lookup:s
->
pass
</title>
<path
fill=
"none"
stroke=
"red"
stroke-width=
"2"
d=
"M639.5,-864C639.5,-834.169 681.37,-853.272 695.5,-827 719.921,-781.595 711.277,-760.082 695.5,-711 668.89,-628.218 643.271,-613.198 581.5,-552 570.089,-540.694 556.702,-529.923 543.476,-520.342"
/>
<polygon
fill=
"red"
stroke=
"red"
stroke-width=
"2"
points=
"545.463,-517.461 535.28,-514.537 541.417,-523.173 545.463,-517.461"
/>
<g
id=
"edge38"
class=
"edge"
>
<title>
hash:s
->
pass
</title>
<path
fill=
"none"
stroke=
"#ff0000"
stroke-width=
"2"
d=
"M639.4761,-883.5C639.4761,-855.3654 677.7748,-871.1044 690.4761,-846 712.7475,-801.98 708.976,-780.7333 690.4761,-735 656.8931,-651.9802 573.4546,-587.8964 512.3878,-550.0499"
/>
<polygon
fill=
"#ff0000"
stroke=
"#ff0000"
stroke-width=
"2"
points=
"513.9085,-546.8777 503.5489,-544.6573 510.2627,-552.8534 513.9085,-546.8777"
/>
</g>
<!-- hash->pipe -->
<g
id=
"edge39"
class=
"edge"
><title>
hash:lookup:e
->
pipe
</title>
<path
fill=
"none"
stroke=
"orange"
stroke-width=
"2"
d=
"M701.5,-876C731.412,-876 757.084,-856.736 776.695,-834.633"
/>
<polygon
fill=
"orange"
stroke=
"orange"
stroke-width=
"2"
points=
"779.597,-836.622 783.375,-826.724 774.249,-832.105 779.597,-836.622"
/>
<g
id=
"edge39"
class=
"edge"
>
<title>
hash:e
->
pipe
</title>
<path
fill=
"none"
stroke=
"#ffa500"
stroke-width=
"2"
d=
"M700.4761,-894.5C731.2326,-894.5 758.1692,-875.1206 778.8526,-853.0929"
/>
<polygon
fill=
"#ffa500"
stroke=
"#ffa500"
stroke-width=
"2"
points=
"781.5511,-855.3262 785.6237,-845.5453 776.3406,-850.6517 781.5511,-855.3262"
/>
</g>
<!-- purge -->
<g
id=
"node27"
class=
"node"
><title>
purge
</title>
<polygon
fill=
"none"
stroke=
"black"
points=
"556,-734.5 556,-803.5 687,-803.5 687,-734.5 556,-734.5"
/>
<text
text-anchor=
"middle"
x=
"621.5"
y=
"-788.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
cnt_purge:
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"556,-780.5 687,-780.5 "
/>
<text
text-anchor=
"middle"
x=
"598.5"
y=
"-765.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
vcl_purge{}
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"641,-757.5 641,-780.5 "
/>
<text
text-anchor=
"middle"
x=
"664"
y=
"-765.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"556,-757.5 687,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"573.5"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"591,-734.5 591,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"614"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"black"
points=
"637,-734.5 637,-757.5 "
/>
<text
text-anchor=
"middle"
x=
"662"
y=
"-742.3"
font-family=
"Times,serif"
font-size=
"14.00"
>
restart
</text>
<g
id=
"node27"
class=
"node"
>
<title>
purge
</title>
<polygon
fill=
"none"
stroke=
"#000000"
points=
"549.4897,-757.5 549.4897,-823.5 681.4624,-823.5 681.4624,-757.5 549.4897,-757.5"
/>
<text
text-anchor=
"middle"
x=
"615.4761"
y=
"-808.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
cnt_purge:
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"549.4897,-801.5 681.4624,-801.5 "
/>
<text
text-anchor=
"middle"
x=
"592.5762"
y=
"-786.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
vcl_purge{}
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"635.6626,-779.5 635.6626,-801.5 "
/>
<text
text-anchor=
"middle"
x=
"658.3506"
y=
"-786.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
req.*
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"549.4897,-779.5 681.4624,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"566.8174"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
fail
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"584.145,-757.5 584.145,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"607.314"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
synth
</text>
<polyline
fill=
"none"
stroke=
"#000000"
points=
"630.4829,-757.5 630.4829,-779.5 "
/>
<text
text-anchor=
"middle"
x=
"655.9727"
y=
"-764.3"
font-family=
"Times,serif"
font-size=
"14.00"
fill=
"#000000"
>
restart
</text>
</g>
<!-- hash->purge -->
<g
id=
"edge37"
class=
"edge"
><title>
hash:lookup:s
->
purge:top:n
</title>
<path
fill=
"none"
stroke=
"purple"
stroke-width=
"2"
d=
"M639.5,-864C639.5,-840.333 626.085,-833.99 622.417,-815.06"
/>
<polygon
fill=
"purple"
stroke=
"purple"
stroke-width=
"2"
points=
"625.894,-814.641 621.5,-805 618.923,-815.277 625.894,-814.641"
/>
<g
id=
"edge37"
class=
"edge"
>
<title>
hash:s
->
purge:n
</title>
<path
fill=
"none"
stroke=
"#a020f0"
stroke-width=
"2"
d=
"M639.4761,-883.5C639.4761,-858.5936 621.4277,-853.3619 616.6336,-833.6816"
/>
<polygon
fill=
"#a020f0"
stroke=
"#a020f0"
stroke-width=
"2"
points=
"620.0834,-833.0406 615.4761,-823.5 613.1282,-833.8314 620.0834,-833.0406"
/>
</g>
</g>
</svg>
doc/sphinx/users-guide/vcl-built-in-subs.rst
View file @
ee31c0b9
...
...
@@ -267,10 +267,6 @@ with one of the following keywords:
``pass``
see `pass`_
``miss``
Synchronously refresh the object from the backend despite the
cache hit. Control will eventually pass to :ref:`vcl_miss`.
``deliver``
Deliver the object. If it is stale, a background fetch to refresh
it is triggered.
...
...
lib/libvarnish/vte.c
View file @
ee31c0b9
...
...
@@ -31,6 +31,7 @@
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
/* for MUSL (ssize_t) */
#include "vdef.h"
#include "vqueue.h"
...
...
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