Minor GUC code refactoring.
Tom Lane <tgl@sss.pgh.pa.us>
Minor GUC code refactoring. Split out "ConfigOptionIsVisible" to perform the privilege check for GUC_SUPERUSER_ONLY GUCs (which these days can also be read by pg_read_all_settings role members), and move the should-we-show-it checks from GetConfigOptionValues to its sole caller. This commit also removes get_explain_guc_options's check of GUC_NO_SHOW_ALL, which seems to have got cargo-culted in there. While there's no obvious use-case for marking a GUC both GUC_EXPLAIN and GUC_NO_SHOW_ALL, if it were set up that way one would expect EXPLAIN to show it --- if that's not what you want, then don't set GUC_EXPLAIN. In passing, simplify the loop logic in show_all_settings. Nitin Jadhav, Bharath Rupireddy, Tom Lane Discussion: https://postgr.es/m/CAMm1aWYgfekpRK-Jz5=pM_bV+Om=ktGq1vxTZ_dr1Z6MV-qokA@mail.gmail.com
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/utils/misc/guc.c | modified | +4 −9 |
| src/backend/utils/misc/guc_funcs.c | modified | +33 −37 |
| src/include/utils/guc_tables.h | modified | +3 −0 |
Discussion
- Improve GetConfigOptionValues function 19 messages · 2023-01-18 → 2023-01-27