Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Duplication of file and directory of same name in S3 Express Zone One bucket using Mountpoint #725

Open
sauraank opened this issue Feb 1, 2024 · 0 comments
Labels
bug Something isn't working

Comments

@sauraank
Copy link
Contributor

sauraank commented Feb 1, 2024

Mountpoint for Amazon S3 version

mount-s3 v1.3.2

AWS Region

us-east-1

Describe the running environment

Running in EC2 on Ubuntu 22.04 using instance profile credentials against an S3 Bucket in the same account.

Mountpoint options

mount-s3 <BUCKET_NAME--use1-az4--x-s3> mnt/ --allow-delete --foreground --region us-east-1 --debug

What happened?

I have a file and directory of same name(out) in S3 Express One Zone bucket as follows -

  • out/shadow_file.txt
  • out
    When I mount the bucket on mnt/ directory using Mountpoint, I get duplicate entries of out as follows:
~$ ls mnt/
out  out

When I try to access out, it only refer to the directory:

~/mnt$ cat out
cat: out: Is a directory

Relevant log output

2024-02-01T15:00:51.103143Z DEBUG readdirplus{req=20 ino=1 fh=2 offset=0}:list_objects{id=2 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1000" prefix=""}: mountpoint_s3_client::s3_crt_client::list_objects: new request
2024-02-01T15:00:51.385022Z DEBUG readdirplus{req=20 ino=1 fh=2 offset=0}:list_objects{id=2 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1000" prefix=""}: mountpoint_s3_client::s3_crt_client: CRT request finished request_type=Default crt_error=None http_status=200 range=None duration=281.374033ms ttfb=Some(140.112969ms) request_id=019c6216f800018d652fda11040719844ed0b2da
2024-02-01T15:00:51.385220Z DEBUG readdirplus{req=20 ino=1 fh=2 offset=0}:list_objects{id=2 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1000" prefix=""}: mountpoint_s3_client::s3_crt_client: meta request finished duration=281.774746ms
2024-02-01T15:00:51.385491Z DEBUG readdirplus{req=20 ino=1 fh=2 offset=0}: mountpoint_s3::inode: inode needs to be recreated parent=1 name="out" ino=3
2024-02-01T15:00:51.385542Z DEBUG readdirplus{req=20 ino=1 fh=2 offset=0}: mountpoint_s3::inode: inode needs to be recreated parent=1 name="out" ino=4
2024-02-01T15:00:51.385692Z DEBUG fuser::request: FUSE( 22) ino 0x0000000000000000 BATCHFORGET nodes [fuse_forget_one { nodeid: 3, nlookup: 1 }, fuse_forget_one { nodeid: 4, nlookup: 1 }]
2024-02-01T15:00:51.385716Z DEBUG fuser::request: FUSE( 24) ino 0x0000000000000001 READDIRPLUS fh FileHandle(2), offset 4, size 4096
2024-02-01T15:00:51.385857Z DEBUG fuser::request: FUSE( 26) ino 0x0000000000000001 RELEASEDIR fh FileHandle(2), flags 0x18800, flush false, lock owner None
2024-02-01T15:00:51.386715Z DEBUG fuser::request: FUSE( 28) ino 0x0000000000000001 GETATTR
2024-02-01T15:00:52.168796Z DEBUG fuser::request: FUSE( 30) ino 0x0000000000000001 LOOKUP name "out"
2024-02-01T15:00:52.170996Z DEBUG lookup{req=30 ino=1 name="out"}:head_object{id=3 bucket="BUCKET_NAME--use1-az4--x-s3" key="out"}: mountpoint_s3_client::s3_crt_client::head_object: new request
2024-02-01T15:00:52.173382Z DEBUG lookup{req=30 ino=1 name="out"}:list_objects{id=4 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1" prefix="out/"}: mountpoint_s3_client::s3_crt_client::list_objects: new request
2024-02-01T15:00:52.457915Z DEBUG lookup{req=30 ino=1 name="out"}:head_object{id=3 bucket="BUCKET_NAME--use1-az4--x-s3" key="out"}: mountpoint_s3_client::s3_crt_client: CRT request finished request_type=Default crt_error=None http_status=200 range=None duration=286.566598ms ttfb=Some(145.861428ms) request_id=0141d2d4b400018d652fde3c0407ab9d29340b3a
2024-02-01T15:00:52.458136Z DEBUG lookup{req=30 ino=1 name="out"}:head_object{id=3 bucket="BUCKET_NAME--use1-az4--x-s3" key="out"}: mountpoint_s3_client::s3_crt_client: meta request finished duration=287.019146ms
2024-02-01T15:00:52.459574Z DEBUG lookup{req=30 ino=1 name="out"}:list_objects{id=4 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1" prefix="out/"}: mountpoint_s3_client::s3_crt_client: CRT request finished request_type=Default crt_error=None http_status=200 range=None duration=285.961344ms ttfb=Some(145.328339ms) request_id=01b8e1f36200018d652fde3f0407b69feab40c0c
2024-02-01T15:00:52.459757Z DEBUG lookup{req=30 ino=1 name="out"}:list_objects{id=4 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1" prefix="out/"}: mountpoint_s3_client::s3_crt_client: meta request finished duration=286.288075ms
2024-02-01T15:00:52.460464Z DEBUG lookup{req=30 ino=1 name="out"}: mountpoint_s3::inode: inode needs to be recreated parent=1 name="out" ino=5
2024-02-01T15:00:52.460632Z DEBUG fuser::request: FUSE( 32) ino 0x0000000000000001 LOOKUP name "out"
2024-02-01T15:00:52.460656Z DEBUG fuser::request: FUSE( 34) ino 0x0000000000000000 BATCHFORGET nodes [fuse_forget_one { nodeid: 6, nlookup: 1 }, fuse_forget_one { nodeid: 5, nlookup: 1 }]
2024-02-01T15:00:52.462748Z DEBUG lookup{req=32 ino=1 name="out"}:head_object{id=5 bucket="BUCKET_NAME--use1-az4--x-s3" key="out"}: mountpoint_s3_client::s3_crt_client::head_object: new request
2024-02-01T15:00:52.465065Z DEBUG lookup{req=32 ino=1 name="out"}:list_objects{id=6 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1" prefix="out/"}: mountpoint_s3_client::s3_crt_client::list_objects: new request
2024-02-01T15:00:52.744961Z DEBUG lookup{req=32 ino=1 name="out"}:head_object{id=5 bucket="BUCKET_NAME--use1-az4--x-s3" key="out"}: mountpoint_s3_client::s3_crt_client: CRT request finished request_type=Default crt_error=None http_status=200 range=None duration=281.912613ms ttfb=Some(141.511046ms) request_id=01868f955400018d652fdf6004079796d36ffe07
2024-02-01T15:00:52.745125Z DEBUG lookup{req=32 ino=1 name="out"}:head_object{id=5 bucket="BUCKET_NAME--use1-az4--x-s3" key="out"}: mountpoint_s3_client::s3_crt_client: meta request finished duration=282.30472ms
2024-02-01T15:00:52.748984Z DEBUG lookup{req=32 ino=1 name="out"}:list_objects{id=6 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1" prefix="out/"}: mountpoint_s3_client::s3_crt_client: CRT request finished request_type=Default crt_error=None http_status=200 range=None duration=283.679608ms ttfb=Some(142.896249ms) request_id=014ea8bb4300018d652fdf6304070e9aec8a7200
2024-02-01T15:00:52.749103Z DEBUG lookup{req=32 ino=1 name="out"}:list_objects{id=6 bucket="BUCKET_NAME--use1-az4--x-s3" continued=false delimiter="/" max_keys="1" prefix="out/"}: mountpoint_s3_client::s3_crt_client: meta request finished duration=283.97957ms
2024-02-01T15:00:52.749905Z DEBUG fuser::request: FUSE( 36) ino 0x0000000000000007 OPENDIR flags 0x8000
2024-02-01T15:00:52.750251Z DEBUG fuser::request: FUSE( 38) ino 0x0000000000000007 RELEASEDIR fh FileHandle(3), flags 0x8000, flush false, lock owner None
@sauraank sauraank added the bug Something isn't working label Feb 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant