transactions start time
Aleksei Arefjev <aleksei.arefjev@nordicgaming.com>
From: Aleksei Arefjev <aleksei.arefjev@nordicgaming.com>
To: pgsql-performance@postgresql.org
Date: 2012-07-24T11:14:35Z
Lists: pgsql-performance
Hi,
In statistical reports gathered by PgBadger on our PostgreSQL databases
almost always we have in "Queries that took up the most time" report table
information about transactions start time ('BEGIN;' command). Something
like that in example below:
2 3h34m52.26s 48,556,167 0.00s BEGIN;
0.82s | BEGIN;
0.82s | BEGIN;
0.82s | BEGIN;
0.81s | BEGIN;
0.81s | BEGIN;
0.81s | BEGIN;
0.80s | BEGIN;
0.80s | BEGIN;
0.79s | BEGIN;
0.79s | BEGIN;
Databases placed on different hardware, OS - Debian GNU/Linux, PostgreSQL
9.1
So, questions are:
1. Is this a normal situation with transactions start time ( BEGIN method) ?
2. How can we reduce transactions start time if it's possible in principle?
3. What happens in PostgreSQL on transaction starting time? Can someone
describe this process in detail? (of course, I saw in PostgreSQL source
code, for example, definition such kind functions, like StartTransaction
function, but it's not so easy to understand for third-party researcher,
that all of these operations mean in real for performance)
Best Regards
Aleksei