2
A layout of the internal structures of the proxy
4
You may use "dot" from graphviz to generate human consumable output
7
$ dot -T pdf -o lua-classes.pdf lua-classes.dot
8
$ dot -T png -o lua-classes.png lua-classes.dot
10
or you generate a image-map
12
$ dot -T cmapx -o lua-classes.map -Tpng -o lua-classes.png lua-classes.dot && \
13
echo '<img src="lua-classes.png" border="0" usemap="#g"/>' > lua-classes.html && \
14
cat lua-classes.map >> lua-classes.html
25
<table border="1" cellborder="1" href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-structures.html#mysql-proxy-scripting-structures">
26
<tr><td bgcolor="black"><font color="white">
29
<tr><td align="left" border="0" cellpadding="0" port="connection">
30
r-- connection : Connection
32
<tr><td align="left" border="0" cellpadding="0" port="global">
35
<tr><td align="left" border="0" cellpadding="0" port="queries">
38
<tr><td align="left" border="0" cellpadding="0" port="response">
39
r-- response : Response
47
<table border="1" cellborder="1" href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-structures.html#mysql-proxy-scripting-structures-connection">
48
<tr><td bgcolor="black" port="head"><font color="white">
51
<tr><td align="left" border="0" port="client">
54
<tr><td align="left" border="0" port="server">
57
<tr><td align="left" border="0">
60
<tr><td align="left" border="0">
61
-w connection_close : boolean
70
<table border="1" cellborder="1">
71
<tr><td bgcolor="black" port="head"><font color="white">
74
<tr><td align="left" border="0" port="src">
77
<tr><td align="left" border="0" port="dst">
80
<tr><td align="left" border="0">
81
r-- default_db : string
83
<tr><td align="left" border="0">
84
r-- mysqld_version : string
86
<tr><td align="left" border="0">
89
<tr><td align="left" border="0">
90
r-- scramble_buffer : string
92
<tr><td align="left" border="0">
95
<tr><td align="left" border="0">
96
r-- scrambled_password : string
105
<table border="1" cellborder="1">
106
<tr><td bgcolor="black" port="head"><font color="white">
109
<tr><td align="left" border="0">
112
<tr><td align="left" border="0">
115
<tr><td align="left" border="0">
118
<tr><td align="left" border="0">
128
<table border="1" cellborder="1">
129
<tr><td bgcolor="black" port="head"><font color="white">
132
<tr><td align="left" border="0">
135
<tr><td align="left" border="0" port="backends">
136
r-- backends : Backends
145
<table border="1" cellborder="1" href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-structures.html#mysql-proxy-scripting-structures-backends">
146
<tr><td bgcolor="black" port="head"><font color="white">
149
<tr><td align="left" border="0" port="index">
150
--x __index(int) : Backend
152
<tr><td align="left" border="0">
161
<table border="1" cellborder="1">
162
<tr><td bgcolor="black" port="head"><font color="white">
165
<tr><td align="left" border="0">
166
r-- connected_clients : int
168
<tr><td align="left" border="0" port="dst">
171
<tr><td align="left" border="0">
174
<tr><td align="left" border="0">
177
<tr><td align="left" border="0">
180
<tr><td align="left" border="0" port="pool">
181
r-- pool : ConnectionPool
189
<table border="1" cellborder="1">
190
<tr><td bgcolor="black" port="head"><font color="white">
193
<tr><td align="left" border="0">
194
rw- max_idle_connections : int
196
<tr><td align="left" border="0">
197
rw- min_idle_connections : int
199
<tr><td align="left" border="0" port="users">
208
<table border="1" cellborder="1">
209
<tr><td bgcolor="black" port="head"><font color="white">
212
<tr><td align="left" border="0" port="index">
213
--x __index(string) : Queue
221
<table border="1" cellborder="1">
222
<tr><td bgcolor="black" port="head"><font color="white">
225
<tr><td align="left" border="0">
226
r-- cur_idle_connections : int
235
<table border="1" cellborder="1" href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-structures.html#mysql-proxy-scripting-structures-queries">
236
<tr><td bgcolor="black" port="head"><font color="white">
239
<tr><td align="left" border="0">
240
--x append(id, packet)
242
<tr><td align="left" border="0">
243
--x prepend(id, packet)
245
<tr><td align="left" border="0">
248
<tr><td align="left" border="0">
257
<table border="1" cellborder="1" href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-structures.html#mysql-proxy-scripting-structures-response">
258
<tr><td bgcolor="black" port="head"><font color="white">
261
<tr><td align="left" border="0">
264
<tr><td align="left" border="0">
267
<tr><td align="left" border="0">
270
<tr><td align="left" border="0">
271
rw- sqlstate : string
273
<tr><td align="left" border="0" port="resultset">
274
rw- resultset : Resultset
282
<table border="1" cellborder="1" href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy-scripting-structures.html#mysql-proxy-scripting-structures-resultset">
283
<tr><td bgcolor="black" port="head"><font color="white">
286
<tr><td align="left" border="0" port="fields">
289
<tr><td align="left" border="0" port="rows">
298
<table border="1" cellborder="1">
299
<tr><td bgcolor="black" port="head"><font color="white">
302
<tr><td align="left" border="0" port="index">
303
--x __newindex(int, Field)
311
<table border="1" cellborder="1">
312
<tr><td bgcolor="black" port="head"><font color="white">
315
<tr><td align="left" border="0">
318
<tr><td align="left" border="0">
327
<table border="1" cellborder="1">
328
<tr><td bgcolor="black" port="head"><font color="white">
331
<tr><td align="left" border="0" port="index">
332
--x __newindex(int, value)
340
<table border="1" cellborder="1">
341
<tr><td bgcolor="black" port="head"><font color="white">
344
<tr><td align="left" border="0" port="resultset">
345
r-- resultset : Resultset
347
<tr><td align="left" border="0">
350
<tr><td align="left" border="0">
353
<tr><td align="left" border="0">
354
r-- query_time : number
356
<tr><td align="left" border="0">
357
r-- response_time : number
365
<table border="1" cellborder="1">
366
<tr><td bgcolor="black" port="head"><font color="white">
369
<tr><td align="left" border="0" port="fields">
372
<tr><td align="left" border="0" port="rows">
375
<tr><td align="left" border="0">
378
<tr><td align="left" border="0">
381
<tr><td align="left" border="0">
384
<tr><td align="left" border="0" port="flags">
387
<tr><td align="left" border="0">
388
r-- warning_count : int
390
<tr><td align="left" border="0">
391
r-- affected_rows : int
393
<tr><td align="left" border="0">
396
<tr><td align="left" border="0">
397
r-- query_status : int
405
<table border="1" cellborder="1">
406
<tr><td bgcolor="black" port="head"><font color="white">
409
<tr><td align="left" border="0">
410
r-- in_trans : boolean
412
<tr><td align="left" border="0">
413
r-- auto_commit : boolean
415
<tr><td align="left" border="0">
416
r-- no_good_index_used : boolean
418
<tr><td align="left" border="0">
419
r-- no_index_used : boolean
427
<table border="1" cellborder="1">
428
<tr><td bgcolor="black" port="head"><font color="white">
431
<tr><td align="left" border="0">
434
<tr><td align="left" border="0">
437
<tr><td align="left" border="0">
438
r-- org_name : string
440
<tr><td align="left" border="0">
443
<tr><td align="left" border="0">
444
r-- org_table : string
452
<table border="1" cellborder="1">
453
<tr><td bgcolor="black" port="head"><font color="white">
456
<tr><td align="left" border="0" port="index">
457
--x __index(int) : Field
459
<tr><td align="left" border="0">
468
<table border="1" cellborder="1">
469
<tr><td bgcolor="black" port="head"><font color="white">
472
<tr><td align="left" border="0">
475
<tr><td align="left" border="0">
478
<tr><td align="left" border="0">
479
r-- org_name : string
481
<tr><td align="left" border="0">
484
<tr><td align="left" border="0">
485
r-- org_table : string
493
<table border="1" cellborder="1">
494
<tr><td bgcolor="black" port="head"><font color="white">
497
<tr><td align="left" border="0" port="iter">
504
Proxy:connection:w -> Connection:head;
505
Connection:client:e -> Socket:head;
506
Connection:server:e -> Socket:head;
507
Socket:src:e -> Address:head;
508
Socket:dst:e -> Address:head;
509
Proxy:global:w -> Globals:head;
510
Globals:backends:e -> Backends:head;
511
Backends:index:e -> Backend:head;
512
Backend:pool:e -> ConnectionPool:head;
513
Backend:dst:e -> Address:head;
514
ConnectionPool:users:e -> Users:head;
515
Users:index:e -> Queue:head;
516
Proxy:queries:e -> Queries:head;
517
Proxy:response:e -> Response:head;
518
Response:resultset:e -> Resultset:head;
519
Resultset:fields:e -> Fields:head;
520
Resultset:rows:e -> Rows:head;
521
Fields:index:e -> Field:head;
523
Injection:resultset:e -> InjectionResultset:head;
524
InjectionResultset:fields:e -> InjectionFields:head;
525
InjectionResultset:rows:e -> InjectionRows:head;
526
InjectionResultset:flags:e -> InjectionFlags:head;
527
InjectionFields:index:e -> InjectionField:head;
528
InjectionRows:iter:e -> InjectionRow:head;