Hi, while experimenting with number of locks, i found something I cannot understand. From what i can read in the documentation, at any one given time, a query can obtain a max number of locks given by max_locks_per_transaction * (max_connections + max_prepared_transactions) I then changed my db to use this settings: mydb=# show max_locks_per_transaction ; max_locks_per_transaction --------------------------- 20 (1 row) mydb=# show max_connections ; max_connections ----------------- 2 (1 row) mydb=# show max_prepared_transactions ; max_prepared_transactions --------------------------- 0 (1 row) so i expected to be able to acquire a maximum of 40 locks. Then: mydb=# begin transaction ; BEGIN portavita=# SELECT 1 FROM root.ac; ?column? ---------- (0 rows) mydb=# select count(*) from pg_locks ; count ------- 132 (1 row) Why can I acquire 132 locks while the expected number is 40? What am I doing wrong? I m running Postgres 9.2.6 Thanks for your time, Fabio |