Browse Source

refetch

pull/7549/head
chrislu 1 week ago
parent
commit
b06364d641
  1. 10
      weed/s3api/s3api_object_handlers_put.go

10
weed/s3api/s3api_object_handlers_put.go

@ -139,8 +139,14 @@ func (s3a *S3ApiServer) PutObjectHandler(w http.ResponseWriter, r *http.Request)
if !s3a.handleAutoCreateBucket(w, r, bucket, "PutObjectHandler") {
return
}
// After creating the bucket, versioning state is empty (not configured)
versioningState = ""
// Re-fetch versioning state to handle race conditions where
// another process might have created the bucket with versioning enabled.
versioningState, err = s3a.getVersioningState(bucket)
if err != nil {
glog.Errorf("Error re-checking versioning status for bucket %s after auto-creation: %v", bucket, err)
s3err.WriteErrorResponse(w, r, s3err.ErrInternalError)
return
}
} else {
glog.Errorf("Error checking versioning status for bucket %s: %v", bucket, err)
s3err.WriteErrorResponse(w, r, s3err.ErrInternalError)

Loading…
Cancel
Save