Can vertica doc team document the mechanics of lock timeouts ?
To clarify, what i am asking is to explain how lock timeouts work. The LockTimeout parameter in our cluster is set to 800, but the dc_lock_attempts table shows 3 different values for timeout_in_seconds : 8, 800 , 1800.
This information would be useful when troubleshooting lock timeout, and it is information an administrator would need to know. Based on conversation with support in the past , I know that certain timeout in dc_errors are benign because there are multiple attempts to get a table lock.
Thank you.
0
Comments
Colin, I have created a Jira for the documentation team to fix this. Thanks for your feedback. - Sarah
Hi,
The dc_lock_attempts data collector table contains a history of lock attempts (resolved requests). Note the key words "resolved requests" in the description.
The time out of 800 you see is probably your DB's current value of the LockTimeout config param:
select current_value, default_value, description from configuration_parameters where parameter_name = 'LockTimeout';
That param controls lock timeout for Tables and Projections.
The 1800 time out is for the system locks (Global Catalog [Meta-data global across all nodes], Local Catalog [Meta-data local to a node] and Cluster Topology)
Fyi ...
Global Catalog Locks - For the catalog that is global across all nodes, a GCL (X) lock is taken in scenarios including:
Local Catalog Locks - Only taken in X mode in scenarios including the following:
Elastic Cluster Locks - Needed for scaling the cluster up or down to meet the needs of the database:
Finally, the 8 second time out is most likely for O locks on tables where you are modifying them (i.e. adding or dropping columns).
This is good ! Thanks for taking the time to write it Jim. I am sure other folks would benefit as well when they search for this type of info.