apache / apache/arrow-rs-object-store

Support `PutMode::Create` for Alibaba OSS

Open
#416 2 comments 2 reactions 0 assignees View on GitHub
enhancement good first issue help wanted
Dominant language
Rust
Stars
322
Forks
212
Avg merge
5d 2h
Merged PRs (30d)
10

Description

**Is your feature request related to a problem or challenge? Please describe what you are trying to do.**

We'd like to make SlateDB work with Alibaba (see https://github.com/slatedb/slatedb/issues/636). Unfortunately, Alibaba doesn't support standard S3 headers for put if not exists. Instead, it uses `x-oss-forbid-overwrite`.

**Describe the solution you'd like**

I'd like `object_store` to use `x-oss-forbid-overwrite` when used with Alibaba OSS.

**Describe alternatives you've considered**

We'd have to switch to open_dal or write our own implementation outside of `object_store`. Both of these are really heavy lifts.

**Additional context**

cc @jiaoew1991

Contributor guide

Open the contributing guide

Research direction

Start by tracing how PutMode::Create is handled in the object_store crate and where the Alibaba OSS request is built. Confirm the provider-specific behavior described in the issue, then verify that create-only writes use x-oss-forbid-overwrite for Alibaba OSS without changing other providers.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cloud
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.