googleapis / googleapis/google-cloud-swift

StorageControl and idempotency

Open
#833 0 comments 0 reactions 0 assignees View on GitHub
api: storage
Dominant language
Swift
Stars
26
Forks
10
Avg merge
12h 56m
Merged PRs (30d)
211

Description

Some of the storage control operations can use client-assigned request ids to become idempotent. Basically the client library assigns a UUID to the request, and retries it, the server can detect if it is a dup and return the previous response.

For the other requests the client can include the `x-goog-gcs-idempotency-token` header for a similar effect. Googlers can see go/gcs-rust-sdk-idempotency-design for a possible implementation using sidekick and a bit of hand-crafted code.

Contributor guide

Open the contributing guide

Research direction

Start by locating the Swift StorageControl client entry points and its request and retry handling. Compare operations that accept client-assigned request IDs with those requiring the x-goog-gcs-idempotency-token header, using the referenced idempotency design for context; done means supported retries are detected as duplicates and return the previous response.

Written by the indexing model from the issue text.

Assessment

Tech stack
google-cloud, swift
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.