Log Message: ----------- Fix cursors decleared WITH HOLD. This uncovered some unnoticed bugs created by previous changes that move where ResLockPortal was being called from. In this change we: - Move location of ResUnLockPortal from PortalRun to PortalDrop, this vastly simplifies most abort and commit handling to the point where it done mostly from free by the resource owner and portal managemebnt code. - Eliminiate ResProcReleaseLocks, ResProcReleaseCurrentOwner and the complex ResLockReleaseAll in favour of a much simpler function AtExitCleanup_ResPortals that scans existant portals and calles ResUnLockPortal if appropriate. - Add a global variable to count holdable portals and reset the portalId when appropriate, so we don't run out of available Ids. Modified Files: -------------- bizgres/postgresql/src/backend/commands: portalcmds.c (r1.5 -> r1.6) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/commands/portalcmds.c.diff?r1=1.5&r2=1.6) bizgres/postgresql/src/backend/tcop: pquery.c (r1.5 -> r1.6) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/tcop/pquery.c.diff?r1=1.5&r2=1.6) bizgres/postgresql/src/backend/utils/init: postinit.c (r1.4 -> r1.5) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/init/postinit.c.diff?r1=1.4&r2=1.5) bizgres/postgresql/src/backend/utils/mmgr: portalmem.c (r1.5 -> r1.6) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/mmgr/portalmem.c.diff?r1=1.5&r2=1.6) bizgres/postgresql/src/backend/utils/resowner: resowner.c (r1.5 -> r1.6) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/resowner/resowner.c.diff?r1=1.5&r2=1.6) bizgres/postgresql/src/backend/utils/resscheduler: resqueue.c (r1.13 -> r1.14) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/resscheduler/resqueue.c.diff?r1=1.13&r2=1.14) resscheduler.c (r1.13 -> r1.14) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/backend/utils/resscheduler/resscheduler.c.diff?r1=1.13&r2=1.14) bizgres/postgresql/src/include/utils: portal.h (r1.5 -> r1.6) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/include/utils/portal.h.diff?r1=1.5&r2=1.6) resscheduler.h (r1.11 -> r1.12) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/bizgres/bizgres/postgresql/src/include/utils/resscheduler.h.diff?r1=1.11&r2=1.12)
pgsql-committers by date:
Соглашаюсь с условиями обработки персональных данных