sql/catalog/lease: increase sql.tablecache.lease.refresh_limit
to 500
#59319
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The cluster setting
sql.tablecache.lease.refresh_limit
is used to decidehow many leases the sql descriptor lease manager will refresh every interval,
which is defined by the sql table lease duration (and is very much static).
This increase means that we'll refresh up to this many leases per node every
~2.5 minutes. There's already a semaphore in place to ensure that the
concurrency is not more than 5 per node. This has become ever more important
as more people are using cockroach with larger schemas. It's also become more
important because descriptors, schemas, and types are also leased.
Fixes #59316.
Release note (general change): Increased the default value of
sql.tablecache.lease.refresh_limit
to 500 in order to accomodate largerschemas without encountering
RETRY_COMMIT_DEADLINE_EXCEEDED
errors andgenerally higher latency.