Skip to content

[Pipe] Fix config event race in idempotent table IT - #18403

Merged
jt2594838 merged 1 commit into
apache:masterfrom
Caideyipi:fix/pipe-idempotent-it-precondition-race
Aug 5, 2026
Merged

[Pipe] Fix config event race in idempotent table IT#18403
jt2594838 merged 1 commit into
apache:masterfrom
Caideyipi:fix/pipe-idempotent-it-precondition-race

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Description

IoTDBPipeIdempotentIT executes preparation statements on the sender and immediately executes the conflict statement on the receiver. Since Pipe transfers config events asynchronously, the receiver may not have the required table or user yet, causing flaky does not exist errors before the idempotent conflict is created.

This change adds a database config event as a progress marker after the preparation statements and waits until it reaches the receiver. It also updates the final database count to include the marker database.

Tests

  • mvn spotless:apply -pl integration-test -Pwith-integration-tests
  • The two originally failing methods passed together:
    • testTableAlterUserIdempotent3
    • testSetTableColumnCommentIdempotent
  • Full IoTDBPipeIdempotentIT: 23 methods passed; one method hit a transient DataNode Connection refused error and passed when rerun separately.

@jt2594838
jt2594838 merged commit f493700 into apache:master Aug 5, 2026
41 checks passed
@jt2594838
jt2594838 deleted the fix/pipe-idempotent-it-precondition-race branch August 5, 2026 08:58
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