Skip to content

feat(services/tos): Add native copy support#7553

Merged
Xuanwo merged 2 commits into
apache:mainfrom
ddupg:codex/ddu-20-impl-tos-copy
May 20, 2026
Merged

feat(services/tos): Add native copy support#7553
Xuanwo merged 2 commits into
apache:mainfrom
ddupg:codex/ddu-20-impl-tos-copy

Conversation

@ddupg
Copy link
Copy Markdown
Member

@ddupg ddupg commented May 18, 2026

Which issue does this PR close?

Part of #7152.

Rationale for this change

TOS supports server-side object copy. OpenDAL should expose it through native copy.

What changes are included in this PR?

  • Enable TOS native copy capability.
  • Add TOS CopyObject request construction with x-tos-copy-source.
  • Set copied objects to inherit bucket ACL via x-tos-acl: default.

Are there any user-facing changes?

TOS now supports native Operator::copy.

AI Usage Statement

This PR was implemented with Codex.

@ddupg ddupg force-pushed the codex/ddu-20-impl-tos-copy branch from 5440267 to 8472688 Compare May 18, 2026 15:50
@ddupg ddupg force-pushed the codex/ddu-20-impl-tos-copy branch 2 times, most recently from 02bbc4b to 6914419 Compare May 19, 2026 08:45
Comment thread core/services/tos/src/backend.rs Outdated
Change-Id: I5b00ccff31776871e788ec2ad53132ed26c90160
@ddupg ddupg force-pushed the codex/ddu-20-impl-tos-copy branch from 6914419 to 35a2833 Compare May 19, 2026 09:04
@ddupg ddupg marked this pull request as ready for review May 19, 2026 09:05
@dosubot dosubot Bot added size:M This PR changes 30-99 lines, ignoring generated files. releases-note/feat The PR implements a new feature or has a title that begins with "feat" labels May 19, 2026
Copy link
Copy Markdown
Member

@Xuanwo Xuanwo left a comment

Choose a reason for hiding this comment

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

Thank you!

@dosubot dosubot Bot added the lgtm This PR has been approved by a maintainer label May 20, 2026
args: OpCopy,
_opts: OpCopier,
) -> Result<(RpCopy, Self::Copier)> {
let resp = self.core.tos_copy_object(from, to, &args).await?;
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.

Please create a follow-up to implement the Copier trait.

@Xuanwo Xuanwo merged commit 879c2fc into apache:main May 20, 2026
104 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm This PR has been approved by a maintainer releases-note/feat The PR implements a new feature or has a title that begins with "feat" size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants