Skip to content

Support ALTER TABLE EXECUTE in event driven scheduler#14756

Merged
losipiuk merged 5 commits intotrinodb:masterfrom
losipiuk:lo/iceberg-with-retries-test
Oct 27, 2022
Merged

Support ALTER TABLE EXECUTE in event driven scheduler#14756
losipiuk merged 5 commits intotrinodb:masterfrom
losipiuk:lo/iceberg-with-retries-test

Conversation

@losipiuk
Copy link
Copy Markdown
Member

(x) This is not user-visible or docs only and no release notes are required.
( ) Release notes are required, please propose a release note for me.
( ) Release notes are required, with the following suggested text:

Note: Technically nothing changed as fixes are related to even driven FTE scheduler which was not released yet

@cla-bot cla-bot bot added the cla-signed label Oct 25, 2022
@losipiuk losipiuk requested review from arhimondr and findepi October 25, 2022 21:04
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another approach would be to change cleanExtraOutputFiles, so it strips location from path stored in filesToKeep. Theoretically, it may prevent us from deleting something we should delete, but it is a very slim chance of that. No chance really as filenames contain UUID.

@findepi do you think I should drop the change in the test and modify prod code instead?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another approach would be to change cleanExtraOutputFiles, so it strips location from path stored in filesToKeep.

That's what @alexjo2144 did for orphan removal.
It's because paths can be compared reliably only if they are "canonical". But the concept of canonical paths is not very well defined, is it?

Sounds reasonable to me.

@losipiuk losipiuk force-pushed the lo/iceberg-with-retries-test branch from 6509a00 to 42a70ae Compare October 26, 2022 09:38
@findepi
Copy link
Copy Markdown
Member

findepi commented Oct 26, 2022

"Use just filename when cleaning up extra output files" LGTM cc @alexjo2144

@losipiuk
Copy link
Copy Markdown
Member Author

losipiuk commented Oct 26, 2022

One test hang:

2022-10-26T11:58:38.5581207Z 	io.trino.faulttolerant.iceberg.TestIcebergParquetFaultTolerantExecutionConnectorTest.testEmptyInsert running for 30.02m.

thread dump: https://gist.github.com/losipiuk/4cb58f0bc5b692cefe85e0cfdd01a61b

@losipiuk losipiuk force-pushed the lo/iceberg-with-retries-test branch from eebe4a7 to 855fb4c Compare October 27, 2022 10:45
arhimondr and others added 5 commits October 27, 2022 12:46
Previously when determining if file should be deleted at the end of DML
operation because it comes from failed task was based on full path.
It does not work great with case insensitive filesystems. This PR
changes logic to just look at filename ignoring the path, it is still ok
as filenames have UUID weaved in hence are unique (note: even on
conflit we would not loose any data, worst thing that can happen that
some garbage will be left behing, and cleaned up later).
This increases test coverage. So far we did not have coverage for
MERGE and ALTER TABLE EXECUTE
@losipiuk losipiuk force-pushed the lo/iceberg-with-retries-test branch from 855fb4c to b2b10b3 Compare October 27, 2022 10:46
@losipiuk losipiuk merged commit 719c1c3 into trinodb:master Oct 27, 2022
@github-actions github-actions bot added this to the 402 milestone Oct 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

4 participants