apache / apache/opendal

bug: python operator.list with start_after does not work for local file system

Open
#6,676 2 comments 1 reaction 0 assignees View on GitHub
bindings/python bug services/fs
Dominant language
Rust
Stars
5.4k
Forks
825
Avg merge
1d 14m
Merged PRs (30d)
127

Description

### Describe the bug

Open dal operator list method with start_after arugment works fine with s3 but not with local file system. It always list all the files from the path. Eg. code given below.

```
operator = Operator("fs", root="tmp")
files = list(operator.list("", start_after = files[-1].path))
```

files has all entire list of files from the path in case of local file system. In case of s3, it only gives the new file.
Please help me resolve this issue

### Steps to Reproduce

Explained in the bug details

### Expected Behavior

The method should list only the new files in the path.

### Additional Context

_No response_

### Are you willing to submit a PR to fix this bug?

- [ ] Yes, I would like to submit a PR.

Contributor guide

Open the contributing guide

Research direction

Start at the Operator.list entry point and reproduce the difference between the local filesystem and S3 implementations with start_after. Compare the local filesystem behavior against the expected result: return only files after the supplied path, rather than the entire directory listing.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, rust
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.