-
Notifications
You must be signed in to change notification settings - Fork 3.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sql: prepared statements against tables with enum types not invalidated when enum changes #70378
Comments
The problem here is sort of known and relates to #64140 and a bit in #65620. The issue is that we don't track what leases we use in bind the way we do in prepare and, even if we did, we don't retain the initial value and thus could not re-parse the datum. In terms of planning, the memo tracks the versions it uses and then, upon execution, calls |
postgres seems to delete the prepared statement:
|
that's smart |
hm, looks like wire-level prepare and the
but in CRDB that gives also i don't know what i did before, but the |
The following sequence of commands should work properly, but instead return an error. The issue seems to be that the prepared statement doesn't notice that the table that it's referencing has an ENUM type that got modified, causing it to refresh its referenced descriptors.
I'd expect that this should work fine, or at worst, the error should be about the prepared statement being out of date or something.
Epic CRDB-8948
The text was updated successfully, but these errors were encountered: