Re: How does the partitioned lock manager works? - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: How does the partitioned lock manager works?
Date
Msg-id 4631BC06.5000304@enterprisedb.com
Whole thread Raw
In response to How does the partitioned lock manager works?  ("rancpine cui" <rancpine@gmail.com>)
List pgsql-hackers
rancpine cui wrote:
>    When the lock manager's data structures were split into "partitions",
> how many such data structures can one partition control? 

The number of partitions is 16 (NUM_LOCK_PARTITIONS). The total size of 
the lock hash table is max_locks_per_xact * (max_connections + 
max_prepared_xacts). So the number of "lock slots" per partition is 
(max_locks_per_xact * (max_connections + 
max_prepared_xacts))/NUM_LOCK_PARTITIONS.

> Since we use
> LOCKTAG's hash value to decide the partition which the lock should in, can
> all locks be split into ONE partition?

In theory, yes. It's extremely unlikely to happen in practice.

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Dave Page
Date:
Subject: Windows support - PostgreSQL 8.0 and 8.1
Next
From: Hans-Juergen Schoenig
Date:
Subject: Re: Hi, I wanto joinin the developer group of postgresql