Skip to content

Conversation

@SeanTAllen
Copy link
Contributor

Prior to this commit, the layout of created ext4 filesystems created using tar2ext4 wasn't
deterministic. Recursive directory creation would change from run to run due to the usage
of a map as temporary storage for items from the tar stream.

This commit changes recursive directory creation to follow the same deterministic pattern
as writeDirectory.

At this point, the only possible source of non-determinism in a create file system is the
UUID in the VHD footer. If no VHD footer is included, then the results are deterministic.

Prior to this commit, the layout of created ext4 filesystems created using tar2ext4 wasn't
deterministic. Recursive directory creation would change from run to run due to the usage
of a map as temporary storage for items from the tar stream.

This commit changes recursive directory creation to follow the same deterministic pattern
as writeDirectory.

At this point, the only possible source of non-determinism in a create file system is the
UUID in the VHD footer. If no VHD footer is included, then the results are deterministic.
@SeanTAllen SeanTAllen requested a review from a team as a code owner February 8, 2021 17:51
@dcantah
Copy link
Contributor

dcantah commented Feb 9, 2021

@SeanTAllen Were you going to change the UUID generation also in another PR? What's the plan for this, a hash?

@SeanTAllen
Copy link
Contributor Author

I believe that is still a topic for conversation. I will do in another PR once a decision is made.

Copy link
Member

@kevpar kevpar left a comment

Choose a reason for hiding this comment

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

LGTM

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.

4 participants