PostgreSQL Source Code  git master
lockdefs.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  xl_standby_lock
 

Macros

#define NoLock   0
 
#define AccessShareLock   1 /* SELECT */
 
#define RowShareLock   2 /* SELECT FOR UPDATE/FOR SHARE */
 
#define RowExclusiveLock   3 /* INSERT, UPDATE, DELETE */
 
#define ShareUpdateExclusiveLock
 
#define ShareLock   5 /* CREATE INDEX (WITHOUT CONCURRENTLY) */
 
#define ShareRowExclusiveLock
 
#define ExclusiveLock   7 /* blocks ROW SHARE/SELECT...FOR UPDATE */
 
#define AccessExclusiveLock
 
#define MaxLockMode   8 /* highest standard lock mode */
 
#define InplaceUpdateTupleLock   ExclusiveLock
 

Typedefs

typedef int LOCKMASK
 
typedef int LOCKMODE
 
typedef struct xl_standby_lock xl_standby_lock
 

Macro Definition Documentation

◆ AccessExclusiveLock

#define AccessExclusiveLock
Value:
8 /* ALTER TABLE, DROP TABLE, VACUUM FULL,
* and unqualified LOCK TABLE */

Definition at line 43 of file lockdefs.h.

◆ AccessShareLock

#define AccessShareLock   1 /* SELECT */

Definition at line 36 of file lockdefs.h.

◆ ExclusiveLock

#define ExclusiveLock   7 /* blocks ROW SHARE/SELECT...FOR UPDATE */

Definition at line 42 of file lockdefs.h.

◆ InplaceUpdateTupleLock

#define InplaceUpdateTupleLock   ExclusiveLock

Definition at line 48 of file lockdefs.h.

◆ MaxLockMode

#define MaxLockMode   8 /* highest standard lock mode */

Definition at line 45 of file lockdefs.h.

◆ NoLock

#define NoLock   0

Definition at line 34 of file lockdefs.h.

◆ RowExclusiveLock

#define RowExclusiveLock   3 /* INSERT, UPDATE, DELETE */

Definition at line 38 of file lockdefs.h.

◆ RowShareLock

#define RowShareLock   2 /* SELECT FOR UPDATE/FOR SHARE */

Definition at line 37 of file lockdefs.h.

◆ ShareLock

#define ShareLock   5 /* CREATE INDEX (WITHOUT CONCURRENTLY) */

Definition at line 40 of file lockdefs.h.

◆ ShareRowExclusiveLock

#define ShareRowExclusiveLock
Value:
6 /* like EXCLUSIVE MODE, but allows ROW
* SHARE */

Definition at line 41 of file lockdefs.h.

◆ ShareUpdateExclusiveLock

#define ShareUpdateExclusiveLock
Value:
4 /* VACUUM (non-FULL), ANALYZE, CREATE
* INDEX CONCURRENTLY */

Definition at line 39 of file lockdefs.h.

Typedef Documentation

◆ LOCKMASK

typedef int LOCKMASK

Definition at line 25 of file lockdefs.h.

◆ LOCKMODE

typedef int LOCKMODE

Definition at line 26 of file lockdefs.h.

◆ xl_standby_lock