Skip to content

Conversation

@fqazi
Copy link
Collaborator

@fqazi fqazi commented Dec 24, 2025

Previously, our last resort logic to read descriptors at the end timestamp for historical descriptors would behave incorrectly for locked descriptor leasing. This would read at the leased timestamp and, for initially created descriptors, incorrectly return "descriptor not found". Even if the descriptor is avaialble at the actual timestamp for the transaction. To address this, this patch surfaces these errors only if the base timestamp is not able to satisfy the request either. The findForTimestamp logic already attempts the base timestamp if the locked timestamp is not viable.

Fixes: #159998

Release note: None

@cockroach-teamcity
Copy link
Member

This change is Reviewable

Previously, our last resort logic to read descriptors at the end
timestamp for historical descriptors would behave incorrectly for locked
descriptor leasing. This would read at the leased timestamp and, for
initially created descriptors, incorrectly return "descriptor not
found". Even if the descriptor is avaialble at the actual timestamp for
the transaction. To address this, this patch surfaces these errors only
if the base timestamp is not able to satisfy the request either. The
findForTimestamp logic already attempts the base timestamp if the locked
timestamp is not viable.

Fixes: cockroachdb#159998

Release note: None
@fqazi fqazi force-pushed the handleHistoricReadsAtBase branch from 6e9224c to 7face00 Compare December 24, 2025 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

crosscluster/logical: TestRandomStream failed

2 participants