Search before asking
Fluss version
main (development)
Please describe the bug 馃悶
When the Rust client has cached table metadata and the table is later dropped, subsequent writes keep retrying UnknownTableOrBucketException until the caller's deadline instead of returning TableNotExist.
To reproduce, create a table, write once to warm the metadata cache, drop the table, and write again. The second write should fail promptly with TableNotExist, and the stale table metadata should be removed.
Solution
After UnknownTableOrBucketException, force-refresh the table metadata and compare the current table_id with the writer's table identity. If the table is missing or has been recreated with a different ID, evict the stale metadata, stop retrying, and complete the pending writes with TableNotExist; otherwise, continue the normal metadata retry.
Are you willing to submit a PR?
Search before asking
Fluss version
main (development)
Please describe the bug 馃悶
When the Rust client has cached table metadata and the table is later dropped, subsequent writes keep retrying
UnknownTableOrBucketExceptionuntil the caller's deadline instead of returningTableNotExist.To reproduce, create a table, write once to warm the metadata cache, drop the table, and write again. The second write should fail promptly with
TableNotExist, and the stale table metadata should be removed.Solution
After
UnknownTableOrBucketException, force-refresh the table metadata and compare the currenttable_idwith the writer's table identity. If the table is missing or has been recreated with a different ID, evict the stale metadata, stop retrying, and complete the pending writes withTableNotExist; otherwise, continue the normal metadata retry.Are you willing to submit a PR?