ydb-platform / nbs

Network Block & File Store
Apache License 2.0
57 stars 22 forks source link

[Filestore] Force direct io #1590

Open qkrorlqr opened 3 months ago

qkrorlqr commented 3 months ago

Нам тут подсказывают, как это можно сделать https://github.com/ydb-platform/nbs/blob/main/cloud/filestore/libs/vfs_fuse/fs_impl_data.cpp#L114

Я бегло посмотрел, насколько корявое решение начать отдавать вот тут direct_io = 1 https://github.com/ydb-platform/nbs/blob/main/cloud/filestore/libs/vfs_fuse/fs_impl_data.cpp#L114 Т.е. fuse_file_info fi = {}; fi.fh = response.GetHandle(); fi.direct_io = 1;

Надо попробовать

zeil commented 2 months ago

В продолжении темы, чтобы не терять производительность на записи через writeback можно сделать условие по fi->flags и выставлять fi.direct_io = 1; только для O_RDONLY запросов.