pgsql: Arrange for large sequential scans to synchronize with each

Started by Tom Laneabout 19 years ago1 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

Log Message:
-----------
Arrange for large sequential scans to synchronize with each other, so that
when multiple backends are scanning the same relation concurrently, each page
is (ideally) read only once.

Jeff Davis, with review by Heikki and Tom.

Modified Files:
--------------
pgsql/src/backend/access/heap:
Makefile (r1.15 -> r1.16)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/Makefile.diff?r1=1.15&r2=1.16)
heapam.c (r1.234 -> r1.235)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/heapam.c.diff?r1=1.234&r2=1.235)
pgsql/src/backend/storage/buffer:
freelist.c (r1.59 -> r1.60)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/freelist.c.diff?r1=1.59&r2=1.60)
pgsql/src/backend/storage/ipc:
ipci.c (r1.91 -> r1.92)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/ipci.c.diff?r1=1.91&r2=1.92)
pgsql/src/backend/utils/misc:
guc.c (r1.395 -> r1.396)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c.diff?r1=1.395&r2=1.396)
pgsql/src/include/access:
heapam.h (r1.124 -> r1.125)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/heapam.h.diff?r1=1.124&r2=1.125)
relscan.h (r1.54 -> r1.55)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/relscan.h.diff?r1=1.54&r2=1.55)
pgsql/src/include:
pg_config_manual.h (r1.26 -> r1.27)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/pg_config_manual.h.diff?r1=1.26&r2=1.27)
pgsql/src/include/storage:
lwlock.h (r1.36 -> r1.37)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/lwlock.h.diff?r1=1.36&r2=1.37)

Added Files:
-----------
pgsql/src/backend/access/heap:
syncscan.c (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/syncscan.c?rev=1.1&content-type=text/x-cvsweb-markup)