Log Message: ----------- Add primitive deadlock detection code. This is achieved by calling the standard deadlock detector and treating resource locks like exclusive standard locks. The downside is overly aggressive detection - however safety is the initial goal.
The resource lock and proclock hash tables are now merged with the standard lock
ones - and we now use the standard lock lwlock too. The reason being to ensure
safe interlocking for deadlock detection between standard and resource locks.
(see the deadlock code README for more details).
Modified Files:
--------------
bizgres/postgresql/src/backend/storage/ipc:
ipci.c (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/storage/ipc/ipci.c.diff?r1=1.2&r2=1.3)
bizgres/postgresql/src/backend/storage/lmgr:
deadlock.c (r1.1.1.2.2.1 -> r1.2)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/storage/lmgr/deadlock.c.diff?r1=1.1.1.2.2.1&r2=1.2)
lock.c (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/storage/lmgr/lock.c.diff?r1=1.2&r2=1.3)
proc.c (r1.1.1.2.2.1 -> r1.2)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/storage/lmgr/proc.c.diff?r1=1.1.1.2.2.1&r2=1.2)
bizgres/postgresql/src/backend/utils/resscheduler:
README (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/resscheduler/README.diff?r1=1.2&r2=1.3)
resqueue.c (r1.1 -> r1.2)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/resscheduler/resqueue.c.diff?r1=1.1&r2=1.2)
resscheduler.c (r1.1 -> r1.2)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/resscheduler/resscheduler.c.diff?r1=1.1&r2=1.2)
bizgres/postgresql/src/include/storage:
lock.h (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/include/storage/lock.h.diff?r1=1.2&r2=1.3)
lwlock.h (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/include/storage/lwlock.h.diff?r1=1.2&r2=1.3)
proc.h (r1.2 -> r1.3)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/include/storage/proc.h.diff?r1=1.2&r2=1.3)
bizgres/postgresql/src/include/utils:
resscheduler.h (r1.1 -> r1.2)
(http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/include/utils/resscheduler.h.diff?r1=1.1&r2=1.2)
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match
