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

Tracking Issues with Conditional Write #5218

Closed
3 of 6 tasks
Xuanwo opened this issue Oct 21, 2024 · 7 comments · Fixed by #5321
Closed
3 of 6 tasks

Tracking Issues with Conditional Write #5218

Xuanwo opened this issue Oct 21, 2024 · 7 comments · Fixed by #5321
Assignees
Labels
core good first issue Good for newcomers help wanted Extra attention is needed

Comments

@Xuanwo
Copy link
Member

Xuanwo commented Oct 21, 2024

OpenDAL supports conditional requests at the API level, although not all supported services have implemented them. This issue is used to track their implementation.

Steps

Implement if_not_exists for write like this #5129

if let Some(if_none_match) = args.if_none_match() {
req = req.header(IF_NONE_MATCH, if_none_match);
}

Services

  • s3 (if_not_exists in multipart upload)
  • azblob
  • azdls
  • cos (via x-cos-forbid-overwrite, please note this conflicts with version)
  • gcs
  • oss (via x-oss-forbid-overwrite, please note this conflicts with version)
@Xuanwo Xuanwo added good first issue Good for newcomers help wanted Extra attention is needed core labels Oct 21, 2024
@Xuanwo
Copy link
Member Author

Xuanwo commented Oct 21, 2024

Hello @ForestLH, thank you for adding support for S3's conditional write. However, the previous PR only covered simple writes. Would you be interested in extending this to multipart uploads as well?

@ForestLH
Copy link
Contributor

Hello @ForestLH, thank you for adding support for S3's conditional write. However, the previous PR only covered simple writes. Would you be interested in extending this to multipart uploads as well?

Sure, my pleasure. But I don't have an account for one of these cloud services(like cos, azblob, azdls...), and I want to know
some easier methods than sign up for them to test my code. Thanks.

@Xuanwo
Copy link
Member Author

Xuanwo commented Oct 21, 2024

For Azblob, you can use https://github.com/Azure/Azurite. We have a fixture available at: https://github.com/apache/opendal/blob/main/fixtures/azblob/docker-compose-azurite.yml.

For other services, we have only configured continuous integration so far. You can submit PR and I can help trigger the CI for you.

@ForestLH
Copy link
Contributor

For Azblob, you can use https://github.com/Azure/Azurite. We have a fixture available at: https://github.com/apache/opendal/blob/main/fixtures/azblob/docker-compose-azurite.yml.

For other services, we have only configured continuous integration so far. You can submit PR and I can help trigger the CI for you.

Thanks for your help. plz assign me, I will try it.

@Xuanwo
Copy link
Member Author

Xuanwo commented Oct 21, 2024

Thank you @ForestLH!

@Xuanwo Xuanwo changed the title Tracking Issues with Conditional Requests Tracking Issues with Conditional Write Nov 12, 2024
@ForestLH
Copy link
Contributor

I'm sorry for not reporting the progress for so long, because I have a lot of things to do recently.
I'm so sorry to tell you that I may not have time to do this issue lately, but I found out that @kemingy is doing this.

@Xuanwo

@Xuanwo
Copy link
Member Author

Xuanwo commented Nov 13, 2024

I'm sorry for not reporting the progress for so long, because I have a lot of things to do recently.

Thank you for watching this. I look forward to working with you in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants