]> granicus.if.org Git - postgresql/commit
Partially flatten struct tupleDesc so that it can be used in DSM.
authorAndres Freund <andres@anarazel.de>
Sun, 20 Aug 2017 18:19:12 +0000 (11:19 -0700)
committerAndres Freund <andres@anarazel.de>
Sun, 20 Aug 2017 18:19:12 +0000 (11:19 -0700)
commitc6293249dc178f52dd508c3e6ff353af41c90b58
tree4e78d6b3f690222102f2bf3c3df6695504d335b0
parent2cd70845240087da205695baedab6412342d1dbe
Partially flatten struct tupleDesc so that it can be used in DSM.

TupleDesc's attributes were already stored in contiguous memory after the
struct.  Go one step further and get rid of the array of pointers to
attributes so that they can be stored in shared memory mapped at different
addresses in each backend.  This won't work for TupleDescs with contraints
and defaults, since those point to other objects, but for many purposes
only attributes are needed.

Author: Thomas Munro
Reviewed-By: Andres Freund
Discussion: https://postgr.es/m/CAEepm=0ZtQ-SpsgCyzzYpsXS6e=kZWqk3g5Ygn3MDV7A8dabUA@mail.gmail.com
src/backend/access/common/tupdesc.c
src/include/access/tupdesc.h