Here's a v3 that gets rid of guc_hooks.c in favor of moving the hook functions to related modules (though some did end up in variables.c for lack of a better idea). I also pushed all the hook function declarations to guc_hooks.h. Unsurprisingly, removal of guc.h #includes from header files led to discovery of some surprising indirect dependencies, notably a lot of places were evidently depending on indirect inclusions of array.h.
I think this is code-complete at this point. I'd like to not sit on it too long, because it'll inevitably get side-swiped by additions of new GUCs. On the other hand, pushing it in the middle of a CF would presumably break other people's patches. Maybe push it at the end of this CF, to give people a month to rebase anything that's affected? regards, tom lane
split-up-guc-code-3.patch.gz
Description: split-up-guc-code-3.patch.gz