Re: Serializable Isolation without blocking
От | Kevin Grittner |
---|---|
Тема | Re: Serializable Isolation without blocking |
Дата | |
Msg-id | 4B476642020000250002E0FA@gw.wicourts.gov обсуждение исходный текст |
Ответ на | Re: Serializable Isolation without blocking (Markus Wanner <markus@bluegap.ch>) |
Список | pgsql-hackers |
Again, a somewhat tardy post from a question found in review. Markus Wanner <markus@bluegap.ch> wrote: >> I suppose these more persistent write locks should >> be kept out of the DEFAULT lock method, too.... > > I fail to understand that part. What's the DEFAULT lock method? With some adjustment of line wrapping for email... From src/include/storage/lock.h: ------------------------------------------------------------ /** Lock methods are identified by LOCKMETHODID. (Despite the* declaration as uint16, we are constrained to 256 lockmethodsby* the layout of LOCKTAG.)*/ typedef uint16 LOCKMETHODID; /* These identify the known lock methods */ #define DEFAULT_LOCKMETHOD 1 #define USER_LOCKMETHOD 2 ------------------------------------------------------------ From the src/backend/storage/lmgr/README: ------------------------------------------------------------ Lock Data Structures -------------------- Lock methods describe the overall locking behavior. Currently there are two lock methods: DEFAULT and USER. Lock modes describe the type of the lock (read/write or shared/ exclusive). In principle, each lock method can have its own set of lock modes with different conflict rules, but currently DEFAULT and USER methods use identical lock mode sets. See src/tools/backend/index.html and src/include/storage/lock.h for more details. (Lock modes are also called lock types in some places in the code and documentation.) ------------------------------------------------------------ At least the initial implementation of the in-memory locks to support detection of rw-dependencies will use the structures defined in the lock.c file. -Kevin
В списке pgsql-hackers по дате отправления: