mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-10-28 16:00:37 +01:00
vector: preserve typed error chains in lease pin/release (#12153)
vector: keep typed error chains in lease pin/release Error::msg discarded the source chain — denied() could not downcast to object_store::PermissionDenied, so try_pin surfaced the error instead of degrading to an unleased query and read-only credentials broke GetVectors/QueryVectors. Plain ? preserves the chain.
This commit is contained in:
1 parent
a2863bf83b
commit
81879fba7b
1 file changed
+2
-3
@@ -67,8 +67,7 @@ pub async fn pin(dataset: &Dataset) -> Result<Lease> {
|
||||
dataset
|
||||
.tags()
|
||||
.create(&tag, Ref::Version(None, Some(version)))
|
||||
.await
|
||||
.map_err(anyhow::Error::msg)?;
|
||||
.await?;
|
||||
// A cleanup that listed tags before this create can still reclaim the
|
||||
// version; fail the read now rather than mid-query.
|
||||
if dataset.checkout_version(version).await.is_err() {
|
||||
@@ -109,7 +108,7 @@ fn denied(err: &anyhow::Error) -> bool {
|
||||
}
|
||||
|
||||
async fn release(dataset: &Dataset, tag: &str) -> Result<()> {
|
||||
dataset.tags().delete(tag).await.map_err(anyhow::Error::msg)
|
||||
Ok(dataset.tags().delete(tag).await?)
|
||||
}
|
||||
|
||||
fn untrack(tag: &str) {
|
||||
|
||||
Reference in new issue
Block a user