aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/gist/gistxlog.c
diff options
context:
space:
mode:
authorAndres Freund <andres@anarazel.de>2016-09-08 17:02:43 -0700
committerAndres Freund <andres@anarazel.de>2016-09-08 17:18:46 -0700
commit45e191e3aa62d47a8bc1a33f784286b2051f45cb (patch)
treea758d62f63c4123052167b2aa6baa1cb551c0dbc /src/backend/access/gist/gistxlog.c
parent417fefaf089fc0b73607cbbe8bcd0bc9e89d08ef (diff)
downloadpostgresql-45e191e3aa62d47a8bc1a33f784286b2051f45cb.tar.gz
postgresql-45e191e3aa62d47a8bc1a33f784286b2051f45cb.zip
Improve scalability of md.c for large relations.
So far md.c used a linked list of segments. That proved to be a problem when processing large relations, because every smgr.c/md.c level access to a page incurred walking through a linked list of all preceding segments. Thus making accessing pages O(#segments). Replace the linked list of segments hanging off SMgrRelationData with an array of opened segments. That allows O(1) access to individual segments, if they've previously been opened. Discussion: <20140331101001.GE13135@alap3.anarazel.de> Reviewed-By: Peter Geoghegan, Tom Lane (in an older version)
Diffstat (limited to 'src/backend/access/gist/gistxlog.c')
0 files changed, 0 insertions, 0 deletions