Are you accessing the s3 API with presto implementation? If so, you may
read the code of `com.facebook.presto.hive.s3.PrestoS3FileSystem#create`
and find it check the existence of the target path first, in which the
`getFileStatus` and `listPrefix` are called. There is no option for this.


Best,
Zakelly

On Fri, Jan 19, 2024 at 9:32 PM Evgeniy Lyutikov <eblyuti...@avito.ru>
wrote:

> Hi all!
> I'm trying to understand the logic of saving checkpoint files and from the
> exchange dump with ceph I see the following requests
>
> HEAD
> /checkpoints/example-job/00000000000000000000000000000000/shared/9701fae2-0de3-4d6c-b08b-0a92fb7285c9
> HTTP/1.1
> HTTP/1.1 404 Not Found
> HEAD
> /checkpoints/example-job/00000000000000000000000000000000/shared/9701fae2-0de3-4d6c-b08b-0a92fb7285c9/
> HTTP/1.1
> HTTP/1.1 404 Not Found
> GET
> /checkpoints/?prefix=example-job%2F00000000000000000000000000000000%2Fshared%2F9701fae2-0de3-4d6c-b08b-0a92fb7285c9%2F&delimiter=%2F&max-keys=1&encoding-type=url
> HTTP/1.1
> HTTP/XML 486    HTTP/1.1 200 OK
> <?xml version="1.0" encoding="UTF-8" ?>
>     <ListBucketResult
>         xmlns="http://s3.amazonaws.com/doc/2006-03-01/";>
>         <EncodingType>
>         <Name>
>             checkpoints
>         </Name>
>         <Prefix>
>
> example-job/00000000000000000000000000000000/shared/9701fae2-0de3-4d6c-b08b-0a92fb7285c9/
>         </Prefix>
>         <MaxKeys>
>             1
>         </MaxKeys>
>         <Delimiter>
>             /
>         </Delimiter>
>         <IsTruncated>
>             false
>         </IsTruncated>
>         <Marker>
>         </Marker>
>     </ListBucketResult>
> PUT
> /checkpoints/example-job/00000000000000000000000000000000/shared/9701fae2-0de3-4d6c-b08b-0a92fb7285c9
> HTTP/1.1
>
> It’s not entirely clear why, after checking for the presence of an object
> and a directory by HEAD methods additionally call ListBucket get request.
> Can this be disabled using options or does the code require modification?
> We have our own Ceph cluster and frequent ListBucket requests heavily load
> the index pool.
> Flink 1.17.1, presto backend for checkpoint.
>
>
>
> * ------------------------------ *“This message contains confidential
> information/commercial secret. If you are not the intended addressee of
> this message you may not copy, save, print or forward it to any third party
> and you are kindly requested to destroy this message and notify the sender
> thereof by email.
> Данное сообщение содержит конфиденциальную информацию/информацию,
> являющуюся коммерческой тайной. Если Вы не являетесь надлежащим адресатом
> данного сообщения, Вы не вправе копировать, сохранять, печатать или
> пересылать его каким либо иным лицам. Просьба уничтожить данное сообщение и
> уведомить об этом отправителя электронным письмом.”
>

Reply via email to