• Tom Lane's avatar
    Access pg_dump's options structs through Archive struct, not directly. · 5b5fea2a
    Tom Lane authored
    Rather than passing around DumpOptions and RestoreOptions as separate
    arguments, add fields to struct Archive to carry pointers to these objects,
    and access them through those fields when needed.  There already was a
    RestoreOptions pointer in Archive, though for no obvious reason it was part
    of the "private" struct rather than out where pg_dump.c could see it.
    
    Doing this allows reversion of quite a lot of parameter-addition changes
    made in commit 0eea8047, which is a good thing IMO because this will
    reduce the code delta between 9.4 and 9.5, probably easing a few future
    back-patch efforts.  Moreover, the previous commit only added a DumpOptions
    argument to functions that had to have it at the time, which means we could
    anticipate still more code churn (and more back-patch hazard) as the
    requirement spread further.  I'd hit exactly that problem in my upcoming
    patch to fix extension membership marking, which is what motivated me to
    do this.
    5b5fea2a
pg_restore.c 14.1 KB