[master] 44dc73e add back the graphviz sources as removed by commit 4ad0d5bdfe45eb31111fb1d0b1a4aa72942b477d

Nils Goroll nils.goroll at uplex.de
Tue Oct 7 15:09:31 CEST 2014


commit 44dc73eec90b04e9f93364c3bfe281eb069bcd3f
Author: Nils Goroll <nils.goroll at uplex.de>
Date:   Mon Oct 6 16:58:51 2014 +0200

    add back the graphviz sources as removed by commit 4ad0d5bdfe45eb31111fb1d0b1a4aa72942b477d

diff --git a/doc/graphviz/cache_http1_fsm.dot b/doc/graphviz/cache_http1_fsm.dot
new file mode 100644
index 0000000..9ff2f57
--- /dev/null
+++ b/doc/graphviz/cache_http1_fsm.dot
@@ -0,0 +1,22 @@
+	digraph vcl_center {
+		size="7.2,10.5"
+		margin="0.5"
+		center="1"
+
+	acceptor -> http1_wait [label=S_STP_NEWREQ, align=center]
+	hash -> CNT_Request [label="Busy object\nS_STP_WORKING\nR_STP_LOOKUP"
+		color=blue]
+	disembark -> hash [style=dotted, color=blue]
+	http1_wait -> CNT_Request [label="S_STP_WORKING\nR_STP_RECV"]
+	http1_wait -> disembark [label="Session close"]
+	http1_wait -> disembark [label="Timeout" color=green]
+	disembark -> waiter [style=dotted, color=green]
+	waiter -> http1_wait [color=green]
+	CNT_Request -> disembark
+		[label="Busy object\nS_STP_WORKING\nR_STP_LOOKUP" color=blue]
+	CNT_Request -> http1_cleanup
+	http1_cleanup -> disembark [label="Session close"]
+	http1_cleanup -> CNT_Request [label="S_STP_WORKING\nR_STP_RECV"]
+	http1_cleanup -> http1_wait [label="S_STP_NEWREQ"]
+
+	}
diff --git a/doc/graphviz/cache_req_fsm.dot b/doc/graphviz/cache_req_fsm.dot
new file mode 100644
index 0000000..0edea1e
--- /dev/null
+++ b/doc/graphviz/cache_req_fsm.dot
@@ -0,0 +1,111 @@
+ digraph vcl_center {
+	size="7.2,10.5"
+	margin="0.5"
+	center="1"
+ acceptor [
+	shape=hexagon
+	label="Request received"
+ ]
+ ESI_REQ [ shape=hexagon ]
+ ESI_REQ -> recv
+ SYNTH [shape=plaintext]
+ RESTART [shape=plaintext]
+ acceptor -> recv [style=bold,color=green]
+	deliver [
+		shape=record
+		label="{cnt_deliver:|Filter obj.-\>resp.|{vcl_deliver\{\}|{req.|resp.}}|{restart?|<deliver>deliver?}}"
+	]
+ deliver:deliver:s -> DONE [style=bold,color=green]
+ deliver:deliver:s -> DONE [style=bold,color=red]
+ deliver:deliver:s -> DONE [style=bold,color=blue]
+ subgraph xcluster_synth {
+	synth [
+		shape=record
+		label="{cnt_synth:|{vcl_synth\{\}|resp.}|{<del>deliver?|<restart>restart?}}"
+	]
+	SYNTH -> synth
+	synth:del:s -> deliver [label=deliver]
+ }
+ subgraph xcluster_body {
+	fetch [
+		shape=record
+		label="{cnt_fetch:|wait for fetch|{<ok>OK|<err>Failed}}"
+	]
+ }
+ fetch:ok:s -> deliver [style=bold,color=red]
+ fetch:ok:s -> deliver [style=bold,color=blue]
+ fetch:err:s -> vcl_error
+ subgraph xcluster_lookup {
+	lookup [
+		shape=record
+		label="{<top>cnt_lookup:|hash lookup|{<busy>busy?|<e>exp?|<eb>exp+busy?|<h>hit?|<miss>miss?|<hfp>hit-for-pass?}}"
+	]
+	lookup2 [
+		shape=record
+		label="{<top>cnt_lookup:|{vcl_hit\{\}|req.*, obj.*}|{<deliver>deliver?|synth?|restart?|<fetch>fetch?|<pass>pass?}}"
+	]
+ }
+ lookup:busy:w -> lookup:top:w [label="(waitinglist)"]
+ lookup:miss:s -> miss [style=bold,color=blue]
+ lookup:hfp:s -> pass [style=bold,color=red]
+ lookup:e:s -> lookup2 [style=bold,color=green]
+ lookup:eb:s -> lookup2 [style=bold,color=green]
+ lookup:h:s -> lookup2 [style=bold,color=green]
+ lookup2:pass:s -> pass [style=bold,color=red]
+ lookup2:fetch:s -> miss [style=bold,color=blue]
+ lookup2:deliver:s -> deliver:n [style=bold,color=green]
+ subgraph xcluster_miss {
+	miss [
+		shape=record
+		label="{cnt_miss:|{vcl_miss\{\}|req.*}|{<fetch>fetch?|<synth>synth?|<rst>restart?|<pass>pass?}}"
+	]
+ }
+ miss:fetch:s -> fetch [label="fetch",style=bold,color=blue]
+ miss:pass:s -> pass [label="pass",style=bold,color=red]
+
+ subgraph xcluster_pass {
+	pass [
+		shape=record
+		label="{cnt_pass:|{vcl_pass\{\}|req.*}|{<fetch>fetch?|<synth>synth?|<rst>restart?}}"
+	]
+ }
+ pass:fetch:s -> fetch:n [style=bold, color=red]
+ subgraph xcluster_pipe {
+	pipe [
+		shape=record
+		label="{cnt_pipe:|filter req.*-\>bereq.*|{vcl_pipe()|req.*, bereq\.*}|{<pipe>pipe?|<synth>synth?}}"
+	]
+	pipe_do [
+		shape=ellipse
+		label="send bereq.\npipe until close"
+	]
+	pipe:pipe -> pipe_do [label="pipe",style=bold,color=orange]
+ }
+ pipe_do -> DONE [style=bold,color=orange]
+ subgraph xcluster_restart {
+	restart [
+		shape=record
+		label="{cnt_restart}"
+	]
+ }
+ RESTART -> restart [color=purple]
+ restart -> recv [color=purple]
+ restart -> err_restart
+ err_restart [label="SYNTH",shape=plaintext]
+ subgraph xcluster_recv {
+	recv [
+		shape=record
+		label="{cnt_recv:|{vcl_recv\{\}|req.*}|{vcl_hash\{\}|req.*}|{<lookup>lookup?|<pass>pass?|<pipe>pipe?|<synth>synth?|<purge>purge?}}"
+	]
+ }
+ recv:pipe -> pipe [style=bold,color=orange]
+ recv:pass -> pass [style=bold,color=red]
+ recv:lookup:s -> lookup [style=bold,color=green]
+ recv:purge:s -> purge [style=bold,color=purple]
+ subgraph xcluster_purge {
+	purge [
+		shape=record
+		label="{cnt_purge:|{vcl_purge\{\}|req.*}|{<synth>synth?}}"
+	]
+ }
+ }



More information about the varnish-commit mailing list