diff options
author | Bruce Momjian <bruce@momjian.us> | 2002-08-15 02:51:27 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2002-08-15 02:51:27 +0000 |
commit | 45e25445846e98fe4aac23d1073566c08cd62f0b (patch) | |
tree | 7db989a91d752dca0a014eaaa6b160cb04b08b1c /src/include/utils/builtins.h | |
parent | 4c4854c4583f1d7c3d0a28b714304e433f5571e8 (diff) | |
download | postgresql-45e25445846e98fe4aac23d1073566c08cd62f0b.tar.gz postgresql-45e25445846e98fe4aac23d1073566c08cd62f0b.zip |
As discussed on several occasions previously, the new anonymous
composite type capability makes it possible to create a system view
based on a table function in a way that is hopefully palatable to
everyone. The attached patch takes advantage of this, moving
show_all_settings() from contrib/tablefunc into the backend (renamed
all_settings(). It is defined as a builtin returning type RECORD. During
initdb a system view is created to expose the same information presently
available through SHOW ALL. For example:
test=# select * from pg_settings where name like '%debug%';
name | setting
-----------------------+---------
debug_assertions | on
debug_pretty_print | off
debug_print_parse | off
debug_print_plan | off
debug_print_query | off
debug_print_rewritten | off
wal_debug | 0
(7 rows)
Additionally during initdb two rules are created which make it possible
to change settings by updating the system view -- a "virtual table" as
Tom put it. Here's an example:
Joe Conway
Diffstat (limited to 'src/include/utils/builtins.h')
-rw-r--r-- | src/include/utils/builtins.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/include/utils/builtins.h b/src/include/utils/builtins.h index 01d5a4e7306..621ab80315b 100644 --- a/src/include/utils/builtins.h +++ b/src/include/utils/builtins.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: builtins.h,v 1.190 2002/08/09 16:45:16 tgl Exp $ + * $Id: builtins.h,v 1.191 2002/08/15 02:51:27 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -662,6 +662,7 @@ extern Datum quote_literal(PG_FUNCTION_ARGS); /* guc.c */ extern Datum show_config_by_name(PG_FUNCTION_ARGS); extern Datum set_config_by_name(PG_FUNCTION_ARGS); +extern Datum show_all_settings(PG_FUNCTION_ARGS); /* catalog/pg_conversion.c */ extern Datum pg_convert3(PG_FUNCTION_ARGS); |