Josh Berkus wrote: > On 6/3/11 11:01 AM, Bruce Momjian wrote: > > According to our documentation, 'userlocks' were removed in PG 8.2: > > > > > > http://developer.postgresql.org/pgdocs/postgres/runtime-config-developer.html > > I take it this doesn't trace advisory locks, and trace_locks does? > > If so, then by all means remove the code. I highly doubt anyone is > using that option anyway ...
The attached, applied patch removes all "traces" of trace_userlocks. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml new file mode 100644 index d3a8b26..fa2dcf3 *** a/doc/src/sgml/config.sgml --- b/doc/src/sgml/config.sgml *************** LOG: CleanUpLock: deleting: lock(0xb7ac *** 6193,6220 **** </varlistentry> <varlistentry> - <term><varname>trace_userlocks</varname> (<type>boolean</type>)</term> - <indexterm> - <primary><varname>trace_userlocks</> configuration parameter</primary> - </indexterm> - <listitem> - <para> - If on, emit information about user lock usage. Output is the same - as for <symbol>trace_locks</symbol>, only for user locks. - </para> - <para> - User locks were removed as of PostgreSQL version 8.2. This option - currently has no effect. - </para> - <para> - This parameter is only available if the <symbol>LOCK_DEBUG</symbol> - macro was defined when <productname>PostgreSQL</productname> was - compiled. - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><varname>trace_lock_oidmin</varname> (<type>integer</type>)</term> <indexterm> <primary><varname>trace_lock_oidmin</> configuration parameter</primary> --- 6193,6198 ---- diff --git a/src/backend/storage/lmgr/lock.c b/src/backend/storage/lmgr/lock.c new file mode 100644 index 905502f..ed8344f *** a/src/backend/storage/lmgr/lock.c --- b/src/backend/storage/lmgr/lock.c *************** static const LockMethodData user_lockmet *** 213,224 **** AccessExclusiveLock, /* highest valid lock mode number */ true, LockConflicts, ! lock_mode_names, ! #ifdef LOCK_DEBUG ! &Trace_userlocks ! #else ! &Dummy_trace ! #endif }; /* --- 213,219 ---- AccessExclusiveLock, /* highest valid lock mode number */ true, LockConflicts, ! lock_mode_names }; /* *************** static ResourceOwner awaitedOwner; *** 276,282 **** int Trace_lock_oidmin = FirstNormalObjectId; bool Trace_locks = false; - bool Trace_userlocks = false; int Trace_lock_table = 0; bool Debug_deadlocks = false; --- 271,276 ---- diff --git a/src/backend/utils/misc/check_guc b/src/backend/utils/misc/check_guc new file mode 100755 index 293fb03..91c1c58 *** a/src/backend/utils/misc/check_guc --- b/src/backend/utils/misc/check_guc *************** INTENTIONALLY_NOT_INCLUDED="autocommit d *** 20,26 **** is_superuser lc_collate lc_ctype lc_messages lc_monetary lc_numeric lc_time \ pre_auth_delay role seed server_encoding server_version server_version_int \ session_authorization trace_lock_oidmin trace_lock_table trace_locks trace_lwlocks \ ! trace_notify trace_userlocks transaction_isolation transaction_read_only \ zero_damaged_pages" ### What options are listed in postgresql.conf.sample, but don't appear --- 20,26 ---- is_superuser lc_collate lc_ctype lc_messages lc_monetary lc_numeric lc_time \ pre_auth_delay role seed server_encoding server_version server_version_int \ session_authorization trace_lock_oidmin trace_lock_table trace_locks trace_lwlocks \ ! trace_notify transaction_isolation transaction_read_only \ zero_damaged_pages" ### What options are listed in postgresql.conf.sample, but don't appear diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c new file mode 100644 index 106096f..f1d35a9 *** a/src/backend/utils/misc/guc.c --- b/src/backend/utils/misc/guc.c *************** static struct config_bool ConfigureNames *** 1059,1074 **** NULL, NULL, NULL }, { - {"trace_userlocks", PGC_SUSET, DEVELOPER_OPTIONS, - gettext_noop("No description available."), - NULL, - GUC_NOT_IN_SAMPLE - }, - &Trace_userlocks, - false, - NULL, NULL, NULL - }, - { {"trace_lwlocks", PGC_SUSET, DEVELOPER_OPTIONS, gettext_noop("No description available."), NULL, --- 1059,1064 ---- diff --git a/src/include/storage/lock.h b/src/include/storage/lock.h new file mode 100644 index e106ad5..bc746a3 *** a/src/include/storage/lock.h --- b/src/include/storage/lock.h *************** extern int max_locks_per_xact; *** 34,40 **** #ifdef LOCK_DEBUG extern int Trace_lock_oidmin; extern bool Trace_locks; - extern bool Trace_userlocks; extern int Trace_lock_table; extern bool Debug_deadlocks; #endif /* LOCK_DEBUG */ --- 34,39 ----
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers