Bloqueo e índices

Aunque Postgres proporciona desbloqueo para lectura/escritura de datos en tablas, no ocurre así para cada método de acceso al índice implementado en en Postgres.

Los diferentes tipos de índices son manejados de la siguiente manera:

Indices GiST y R-Tree

Nivel de bloqueo de índice del tipo Compartición/exclusividad para acceso lectura/escritura. El bloqueo tiene lugar después de que la declaración se haya ejecutado.

Indices hash

Se usa el bloqueo a nivel de página para acceso lectura/escritura. El bloqueo tiene lugar después de que la página haya sido procesada.

Los bloqueos a nivel de página producen mejor concurrencia que los bloqueos a nivel de índice pero pueden provocar "puntos muertos".

Btree

Se usan bloqueos a nivel de página de compartición/exclusividad en los accesos de lectura/escritura. Los bloqueos se llevan a cabo inmediatamente después de que el tuplo índice sea insertado o buscado.

Los índices Btree proporciona la más alta concurrencia sin provocar "estados muertos".