Skip to content
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

Issue 3070 - Wait for state store commits to finish based on logs #3063

Merged

Conversation

patchwork01
Copy link
Collaborator

@patchwork01 patchwork01 commented Aug 12, 2024

Make sure you have checked all steps below.

Issue

Tests

  • My PR adds the following tests OR does not need testing for this extremely good reason:
    • Added StateStoreCommitterST, StateStoreCommitterLogEntryTest, StateStoreCommitterRunsBuilderTest
    • Updated SystemTestStateStoreFakeCommitsTest, StateStoreCommitRequestDeserialiserTest, StateStoreCommitterTest
    • Running StateStoreCommitterST in AWS

Documentation

  • In case of new functionality, my PR adds documentation that describes how to use it, or I have linked to a
    separate issue for that below.
  • If I have added, removed, or updated any external dependencies used in the project, I have updated the
    NOTICES file to reflect this.

@patchwork01 patchwork01 added one-review-required pr-stacked-top A stacked pull request that we don't want to merge into its target until the target PR is merged labels Aug 12, 2024
Base automatically changed from 3061-send-commits-in-parallel to develop August 13, 2024 08:38
@patchwork01 patchwork01 removed the pr-stacked-top A stacked pull request that we don't want to merge into its target until the target PR is merged label Aug 13, 2024
@patchwork01 patchwork01 changed the title Issue 3060 - Measure throughput in state store committer lambda Issue 3070 - Wait for state store commits to finish based on logs Aug 13, 2024
@patchwork01 patchwork01 marked this pull request as ready for review August 13, 2024 13:15
@patchwork01
Copy link
Collaborator Author

The system test is failing because the instance admin role doesn't have permissions to query the logs. That should be easy to fix.

case COMPACTION_JOB_ID_ASSIGNMENT:
return StateStoreCommitRequest.forCompactionJobIdAssignment(
context.deserialize(requestObj, CompactionJobIdAssignmentCommitRequest.class));
case SPLIT_PARTITION:
return StateStoreCommitRequest.forSplitPartition(
context.deserialize(requestObj, SplitPartitionCommitRequest.class));
case STORED_IN_S3:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Any reason for the re-ordering of the case statements?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I felt like the stored in S3 type should be separate from the others because it's handled differently. I'm not sure there's a good way to make this clear though.

@@ -129,7 +130,10 @@ private String getMessageGroupId(Message message) {
}

private StateStoreCommitRequest readCommitRequest(Message message) {
return new StateStoreCommitRequestDeserialiser(instance.getTablePropertiesProvider())
LoadS3ObjectFromDataBucket noLoadFromS3 = key -> {
throw new UnsupportedOperationException("Did not expect message held in S3");
Copy link
Collaborator

Choose a reason for hiding this comment

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

Language for message here sounds wrong, not able to think of better suggestion though

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I've just made it actually load from S3, thanks.

Copy link
Collaborator

@rtjd6554 rtjd6554 left a comment

Choose a reason for hiding this comment

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

Small queries as part of review

Copy link
Collaborator

@rtjd6554 rtjd6554 left a comment

Choose a reason for hiding this comment

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

Changes and comments acceptable

@rtjd6554 rtjd6554 assigned patchwork01 and unassigned rtjd6554 Aug 14, 2024
@patchwork01 patchwork01 merged commit 14706e0 into develop Aug 14, 2024
15 checks passed
@patchwork01 patchwork01 deleted the 3060-measure-deployed-state-store-committer-throughput branch August 14, 2024 13:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Wait for state store commits to finish based on logs
2 participants