summaryrefslogtreecommitdiffstats
path: root/doc/action_state.dot
blob: d56d9da012c67c1a191a4f863a75428e0b9a819c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// This file is part of rsyslog.
// 
// rsyslog message state diagram
//
// see http://www.graphviz.org for how to obtain the graphviz processor
// which is used to build the actual graph.
//
// generate the graph with
// $ dot file.dot -Tpng >file.png

digraph msgState {
	compound=true; nodesep=1.0
	//label="\n\nrsyslog action transaction states\nhttp://www.rsyslog.com";
	//fontsize=20;

	rdy	[label="ready" group="main"];
	itx	[label="in Tx" group="main"];
	comm	[label="commit"]
	rtry	[label="retry"]
	susp	[label="suspended"]

	rdy  -> itx	[label="transaction begins"]
	itx  -> itx	[label="success"]
	itx  -> comm	[label="commit\n(caller or auto)"]
	itx  -> rtry	[label="error"]
	comm -> rdy	[label="success"]
	comm -> rtry	[label="error"]
	rtry -> rdy	[label="recovered"]
	rtry -> susp	[label="could not\nrecover"]
	susp -> rtry	[label="timeout expired"]

	{rank=same; comm rtry}
}