• Robert Haas's avatar
    Support parallel btree index builds. · 9da0cc35
    Robert Haas authored
    To make this work, tuplesort.c and logtape.c must also support
    parallelism, so this patch adds that infrastructure and then applies
    it to the particular case of parallel btree index builds.  Testing
    to date shows that this can often be 2-3x faster than a serial
    index build.
    
    The model for deciding how many workers to use is fairly primitive
    at present, but it's better than not having the feature.  We can
    refine it as we get more experience.
    
    Peter Geoghegan with some help from Rushabh Lathia.  While Heikki
    Linnakangas is not an author of this patch, he wrote other patches
    without which this feature would not have been possible, and
    therefore the release notes should possibly credit him as an author
    of this feature.  Reviewed by Claudio Freire, Heikki Linnakangas,
    Thomas Munro, Tels, Amit Kapila, me.
    
    Discussion: http://postgr.es/m/CAM3SWZQKM=Pzc=CAHzRixKjp2eO5Q0Jg1SoFQqeXFQ647JiwqQ@mail.gmail.com
    Discussion: http://postgr.es/m/CAH2-Wz=AxWqDoVvGU7dq856S4r6sJAj6DBn7VMtigkB33N5eyg@mail.gmail.com
    9da0cc35
planner.h 2.13 KB