todo file_info_from_raw

This commit is contained in:
weisd
2024-11-30 20:54:51 +08:00
parent bbc76302a2
commit df60aa50fe
6 changed files with 18 additions and 3 deletions
+1 -1
View File
@@ -19,7 +19,7 @@ impl VersioningApi for VersioningConfiguration {
}
fn prefix_enabled(&self, prefix: &str) -> bool {
if self.status == Some(BucketVersioningStatus::from_static(BucketVersioningStatus::ENABLED)) {
if self.status != Some(BucketVersioningStatus::from_static(BucketVersioningStatus::ENABLED)) {
return false;
}
+2
View File
@@ -399,6 +399,7 @@ impl LocalDisk {
}
/// read xl.meta raw data
#[tracing::instrument(level = "debug", skip(self, volume_dir, path))]
async fn read_raw(
&self,
bucket: &str,
@@ -460,6 +461,7 @@ impl LocalDisk {
Ok(data)
}
#[tracing::instrument(level = "debug", skip(self, volume_dir, file_path))]
async fn read_all_data_with_dmtime(
&self,
volume: &str,
+1
View File
@@ -277,6 +277,7 @@ impl DiskAPI for Disk {
}
}
#[tracing::instrument(level = "debug", skip(self))]
async fn read_version(
&self,
_org_volume: &str,
+2
View File
@@ -273,6 +273,7 @@ struct DelObj {
#[async_trait::async_trait]
impl ObjectIO for Sets {
#[tracing::instrument(level = "debug", skip(self))]
async fn get_object_reader(
&self,
bucket: &str,
@@ -285,6 +286,7 @@ impl ObjectIO for Sets {
.get_object_reader(bucket, object, range, h, opts)
.await
}
#[tracing::instrument(level = "debug", skip(self, data))]
async fn put_object(&self, bucket: &str, object: &str, data: &mut PutObjReader, opts: &ObjectOptions) -> Result<ObjectInfo> {
self.get_disks_by_key(object).put_object(bucket, object, data, opts).await
}
+1
View File
@@ -1083,6 +1083,7 @@ impl ObjectIO for ECStore {
.get_object_reader(bucket, object.as_str(), range, h, &opts)
.await
}
#[tracing::instrument(level = "debug", skip(self, data))]
async fn put_object(&self, bucket: &str, object: &str, data: &mut PutObjReader, opts: &ObjectOptions) -> Result<ObjectInfo> {
check_put_object_args(bucket, object)?;
+11 -2
View File
@@ -303,14 +303,21 @@ impl S3 for FS {
let range = HTTPRangeSpec::nil();
let h = HeaderMap::new();
let opts = &ObjectOptions::default();
let metadata = extract_metadata(&req.headers);
let opts: ObjectOptions = put_opts(&bucket, &key, None, &req.headers, Some(metadata))
.await
.map_err(to_s3_error)?;
error!("get_object ObjectOptions {:?}", &opts);
let Some(store) = new_object_layer_fn() else {
return Err(S3Error::with_message(S3ErrorCode::InternalError, "Not init".to_string()));
};
let reader = store
.get_object_reader(bucket.as_str(), key.as_str(), range, h, opts)
.get_object_reader(bucket.as_str(), key.as_str(), range, h, &opts)
.await
.map_err(to_s3_error)?;
@@ -574,6 +581,8 @@ impl S3 for FS {
.await
.map_err(to_s3_error)?;
error!("ObjectOptions {:?}", opts);
let obj_info = store
.put_object(&bucket, &key, &mut reader, &opts)
.await