• H
    Revamp the way OIDs are dispatched to segments on CREATE statements. · f9016da2
    Heikki Linnakangas 提交于
    Instead of carrying a "new OID" field in all the structs that represent
    CREATE statements, introduce a generic mechanism for capturing the OIDs
    of all created objects, dispatching them to the QEs, and using those same
    OIDs when the corresponding objects are created in the QEs. This allows
    removing a lot of scattered changes in DDL command handling, that was
    previously needed to ensure that objects are assigned the same OIDs in
    all the nodes.
    
    This also provides the groundwork for pg_upgrade to dictate the OIDs to use
    for upgraded objects. The upstream has mechanisms for pg_upgrade to dictate
    the OIDs for a few objects (relations and types, at least), but in GPDB,
    we need to preserve the OIDs of almost all object types.
    f9016da2
cdbcopy.c 16.7 KB