mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-24 05:06:28 +00:00
fix:#127
This commit is contained in:
+80
-140
@@ -298,13 +298,10 @@ impl S3 for FS {
|
|||||||
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
||||||
};
|
};
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&input.bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&input.bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let output = GetBucketLocationOutput::default();
|
let output = GetBucketLocationOutput::default();
|
||||||
Ok(S3Response::new(output))
|
Ok(S3Response::new(output))
|
||||||
@@ -377,13 +374,10 @@ impl S3 for FS {
|
|||||||
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
||||||
};
|
};
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&input.bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&input.bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// mc cp step 2 GetBucketInfo
|
// mc cp step 2 GetBucketInfo
|
||||||
|
|
||||||
Ok(S3Response::new(HeadBucketOutput::default()))
|
Ok(S3Response::new(HeadBucketOutput::default()))
|
||||||
@@ -860,13 +854,10 @@ impl S3 for FS {
|
|||||||
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
||||||
};
|
};
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let data = try_!(xml::serialize(&tagging));
|
let data = try_!(xml::serialize(&tagging));
|
||||||
|
|
||||||
@@ -979,13 +970,10 @@ impl S3 for FS {
|
|||||||
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
None => return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string())),
|
||||||
};
|
};
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let VersioningConfiguration { status, .. } = BucketVersioningSys::get(&bucket).await.map_err(to_s3_error)?;
|
let VersioningConfiguration { status, .. } = BucketVersioningSys::get(&bucket).await.map_err(to_s3_error)?;
|
||||||
|
|
||||||
@@ -1038,13 +1026,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let cfg = match PolicySys::get(&bucket).await {
|
let cfg = match PolicySys::get(&bucket).await {
|
||||||
Ok(res) => res,
|
Ok(res) => res,
|
||||||
@@ -1070,13 +1055,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// warn!("input policy {}", &policy);
|
// warn!("input policy {}", &policy);
|
||||||
|
|
||||||
@@ -1110,13 +1092,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
metadata_sys::delete(&bucket, BUCKET_POLICY_CONFIG)
|
metadata_sys::delete(&bucket, BUCKET_POLICY_CONFIG)
|
||||||
.await
|
.await
|
||||||
@@ -1138,13 +1117,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let rules = match metadata_sys::get_lifecycle_config(&bucket).await {
|
let rules = match metadata_sys::get_lifecycle_config(&bucket).await {
|
||||||
Ok((cfg, _)) => Some(cfg.rules),
|
Ok((cfg, _)) => Some(cfg.rules),
|
||||||
@@ -1201,13 +1177,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
metadata_sys::delete(&bucket, BUCKET_LIFECYCLE_CONFIG)
|
metadata_sys::delete(&bucket, BUCKET_LIFECYCLE_CONFIG)
|
||||||
.await
|
.await
|
||||||
@@ -1228,13 +1201,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let server_side_encryption_configuration = match metadata_sys::get_sse_config(&bucket).await {
|
let server_side_encryption_configuration = match metadata_sys::get_sse_config(&bucket).await {
|
||||||
Ok((cfg, _)) => Some(cfg),
|
Ok((cfg, _)) => Some(cfg),
|
||||||
@@ -1270,13 +1240,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: check kms
|
// TODO: check kms
|
||||||
|
|
||||||
@@ -1299,13 +1266,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
metadata_sys::delete(&bucket, BUCKET_SSECONFIG).await.map_err(to_s3_error)?;
|
metadata_sys::delete(&bucket, BUCKET_SSECONFIG).await.map_err(to_s3_error)?;
|
||||||
|
|
||||||
Ok(S3Response::new(DeleteBucketEncryptionOutput::default()))
|
Ok(S3Response::new(DeleteBucketEncryptionOutput::default()))
|
||||||
@@ -1352,13 +1316,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let data = try_!(xml::serialize(&input_cfg));
|
let data = try_!(xml::serialize(&input_cfg));
|
||||||
|
|
||||||
@@ -1381,13 +1342,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let replication_configuration = match metadata_sys::get_replication_config(&bucket).await {
|
let replication_configuration = match metadata_sys::get_replication_config(&bucket).await {
|
||||||
Ok((cfg, _created)) => Some(cfg),
|
Ok((cfg, _created)) => Some(cfg),
|
||||||
@@ -1418,13 +1376,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: check enable, versioning enable
|
// TODO: check enable, versioning enable
|
||||||
let data = try_!(xml::serialize(&replication_configuration));
|
let data = try_!(xml::serialize(&replication_configuration));
|
||||||
@@ -1448,13 +1403,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
metadata_sys::delete(&bucket, BUCKET_REPLICATION_CONFIG)
|
metadata_sys::delete(&bucket, BUCKET_REPLICATION_CONFIG)
|
||||||
.await
|
.await
|
||||||
.map_err(to_s3_error)?;
|
.map_err(to_s3_error)?;
|
||||||
@@ -1476,13 +1428,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let has_notification_config = match metadata_sys::get_notification_config(&bucket).await {
|
let has_notification_config = match metadata_sys::get_notification_config(&bucket).await {
|
||||||
Ok(cfg) => cfg,
|
Ok(cfg) => cfg,
|
||||||
@@ -1528,13 +1477,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let data = try_!(xml::serialize(¬ification_configuration));
|
let data = try_!(xml::serialize(¬ification_configuration));
|
||||||
|
|
||||||
@@ -1556,13 +1502,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
let grants = vec![Grant {
|
let grants = vec![Grant {
|
||||||
grantee: Some(Grantee {
|
grantee: Some(Grantee {
|
||||||
@@ -1597,13 +1540,10 @@ impl S3 for FS {
|
|||||||
.as_ref()
|
.as_ref()
|
||||||
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
.ok_or_else(|| S3Error::with_message(S3ErrorCode::InternalError, "Not init"))?;
|
||||||
|
|
||||||
if let Err(e) = store.get_bucket_info(&bucket, &BucketOptions::default()).await {
|
store
|
||||||
if DiskError::VolumeNotFound.is(&e) {
|
.get_bucket_info(&bucket, &BucketOptions::default())
|
||||||
return Err(s3_error!(NoSuchBucket));
|
.await
|
||||||
} else {
|
.map_err(to_s3_error)?;
|
||||||
return Err(S3Error::with_message(S3ErrorCode::InternalError, format!("{}", e)));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(canned_acl) = acl {
|
if let Some(canned_acl) = acl {
|
||||||
if canned_acl.as_str() != BucketCannedACL::PRIVATE {
|
if canned_acl.as_str() != BucketCannedACL::PRIVATE {
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ pub fn to_s3_error(err: Error) -> S3Error {
|
|||||||
}
|
}
|
||||||
StorageError::MethodNotAllowed => s3_error!(MethodNotAllowed),
|
StorageError::MethodNotAllowed => s3_error!(MethodNotAllowed),
|
||||||
StorageError::BucketNotFound(bucket) => {
|
StorageError::BucketNotFound(bucket) => {
|
||||||
s3_error!(InvalidArgument, "bucket not found {}", bucket)
|
s3_error!(NoSuchBucket, "bucket not found {}", bucket)
|
||||||
}
|
}
|
||||||
StorageError::BucketNotEmpty(bucket) => s3_error!(BucketNotEmpty, "bucket not empty {}", bucket),
|
StorageError::BucketNotEmpty(bucket) => s3_error!(BucketNotEmpty, "bucket not empty {}", bucket),
|
||||||
StorageError::BucketNameInvalid(bucket) => s3_error!(InvalidBucketName, "invalid bucket name {}", bucket),
|
StorageError::BucketNameInvalid(bucket) => s3_error!(InvalidBucketName, "invalid bucket name {}", bucket),
|
||||||
|
|||||||
+1
-1
@@ -7,7 +7,7 @@ mkdir -p ./target/volume/test{0..4}
|
|||||||
|
|
||||||
|
|
||||||
if [ -z "$RUST_LOG" ]; then
|
if [ -z "$RUST_LOG" ]; then
|
||||||
export RUST_LOG="rustfs=debug,ecstore=debug,s3s=info,reader=debug,router=debug"
|
export RUST_LOG="rustfs=debug,ecstore=debug,s3s=debug,reader=debug,router=debug"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# export RUSTFS_ERASURE_SET_DRIVE_COUNT=5
|
# export RUSTFS_ERASURE_SET_DRIVE_COUNT=5
|
||||||
|
|||||||
Reference in New Issue
Block a user