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

Reply via email to