Files
rustfs/crates
overtrue 4567b6b5e4 fix(admin): merge unreadable-config marker with isolated diagnostics
rustfs/rustfs#7225 and rustfs/backlog#2309 refactored the same ten
per-config arms of ExportBucketMetadata concurrently. Keep #7225's
`exported_bucket_config` helper, `export_internal_error`, the
`?diagnostic=true` mode with its reserved `_diagnostic/` namespace,
manifest and import preflight, and re-apply #2309's semantics on top.

The helper now returns `ExportConfigError`, which separates a
configuration that is stored but undecodable from a failure of this
build's own serialization. An ordinary export records the former in
`<bucket>/rustfs-unreadable-configs.json` and continues, so one bucket
cannot abort a whole-cluster export, and fails closed on the latter.
Diagnostic mode is unchanged: it reports both through the archive-wide
manifest with a fixed code and no parser detail.

The #7225 assertion that a complete export fails closed on unreadable
targets is replaced by assertions of the new behaviour; every other
assertion on both sides is kept.

The s3_error! baseline is remeasured at 1589 for the merged tree.
2026-09-06 03:15:18 +08:00
..