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

Keep original MPU object etag after restore #5683

Merged
merged 2 commits into from
Oct 3, 2024

Conversation

Kerkesni
Copy link
Contributor

@Kerkesni Kerkesni commented Oct 1, 2024

When restoring an MPU, the object data might be PUT with a different number of parts, which in turn changes the etag of the object as it is calculated based on the etag of each uploaded part.

We now keep the same etag in case of a restore to avoid breaking the expiration of the restored object as it checks the etag of the object before expiting.

The new etag is kept in the metadata of the object and can be viewed with a head-object operation when passing the x-amz-scal-archive-info header.

The new etag field is added to the x-amz-restore section of the metadata, so it will be removed when the object expires.

Issue: CLDSRV-564

@bert-e
Copy link
Contributor

bert-e commented Oct 1, 2024

Hello kerkesni,

My role is to assist you with the merge of this
pull request. Please type @bert-e help to get information
on this process, or consult the user documentation.

Available options
name description privileged authored
/after_pull_request Wait for the given pull request id to be merged before continuing with the current one.
/bypass_author_approval Bypass the pull request author's approval
/bypass_build_status Bypass the build and test status
/bypass_commit_size Bypass the check on the size of the changeset TBA
/bypass_incompatible_branch Bypass the check on the source branch prefix
/bypass_jira_check Bypass the Jira issue check
/bypass_peer_approval Bypass the pull request peers' approval
/bypass_leader_approval Bypass the pull request leaders' approval
/approve Instruct Bert-E that the author has approved the pull request. ✍️
/create_pull_requests Allow the creation of integration pull requests.
/create_integration_branches Allow the creation of integration branches.
/no_octopus Prevent Wall-E from doing any octopus merge and use multiple consecutive merge instead
/unanimity Change review acceptance criteria from one reviewer at least to all reviewers
/wait Instruct Bert-E not to run until further notice.
Available commands
name description privileged
/help Print Bert-E's manual in the pull request.
/status Print Bert-E's current status in the pull request TBA
/clear Remove all comments from Bert-E from the history TBA
/retry Re-start a fresh build TBA
/build Re-start a fresh build TBA
/force_reset Delete integration branches & pull requests, and restart merge process from the beginning.
/reset Try to remove integration branches unless there are commits on them which do not appear on the source branch.

Status report is not available.

@bert-e
Copy link
Contributor

bert-e commented Oct 1, 2024

Incorrect fix version

The Fix Version/s in issue CLDSRV-564 contains:

  • None

Considering where you are trying to merge, I ignored possible hotfix versions and I expected to find:

  • 8.8.33

Please check the Fix Version/s of CLDSRV-564, or the target
branch of this pull request.

@bert-e
Copy link
Contributor

bert-e commented Oct 1, 2024

Waiting for approval

The following approvals are needed before I can proceed with the merge:

  • the author

  • 2 peers

package.json Show resolved Hide resolved
lib/services.js Outdated Show resolved Hide resolved
Kerkesni and others added 2 commits October 3, 2024 11:40
When restoring an MPU, the object data might be PUT with a
different number of parts, which in turn changes the etag of
the object as it is calculated based on the etag of each uploaded
part.

We now keep the same etag in case of a restore to avoid breaking the
expiration of the restored object as it checks the etag of the object
before expiting.

The new etag is kept in the metadata of the object and can be viewed
with a head-object operation when passing the "x-amz-scal-archive-info"
header.

Issue: CLDSRV-564
Keep the version from lockfile, pending a proper release.
It also seems "latest" changes cannot be integrated at the moment.

Also, need to use specific version of typescript, as scubaclient does
not (reportedly) support latest releases (5.x).

Issue: CLDSRV-562
@Kerkesni
Copy link
Contributor Author

Kerkesni commented Oct 3, 2024

/approve

@bert-e
Copy link
Contributor

bert-e commented Oct 3, 2024

I have successfully merged the changeset of this pull request
into targetted development branches:

  • ✔️ development/8.8

The following branches have NOT changed:

  • development/7.10
  • development/7.4
  • development/7.70
  • development/8.6
  • development/8.7

Please check the status of the associated issue CLDSRV-564.

Goodbye kerkesni.

The following options are set: approve

@bert-e bert-e merged commit 38dd70e into development/8.8 Oct 3, 2024
16 checks passed
@bert-e bert-e deleted the bugfix/CLDSRV-564 branch October 3, 2024 13:15
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.

5 participants