2.8. Creating insert_lock table

If you are not going to use the native replication mode nor snapshot isolation mode, you can skip this section.

If you plan to use the native replication mode or snapshot isolation mode and insert_lock, creating pgpool_catalog.insert_lock table for mutual exclusion is strongly recommended. Without this, insert_lock works so far. However in that case Pgpool-II locks against the insert target table. This behavior is same table lock conflicts with VACUUM, so INSERT processing may be thereby kept waiting for a long time.

$ cd pgpool-II-4.5.1/src/sql
$ psql -f insert_lock.sql template1
   

Executing insert_lock.sql should be performed on every databases accessed via Pgpool-II. You do not need to do this for a database created after the execution of psql -f insert_lock.sql template1, as this template database will be cloned to create new databases.