Github user steveloughran commented on the issue:
https://github.com/apache/spark/pull/14731
I've now done the [s3a streaming
test/example](https://github.com/steveloughran/spark/blob/features/SPARK-7481-cloud/cloud/src/main/scala/org/apache/spark/cloud/s3/examples/S3Streaming.scala)
this uses a pattern of s3a/path/sub* as the directory path; then creates a
file in a directory and renames the dir to match the path; verifies that the
file was found in the time period allocated
https://gist.github.com/steveloughran/c8b39a7b87a9bd63d7a383bda8687e7e
Notable that the scan of the empty dir took 150ms; once there's data in the
tree the time jumps up to 500ms once there are two entries under the tree, one
dir and one file
summary stats show 72 getFileStatus calls at the FS API, mapping to 140
HEAD calls and 88 LIST operations.
```
S3AFileSystem{uri=s3a://stevel-ireland-new,
workingDir=s3a://hwdev-steve-ireland-new/user/stevel, inputPolicy=sequential,
partSize=104857600, enableMultiObjectsDelete=true, maxKeys=5000,
readAhead=65536, blockSize=1048576, multiPartThreshold=2147483647, statistics
{292 bytes read, 292 bytes written, 101 read ops, 0 large read ops, 11 write
ops}, metrics {{Context=S3AFileSystem}
{FileSystemId=343b706a-c238-4d71-9ed8-8083601ac28a-hwdev-steve-ireland-new}
{fsURI=s3a://hwdev-steve-ireland-new} {files_created=1} {files_copied=1}
{files_copied_bytes=292} {files_deleted=1} {directories_created=3}
{directories_deleted=0} {ignored_errors=2} {op_copy_from_local_file=0}
{op_exists=1} {op_get_file_status=72} {op_glob_status=16} {op_is_directory=0}
{op_is_file=0} {op_list_files=0} {op_list_located_status=0} {op_list_status=27}
{op_mkdirs=2} {op_rename=1} {object_copy_requests=0} {object_delete_requests=3}
{object_list_requests=88} {object_continue_list_requests=0}
{object_metadata_requests=1
40} {object_multipart_aborted=0} {object_put_bytes=292}
{object_put_requests=4} {stream_read_fully_operations=0}
{stream_bytes_skipped_on_seek=0} {stream_bytes_backwards_on_seek=0}
{stream_bytes_read=292} {streamOpened=1} {stream_backward_seek_pperations=0}
{stream_read_operations_incomplete=0} {stream_bytes_discarded_in_abort=0}
{stream_close_operations=1} {stream_read_operations=1} {stream_aborted=0}
{stream_forward_seek_operations=0} {streamClosed=1} {stream_seek_operations=0}
{stream_bytes_read_in_close=0} {stream_read_exceptions=0} }}
```
I'm going to do a test run with the modification here and see what it does
to listing and status
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]