# PL Profiler Report for current

Example 1 for plprofiler documentation.

## PL/pgSQL Call Graph

## List of functions detailed below

- public.tpcb() oid=66237
- public.tpcb_fetch_abalance() oid=66446
- public.tpcb_ins_history() oid=66241
- public.tpcb_upd_accounts() oid=66238
- public.tpcb_upd_branches() oid=66240
- public.tpcb_upd_tellers() oid=66239

## All 6 functions (by self_time)

### Function public.tpcb_upd_accounts() oid=66238 (show)

self_time = 575,965 µs
total_time = 1,066,077 µs

`public.tpcb_upd_accounts` | `(par_aid integer, par_delta integer)`
`RETURNS integer`

Line | exec_count | total_time | longest_time | Source Code
--- | --- | --- | --- | ---
`0` | 20 | 1066077 | 74998 | `-- Function Totals`
`1` | 0 | 0 | 0 | ``
`2` | 0 | 0 | 0 | `BEGIN`
`3` | 20 | 574661 | 50362 | `UPDATE pgbench_accounts SET abalance = abalance + par_delta`
`4` | 0 | 0 | 0 | `WHERE aid = par_aid;`
`5` | 20 | 491355 | 26487 | `RETURN tpcb_fetch_abalance(par_aid);`
`6` | 0 | 0 | 0 | `END;`
`7` | 0 | 0 | 0 | ``

### Function public.tpcb_fetch_abalance() oid=66446 (show)

self_time = 490,112 µs
total_time = 490,112 µs

`public.tpcb_fetch_abalance` | `(par_aid integer)`
`RETURNS integer`

Line | exec_count | total_time | longest_time | Source Code
--- | --- | --- | --- | ---
`0` | 20 | 490112 | 26437 | `-- Function Totals`
`1` | 0 | 0 | 0 | ``
`2` | 0 | 0 | 0 | `DECLARE`
`3` | 0 | 0 | 0 | `var_abalance integer;`
`4` | 0 | 0 | 0 | `BEGIN`
`5` | 20 | 489828 | 26430 | `RETURN abalance FROM pgbench_accounts WHERE aid = par_aid;`
`6` | 0 | 0 | 0 | `END;`
`7` | 0 | 0 | 0 | ``

### Function public.tpcb_upd_tellers() oid=66239 (show)

self_time = 2,878 µs
total_time = 2,878 µs

`public.tpcb_upd_tellers` | `(par_tid integer, par_delta integer)`
`RETURNS void`

Line | exec_count | total_time | longest_time | Source Code
--- | --- | --- | --- | ---
`0` | 20 | 2878 | 496 | `-- Function Totals`
`1` | 0 | 0 | 0 | ``
`2` | 0 | 0 | 0 | `BEGIN`
`3` | 20 | 2811 | 490 | `UPDATE pgbench_tellers SET tbalance = tbalance + par_delta`
`4` | 0 | 0 | 0 | `WHERE tid = par_tid;`
`5` | 0 | 0 | 0 | `END;`
`6` | 0 | 0 | 0 | ``

### Function public.tpcb() oid=66237 (show)

self_time = 2,832 µs
total_time = 1,073,876 µs

`public.tpcb` | `(par_aid integer, par_bid integer, par_tid integer, par_delta integer)`
`RETURNS integer`

Line | exec_count | total_time | longest_time | Source Code
--- | --- | --- | --- | ---
`0` | 20 | 1073876 | 76744 | `-- Function Totals`
`1` | 0 | 0 | 0 | ``
`2` | 0 | 0 | 0 | `DECLARE`
`3` | 0 | 0 | 0 | `var_abalance integer;`
`4` | 0 | 0 | 0 | `BEGIN`
`5` | 20 | 1066480 | 75125 | `var_abalance = tpcb_upd_accounts(par_aid, par_delta);`
`6` | 20 | 4391 | 807 | `PERFORM tpcb_upd_tellers(par_tid, par_delta);`
`7` | 20 | 1477 | 337 | `PERFORM tpcb_upd_branches(par_bid, par_delta);`
`8` | 20 | 1447 | 470 | `PERFORM tpcb_ins_history(par_aid, par_tid, par_bid, par_delta);`
`9` | 20 | 5 | 1 | `RETURN var_abalance;`
`10` | 0 | 0 | 0 | `END;`
`11` | 0 | 0 | 0 | ``

### Function public.tpcb_upd_branches() oid=66240 (show)

self_time = 1,055 µs
total_time = 1,055 µs

`public.tpcb_upd_branches` | `(par_bid integer, par_delta integer)`
`RETURNS void`

Line | exec_count | total_time | longest_time | Source Code
--- | --- | --- | --- | ---
`0` | 20 | 1055 | 253 | `-- Function Totals`
`1` | 0 | 0 | 0 | ``
`2` | 0 | 0 | 0 | `BEGIN`
`3` | 20 | 1021 | 251 | `UPDATE pgbench_branches SET bbalance = bbalance + par_delta`
`4` | 0 | 0 | 0 | `WHERE bid = par_bid;`
`5` | 0 | 0 | 0 | `END;`
`6` | 0 | 0 | 0 | ``

### Function public.tpcb_ins_history() oid=66241 (show)

self_time = 1,034 µs
total_time = 1,034 µs

`public.tpcb_ins_history` | `(par_aid integer, par_tid integer, par_bid integer, par_delta integer)`
`RETURNS void`

Line | exec_count | total_time | longest_time | Source Code
--- | --- | --- | --- | ---
`0` | 20 | 1034 | 382 | `-- Function Totals`
`1` | 0 | 0 | 0 | ``
`2` | 0 | 0 | 0 | `BEGIN`
`3` | 20 | 989 | 377 | `INSERT INTO pgbench_history (tid, bid, aid, delta, mtime)`
`4` | 0 | 0 | 0 | `VALUES (par_tid, par_bid, par_aid, par_delta, CURRENT_TIMESTAMP);`
`5` | 0 | 0 | 0 | `END;`
`6` | 0 | 0 | 0 | ``