Skip to content

Conversation

@GeorgeJahad
Copy link
Contributor

@GeorgeJahad GeorgeJahad commented May 24, 2023

What changes were proposed in this pull request?

The incremental bootstrapping feature, currently in master, only treats the active fs sst files incrementally. This PR extends that functionality to the om snapshot related sst files.

The feature is currently implemented with an exclude list. The follower generates a list of the active sst files it has currently received from the leader, and passes that list to the leader as part of the next http ratis snapshot request. The leader then excludes those sst files from next tarball it sends to the follower.

In this PR, the follower adds the existing om snapshot sst files to the exclude list. The leader than uses that list to determine which snapshot sst files to exclude as well as which can be used as targets for hard links.

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-8208

How was this patch tested?

Unit/Integration tests added

@GeorgeJahad GeorgeJahad changed the title HDDS_8208. Handle large tarballs in bootstrapping. HDDS_8208. [SNAPSHOT] Handle large tarballs in bootstrapping. May 24, 2023
@GeorgeJahad GeorgeJahad changed the title HDDS_8208. [SNAPSHOT] Handle large tarballs in bootstrapping. HDDS_8208. [SNAPSHOT] Allow om snapshot bootstrap tarballs to be incremental May 24, 2023
@GeorgeJahad GeorgeJahad changed the title HDDS_8208. [SNAPSHOT] Allow om snapshot bootstrap tarballs to be incremental HDDS_8208. [SNAPSHOT] Allow om snapshot bootstrap tarballs to be incremental. May 24, 2023
@adoroszlai adoroszlai added the snapshot https://issues.apache.org/jira/browse/HDDS-6517 label May 25, 2023
@GeorgeJahad GeorgeJahad changed the title HDDS_8208. [SNAPSHOT] Allow om snapshot bootstrap tarballs to be incremental. HDDS-8208. [SNAPSHOT] Allow om snapshot bootstrap tarballs to be incremental. May 25, 2023
@smengcl smengcl added the gr label May 25, 2023
Copy link
Contributor

@smengcl smengcl left a comment

Choose a reason for hiding this comment

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

Thanks @GeorgeJahad for working on this. Overall lgtm. Some comments inline, mostly nits.

public static final TimeDuration
OZONE_OM_SNAPSHOT_PROVIDER_REQUEST_TIMEOUT_DEFAULT =
TimeDuration.valueOf(5000, TimeUnit.MILLISECONDS);
TimeDuration.valueOf(300000, TimeUnit.MILLISECONDS);
Copy link
Contributor

Choose a reason for hiding this comment

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

5s timeout to 5m is quite a jump. If this default config value revision is intended (i.e. not just for debugging), pls change ozone-default.xml correspondingly:

https://github.com/GeorgeJahad/ozone/blob/f758ab2cd96d92d2d73d51286bdd3c87840bceec/hadoop-hdds/common/src/main/resources/ozone-default.xml#L2008-L2010

Comment on lines 77 to 78
assertEquals(tree1Files, tree2Files);
}
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: clean it up by recursively deleting tempDir at the end?

Copy link
Contributor

@smengcl smengcl left a comment

Choose a reason for hiding this comment

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

lgtm, pending CI

@GeorgeJahad
Copy link
Contributor Author

@smengcl the checkstyle error is actually because I haven't merged to the latest master. Fixing now.

@GeorgeJahad GeorgeJahad requested a review from smengcl June 16, 2023 03:04
@smengcl smengcl merged commit 9f6cb9d into apache:master Jun 16, 2023
@smengcl
Copy link
Contributor

smengcl commented Jun 16, 2023

Thanks @GeorgeJahad for the improvement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

snapshot https://issues.apache.org/jira/browse/HDDS-6517

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants