Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit3bea93b

Browse files
committed
Add columns boot_val and reset_val to the pg_settings view, to expose
the value a parameter has at server start and will have after RESET,respectively.Greg Smith, with some modifications by me.
1 parent89f373b commit3bea93b

File tree

5 files changed

+82
-14
lines changed

5 files changed

+82
-14
lines changed

‎doc/src/sgml/catalogs.sgml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!-- $PostgreSQL: pgsql/doc/src/sgml/catalogs.sgml,v 2.176 2008/09/23 09:20:33 heikki Exp $ -->
1+
<!-- $PostgreSQL: pgsql/doc/src/sgml/catalogs.sgml,v 2.177 2008/10/06 13:05:36 mha Exp $ -->
22
<!--
33
Documentation of the system catalogs, directed toward PostgreSQL developers
44
-->
@@ -6435,6 +6435,18 @@
64356435
<entry>Allowed values in enum parameters (NULL for non-enum
64366436
values)</entry>
64376437
</row>
6438+
<row>
6439+
<entry><structfield>boot_val</structfield></entry>
6440+
<entry><type>text</type></entry>
6441+
<entry>Parameter value assumed at server startup if the parameter is
6442+
not otherwise set</entry>
6443+
</row>
6444+
<row>
6445+
<entry><structfield>reset_val</structfield></entry>
6446+
<entry><type>text</type></entry>
6447+
<entry>Default run-time session value for the parameter that it will
6448+
revert to if <command>RESET</command></entry>
6449+
</row>
64386450
<row>
64396451
<entry><structfield>sourcefile</structfield></entry>
64406452
<entry><type>text</type></entry>

‎src/backend/utils/misc/guc.c

Lines changed: 64 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
* Written by Peter Eisentraut <peter_e@gmx.net>.
1111
*
1212
* IDENTIFICATION
13-
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.474 2008/09/30 10:52:13 heikki Exp $
13+
* $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.475 2008/10/06 13:05:36 mha Exp $
1414
*
1515
*--------------------------------------------------------------------
1616
*/
@@ -6067,6 +6067,8 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
60676067
{
60686068
casePGC_BOOL:
60696069
{
6070+
structconfig_bool*lconf= (structconfig_bool*)conf;
6071+
60706072
/* min_val */
60716073
values[9]=NULL;
60726074

@@ -6075,6 +6077,12 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
60756077

60766078
/* enumvals */
60776079
values[11]=NULL;
6080+
6081+
/* boot_val */
6082+
values[12]=pstrdup(lconf->boot_val ?"on" :"off");
6083+
6084+
/* reset_val */
6085+
values[13]=pstrdup(lconf->reset_val ?"on" :"off");
60786086
}
60796087
break;
60806088

@@ -6092,6 +6100,14 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
60926100

60936101
/* enumvals */
60946102
values[11]=NULL;
6103+
6104+
/* boot_val */
6105+
snprintf(buffer,sizeof(buffer),"%d",lconf->boot_val);
6106+
values[12]=pstrdup(buffer);
6107+
6108+
/* reset_val */
6109+
snprintf(buffer,sizeof(buffer),"%d",lconf->reset_val);
6110+
values[13]=pstrdup(buffer);
60956111
}
60966112
break;
60976113

@@ -6109,11 +6125,21 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
61096125

61106126
/* enumvals */
61116127
values[11]=NULL;
6128+
6129+
/* boot_val */
6130+
snprintf(buffer,sizeof(buffer),"%g",lconf->boot_val);
6131+
values[12]=pstrdup(buffer);
6132+
6133+
/* reset_val */
6134+
snprintf(buffer,sizeof(buffer),"%g",lconf->reset_val);
6135+
values[13]=pstrdup(buffer);
61126136
}
61136137
break;
61146138

61156139
casePGC_STRING:
61166140
{
6141+
structconfig_string*lconf= (structconfig_string*)conf;
6142+
61176143
/* min_val */
61186144
values[9]=NULL;
61196145

@@ -6122,11 +6148,25 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
61226148

61236149
/* enumvals */
61246150
values[11]=NULL;
6151+
6152+
/* boot_val */
6153+
if (lconf->boot_val==NULL)
6154+
values[12]=NULL;
6155+
else
6156+
values[12]=pstrdup(lconf->boot_val);
6157+
6158+
/* reset_val */
6159+
if (lconf->reset_val==NULL)
6160+
values[13]=NULL;
6161+
else
6162+
values[13]=pstrdup(lconf->reset_val);
61256163
}
61266164
break;
61276165

61286166
casePGC_ENUM:
61296167
{
6168+
structconfig_enum*lconf= (structconfig_enum*)conf;
6169+
61306170
/* min_val */
61316171
values[9]=NULL;
61326172

@@ -6135,6 +6175,12 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
61356175

61366176
/* enumvals */
61376177
values[11]=config_enum_get_options((structconfig_enum*)conf,"","");
6178+
6179+
/* boot_val */
6180+
values[12]=pstrdup(config_enum_lookup_by_value(lconf,lconf->boot_val));
6181+
6182+
/* reset_val */
6183+
values[13]=pstrdup(config_enum_lookup_by_value(lconf,lconf->reset_val));
61386184
}
61396185
break;
61406186

@@ -6152,6 +6198,12 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
61526198

61536199
/* enumvals */
61546200
values[11]=NULL;
6201+
6202+
/* boot_val */
6203+
values[12]=NULL;
6204+
6205+
/* reset_val */
6206+
values[13]=NULL;
61556207
}
61566208
break;
61576209
}
@@ -6163,14 +6215,14 @@ GetConfigOptionByNum(int varnum, const char **values, bool *noshow)
61636215
*/
61646216
if (conf->source==PGC_S_FILE&&superuser())
61656217
{
6166-
values[12]=conf->sourcefile;
6218+
values[14]=conf->sourcefile;
61676219
snprintf(buffer,sizeof(buffer),"%d",conf->sourceline);
6168-
values[13]=pstrdup(buffer);
6220+
values[15]=pstrdup(buffer);
61696221
}
61706222
else
61716223
{
6172-
values[12]=NULL;
6173-
values[13]=NULL;
6224+
values[14]=NULL;
6225+
values[15]=NULL;
61746226
}
61756227
}
61766228

@@ -6207,7 +6259,7 @@ show_config_by_name(PG_FUNCTION_ARGS)
62076259
* show_all_settings - equiv to SHOW ALL command but implemented as
62086260
* a Table Function.
62096261
*/
6210-
#defineNUM_PG_SETTINGS_ATTS14
6262+
#defineNUM_PG_SETTINGS_ATTS16
62116263

62126264
Datum
62136265
show_all_settings(PG_FUNCTION_ARGS)
@@ -6259,9 +6311,13 @@ show_all_settings(PG_FUNCTION_ARGS)
62596311
TEXTOID,-1,0);
62606312
TupleDescInitEntry(tupdesc, (AttrNumber)12,"enumvals",
62616313
TEXTOID,-1,0);
6262-
TupleDescInitEntry(tupdesc, (AttrNumber)13,"sourcefile",
6314+
TupleDescInitEntry(tupdesc, (AttrNumber)13,"boot_val",
6315+
TEXTOID,-1,0);
6316+
TupleDescInitEntry(tupdesc, (AttrNumber)14,"reset_val",
6317+
TEXTOID,-1,0);
6318+
TupleDescInitEntry(tupdesc, (AttrNumber)15,"sourcefile",
62636319
TEXTOID,-1,0);
6264-
TupleDescInitEntry(tupdesc, (AttrNumber)14,"sourceline",
6320+
TupleDescInitEntry(tupdesc, (AttrNumber)16,"sourceline",
62656321
INT4OID,-1,0);
62666322

62676323
/*

‎src/include/catalog/catversion.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
3838
* Portions Copyright (c) 1994, Regents of the University of California
3939
*
40-
* $PostgreSQL: pgsql/src/include/catalog/catversion.h,v 1.493 2008/10/05 17:33:16 petere Exp $
40+
* $PostgreSQL: pgsql/src/include/catalog/catversion.h,v 1.494 2008/10/06 13:05:37 mha Exp $
4141
*
4242
*-------------------------------------------------------------------------
4343
*/
@@ -53,6 +53,6 @@
5353
*/
5454

5555
/*yyyymmddN */
56-
#defineCATALOG_VERSION_NO200810051
56+
#defineCATALOG_VERSION_NO200810061
5757

5858
#endif

‎src/include/catalog/pg_proc.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
88
* Portions Copyright (c) 1994, Regents of the University of California
99
*
10-
* $PostgreSQL: pgsql/src/include/catalog/pg_proc.h,v 1.517 2008/10/05 17:33:16 petere Exp $
10+
* $PostgreSQL: pgsql/src/include/catalog/pg_proc.h,v 1.518 2008/10/06 13:05:37 mha Exp $
1111
*
1212
* NOTES
1313
* The script catalog/genbki.sh reads this file and generates .bki
@@ -3145,7 +3145,7 @@ DATA(insert OID = 2077 ( current_settingPGNSP PGUID 12 1 0 0 f f t f s 1 25 "2
31453145
DESCR("SHOW X as a function");
31463146
DATA(insertOID=2078 (set_configPGNSPPGUID12100ffffv325"25 25 16"_null__null__null_set_config_by_name_null__null__null_ ));
31473147
DESCR("SET X as a function");
3148-
DATA(insertOID=2084 (pg_show_all_settingsPGNSPPGUID12110000fftts02249"""{25,25,25,25,25,25,25,25,25,25,25,25,25,23}""{o,o,o,o,o,o,o,o,o,o,o,o,o,o}""{name,setting,unit,category,short_desc,extra_desc,context,vartype,source,min_val,max_val,enumvals,sourcefile,sourceline}"show_all_settings_null__null__null_ ));
3148+
DATA(insertOID=2084 (pg_show_all_settingsPGNSPPGUID12110000fftts02249"""{25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,23}""{o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o}""{name,setting,unit,category,short_desc,extra_desc,context,vartype,source,min_val,max_val,enumvals,boot_val,reset_val,sourcefile,sourceline}"show_all_settings_null__null__null_ ));
31493149
DESCR("SHOW ALL as a function");
31503150
DATA(insertOID=1371 (pg_lock_statusPGNSPPGUID12110000ffttv02249"""{25,26,26,23,21,25,28,26,26,21,25,23,25,16}""{o,o,o,o,o,o,o,o,o,o,o,o,o,o}""{locktype,database,relation,page,tuple,virtualxid,transactionid,classid,objid,objsubid,virtualtransaction,pid,mode,granted}"pg_lock_status_null__null__null_ ));
31513151
DESCR("view system lock information");

‎src/test/regress/expected/rules.out

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1287,7 +1287,7 @@ SELECT viewname, definition FROM pg_views WHERE schemaname <> 'information_schem
12871287
pg_prepared_xacts | SELECT p.transaction, p.gid, p.prepared, u.rolname AS owner, d.datname AS database FROM ((pg_prepared_xact() p(transaction, gid, prepared, ownerid, dbid) LEFT JOIN pg_authid u ON ((p.ownerid = u.oid))) LEFT JOIN pg_database d ON ((p.dbid = d.oid)));
12881288
pg_roles | SELECT pg_authid.rolname, pg_authid.rolsuper, pg_authid.rolinherit, pg_authid.rolcreaterole, pg_authid.rolcreatedb, pg_authid.rolcatupdate, pg_authid.rolcanlogin, pg_authid.rolconnlimit, '********'::text AS rolpassword, pg_authid.rolvaliduntil, pg_authid.rolconfig, pg_authid.oid FROM pg_authid;
12891289
pg_rules | SELECT n.nspname AS schemaname, c.relname AS tablename, r.rulename, pg_get_ruledef(r.oid) AS definition FROM ((pg_rewrite r JOIN pg_class c ON ((c.oid = r.ev_class))) LEFT JOIN pg_namespace n ON ((n.oid = c.relnamespace))) WHERE (r.rulename <> '_RETURN'::name);
1290-
pg_settings | SELECT a.name, a.setting, a.unit, a.category, a.short_desc, a.extra_desc, a.context, a.vartype, a.source, a.min_val, a.max_val, a.enumvals, a.sourcefile, a.sourceline FROM pg_show_all_settings() a(name, setting, unit, category, short_desc, extra_desc, context, vartype, source, min_val, max_val, enumvals, sourcefile, sourceline);
1290+
pg_settings | SELECT a.name, a.setting, a.unit, a.category, a.short_desc, a.extra_desc, a.context, a.vartype, a.source, a.min_val, a.max_val, a.enumvals, a.boot_val, a.reset_val, a.sourcefile, a.sourceline FROM pg_show_all_settings() a(name, setting, unit, category, short_desc, extra_desc, context, vartype, source, min_val, max_val, enumvals, boot_val, reset_val, sourcefile, sourceline);
12911291
pg_shadow | SELECT pg_authid.rolname AS usename, pg_authid.oid AS usesysid, pg_authid.rolcreatedb AS usecreatedb, pg_authid.rolsuper AS usesuper, pg_authid.rolcatupdate AS usecatupd, pg_authid.rolpassword AS passwd, (pg_authid.rolvaliduntil)::abstime AS valuntil, pg_authid.rolconfig AS useconfig FROM pg_authid WHERE pg_authid.rolcanlogin;
12921292
pg_stat_activity | SELECT s.datid, d.datname, s.procpid, s.usesysid, u.rolname AS usename, s.current_query, s.waiting, s.xact_start, s.query_start, s.backend_start, s.client_addr, s.client_port FROM pg_database d, pg_stat_get_activity(NULL::integer) s(datid, procpid, usesysid, current_query, waiting, xact_start, query_start, backend_start, client_addr, client_port), pg_authid u WHERE ((s.datid = d.oid) AND (s.usesysid = u.oid));
12931293
pg_stat_all_indexes | SELECT c.oid AS relid, i.oid AS indexrelid, n.nspname AS schemaname, c.relname, i.relname AS indexrelname, pg_stat_get_numscans(i.oid) AS idx_scan, pg_stat_get_tuples_returned(i.oid) AS idx_tup_read, pg_stat_get_tuples_fetched(i.oid) AS idx_tup_fetch FROM (((pg_class c JOIN pg_index x ON ((c.oid = x.indrelid))) JOIN pg_class i ON ((i.oid = x.indexrelid))) LEFT JOIN pg_namespace n ON ((n.oid = c.relnamespace))) WHERE (c.relkind = ANY (ARRAY['r'::"char", 't'::"char"]));

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp