OSDN Git Service

Significant cleanups in SysV IPC handling (shared mem and semaphores).
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 28 Nov 2000 23:27:57 +0000 (23:27 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 28 Nov 2000 23:27:57 +0000 (23:27 +0000)
commitc715fdea267843fd7fae4253aee0ae91e941393c
treeb19e41edd57afe461ebc3dae271c8a5d17eba710
parent914822713c9a8ce452860fb895ef79ecfd583746
Significant cleanups in SysV IPC handling (shared mem and semaphores).
IPC key assignment will now work correctly even when multiple postmasters
are using same logical port number (which is possible given -k switch).
There is only one shared-mem segment per postmaster now, not 3.
Rip out broken code for non-TAS case in bufmgr and xlog, substitute a
complete S_LOCK emulation using semaphores in spin.c.  TAS and non-TAS
logic is now exactly the same.
When deadlock is detected, "Deadlock detected" is now the elog(ERROR)
message, rather than a NOTICE that comes out before an unhelpful ERROR.
27 files changed:
doc/src/sgml/ref/postmaster.sgml
src/backend/access/transam/xlog.c
src/backend/commands/async.c
src/backend/postmaster/postmaster.c
src/backend/storage/buffer/buf_init.c
src/backend/storage/buffer/bufmgr.c
src/backend/storage/buffer/s_lock.c
src/backend/storage/buffer/xlog_bufmgr.c
src/backend/storage/ipc/ipc.c
src/backend/storage/ipc/ipci.c
src/backend/storage/ipc/shmem.c
src/backend/storage/ipc/sinval.c
src/backend/storage/ipc/sinvaladt.c
src/backend/storage/ipc/spin.c
src/backend/storage/lmgr/lock.c
src/backend/storage/lmgr/proc.c
src/backend/utils/init/postinit.c
src/include/storage/buf_internals.h
src/include/storage/bufmgr.h
src/include/storage/ipc.h
src/include/storage/lmgr.h
src/include/storage/proc.h
src/include/storage/s_lock.h
src/include/storage/shmem.h
src/include/storage/sinval.h
src/include/storage/sinvaladt.h
src/include/storage/spin.h