pgsql: Move RecoveryLockList into a hash table.

2018-06-26 Thread Thomas Munro
Move RecoveryLockList into a hash table. Standbys frequently need to release all locks held by a given xid. Instead of searching one big list linearly, let's create one list per xid and put them in a hash table, so we can find what we need in O(1) time. Earlier analysis and a prototype were done

pgsql: Move RecoveryLockList into a hash table.

2018-06-26 Thread Thomas Munro
Move RecoveryLockList into a hash table. Standbys frequently need to release all locks held by a given xid. Instead of searching one big list linearly, let's create one list per xid and put them in a hash table, so we can find what we need in O(1) time. Earlier analysis and a prototype were done

pgsql: Move RecoveryLockList into a hash table.

2018-06-26 Thread Thomas Munro
Move RecoveryLockList into a hash table. Standbys frequently need to release all locks held by a given xid. Instead of searching one big list linearly, let's create one list per xid and put them in a hash table, so we can find what we need in O(1) time. Earlier analysis and a prototype were done

pgsql: Move RecoveryLockList into a hash table.

2018-06-26 Thread Thomas Munro
Move RecoveryLockList into a hash table. Standbys frequently need to release all locks held by a given xid. Instead of searching one big list linearly, let's create one list per xid and put them in a hash table, so we can find what we need in O(1) time. Earlier analysis and a prototype were done

pgsql: Move RecoveryLockList into a hash table.

2018-06-26 Thread Thomas Munro
Move RecoveryLockList into a hash table. Standbys frequently need to release all locks held by a given xid. Instead of searching one big list linearly, let's create one list per xid and put them in a hash table, so we can find what we need in O(1) time. Earlier analysis and a prototype were done

pgsql: Move RecoveryLockList into a hash table.

2018-06-26 Thread Thomas Munro
Move RecoveryLockList into a hash table. Standbys frequently need to release all locks held by a given xid. Instead of searching one big list linearly, let's create one list per xid and put them in a hash table, so we can find what we need in O(1) time. Earlier analysis and a prototype were done