Disable update_process_title by default on Windows

The performance overhead of this can be significant on Windows, and most
people don't have the tools to view it anyway as Windows does not have
native support for process titles.

Discussion: <0A3221C70F24FB45833433255569204D1F5BE3E8@G01JPEXMBYT05>

Takayuki Tsunakawa
pull/31/head
Magnus Hagander 9 years ago
parent d125d25790
commit 0921554657
  1. 2
      doc/src/sgml/config.sgml
  2. 4
      src/backend/utils/misc/guc.c
  3. 6
      src/bin/initdb/initdb.c

@ -5430,6 +5430,8 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv;
is received by the server. The process title is typically viewed
by the <command>ps</> command,
or in Windows by using the <application>Process Explorer</>.
This value defaults to off on Windows platforms due to the
platform's significant overhead for updating the process title.
Only superusers can change this setting.
</para>
</listitem>

@ -1210,7 +1210,11 @@ static struct config_bool ConfigureNamesBool[] =
gettext_noop("Enables updating of the process title every time a new SQL command is received by the server.")
},
&update_process_title,
#ifdef WIN32
false,
#else
true,
#endif
NULL, NULL, NULL
},

@ -1292,6 +1292,12 @@ setup_config(void)
"#effective_io_concurrency = 0");
#endif
#ifdef WIN32
conflines = replace_token(conflines,
"#update_process_title = on",
"#update_process_title = off");
#endif
snprintf(path, sizeof(path), "%s/postgresql.conf", pg_data);
writefile(path, conflines);

Loading…
Cancel
Save