-
Notifications
You must be signed in to change notification settings - Fork 717
Closed
Closed
Copy link
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
In RFC-5495:
| Please note that `deleted` here means "including deleted files" rather than "only deleted files." Therefore, `list_with(path).deleted(true)` will list both current files and deleted ones. |
But in the implement of S3, list_with_deleted only contains delete marker and common prefix, current files are not included.
https://github.com/apache/opendal/blob/c866d4bbae50f863b22ec2728011e80b633177a8/core/src/services/s3/lister.rs#L225-L250d
Steps to Reproduce
pub async fn test_list_files_with_deleted(op: Operator) -> Result<()> {
if !op.info().full_capability().list_with_deleted {
return Ok(());
}
let parent = TEST_FIXTURE.new_dir_path();
let file_name = TEST_FIXTURE.new_file_path();
let file_path = format!("{}{}", parent, file_name);
op.write(file_path.as_str(), "1").await?;
op.write(file_path.as_str(), "2").await?;
op.delete(file_path.as_str()).await?;
let file_path2 = format!("{}{}", parent, TEST_FIXTURE.new_file_path());
op.write(file_path2.as_str(), "1").await?;
let mut ds = op.list_with(&parent).deleted(true).await?;
// this will fail !
assert_eq!(ds.len(), 2);
}Expected Behavior
the result of list_with_deleted includes the current files or change the RFC
Additional Context
No response
Are you willing to submit a PR to fix this bug?
- Yes, I would like to submit a PR.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working