Pg_Upgrade’s copies or links user data and index files from the old to the
new cluster, and of course this can be slow, especially the default copy mode. Previous releases of pg_upgrade did the copying/linking
serially.

Building on my recent pg_upgrade –jobs mode addition, I have just
applied a patch to allow each
tablespace to be copied/linked in parallel. Here are the performance results with two tablespaces on different magnetic disks, in copy
mode:

          ---- seconds ----
   GB        git     patch
    2       62.09    63.75
    4       95.93   107.22
    8      194.96   195.29
   16      494.38   348.93
   32      983.28   644.23
   64     2227.73  1244.08
  128     4735.83  2547.09

Continue Reading »