Repository navigation
Fix client identity isolation and status reporting (#50–#54) - #55
Merged
Merged
Conversation
Keep S3 and admin cache entries separate for distinct credentials, providers and connection settings while avoiding per-hit transport copies. Correct partial resync operation exits, terminal resync and pending batch observation, and batch IOPs overflow; add regression tests and cache benchmarks. Closes #50 Closes #51 Closes #52 Closes #53 Closes #54 Signed-off-by: Feng Ruohang <rh@vonng.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
S3 and admin clients now keep distinct identities and connection configurations isolated. Resync mutations report partial failures, status commands retain terminal results and tolerate missing live metrics, and batch IOPs no longer overflow at large object counts.
Closes #50
Closes #51
Closes #52
Closes #53
Closes #54
Motivation and Context
The selected alias must determine request identity. HTTP success alone does not establish mutation success, and missing metrics do not establish job completion. No dependency changes are required.
Intentional CLI changes: partial mutations exit nonzero; batch JSON may emit
pending; missing batch telemetry is bounded by a 30-second idle window and 10-second status requests. Successfully retrieving a completed or failed job still exits 0.How to test this PR?
Local acceptance passed on the identical source tree:
go test -raceon Go 1.27.3: 989 test/subtest pass events on darwin/arm64 and 985 on linux/arm64. The Linux permission test skipped under root passed separately as UID 1000; the macOS-only skip is a Linux-specific exit-status test covered on Linux.make install; govulncheck reports no reachable or imported-package vulnerabilities.Before merging, require the PR's Go (Linux/macOS/Windows and Linux 386), Crosscompile, VulnCheck, DCO and Test Release Pipeline workflows to pass. Local AWS tests use protocol fixtures; Linux amd64 container execution used Docker Desktop emulation. No distributed queue saturation or production soak claim is made.
Types of changes
Checklist
dab02359: all eight checks, including Linux/macOS/Windows runtime tests, Linux 386, Crosscompile, VulnCheck, DCO and Test Release Pipeline.Contribution Licensing (no CLA, inbound=outbound, DCO required)
This pull request contributes to PGSTY SILO mcli (
pgsty/mc). Code contributionsare accepted under AGPL-3.0-or-later, the same license as the client.
This project does not use a CLA or require a separate Apache-2.0 license grant.
By submitting this pull request I represent that I have the right to contribute
the code changes under this repository's
GNU AGPL v3.0 or later
and retain copyright in my original work. Existing copyright and license
notices remain intact; separately licensed material keeps its applicable terms.
Every commit must carry a DCO
Signed-off-bytrailer (
git commit -s) certifying theDeveloper Certificate of Origin —
see CONTRIBUTING.md.