Skip to content

Fixed bug where alters that rely on state are retried but shouldn't#356

Merged
patduin merged 3 commits into
mainfrom
fix/retried_alter_bug
Nov 26, 2025
Merged

Fixed bug where alters that rely on state are retried but shouldn't#356
patduin merged 3 commits into
mainfrom
fix/retried_alter_bug

Conversation

@patduin
Copy link
Copy Markdown
Contributor

@patduin patduin commented Nov 26, 2025

Discovered bug when using Iceberg no locking strategy.

Bug:
Client sends an alter_table with using EnvironmentContext and set expected key's and values properties: expected_parameter_key and expected_parameter_value.
WD sends Alter to HMS but connection breaks down and TTransportException is thrown. Alter actually succeeds in HMS.
WD doesn't know about success so naively retries, but now the alter fails due to expected values differ.
Client receives failed alter. (Although it was correctly applied in HMS).

Solution:
WD shouldn't retry but just return the connection exception to the client who can then act as it pleases.

@patduin patduin requested a review from a team as a code owner November 26, 2025 13:30
@patduin patduin merged commit 486d07e into main Nov 26, 2025
4 checks passed
@patduin patduin deleted the fix/retried_alter_bug branch November 26, 2025 14:08
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.

2 participants