On Tue, Sep 10, 2024 at 1:23 PM Milind Changire <mchangir@redhat.com> wrote:
Problem: CephFS fallocate implementation does not actually reserve data blocks when mode is 0. It only truncates the file to the given size by setting the file size in the inode. So, there is no guarantee that writes to the file will succeed
Solution: Since an immediate remediation of this problem is not possible, I request users to vote on the most suitable approach to avoid breaking dependent software: 1. report EOPNOTSUPP (operation not supported) when mode is 0 2. continue with existing implementation of file size truncation when mode is 0
Hi Milind, The kernel client went with (1) in 2018: https://github.com/ceph/ceph-client/commit/bddff633ab7bc60a18a86ac8b322695b6... And according to Patrick the intent was to do the same for ceph-fuse (libcephfs) as well: https://tracker.ceph.com/issues/36317#note-3 Did that part fall through the cracks? Thanks, Ilya