Index: src/include/storage/lock.h =================================================================== RCS file: /repositories/hot/cvs/pgsql/src/include/storage/lock.h,v retrieving revision 1.102 diff -c -r1.102 lock.h *** src/include/storage/lock.h 23 Nov 2006 05:14:04 -0000 1.102 --- src/include/storage/lock.h 30 Jan 2007 09:45:58 -0000 *************** *** 119,124 **** --- 119,151 ---- #define AccessExclusiveLock 8 /* ALTER TABLE, DROP TABLE, VACUUM * FULL, and unqualified LOCK TABLE */ + /* + * Lock compatibility matrix for the above lock modes. + * + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | N | AS | RS | RE | SUE | S | SRE | E | AE | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | N | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | AS | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | RS | 0 | 0 | 0 | 0 | 0 | 0 | 0 | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | RE | 0 | 0 | 0 | 0 | 0 | x | x | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | SUE | 0 | 0 | 0 | 0 | x | x | x | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | S | 0 | 0 | 0 | x | x | 0 | x | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | SRE | 0 | 0 | 0 | x | x | x | x | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | E | 0 | 0 | x | x | x | x | x | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * | AE | 0 | x | x | x | x | x | x | x | x | + * +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+ + * + */ + /* * LOCKTAG is the key information needed to look up a LOCK item in the