On Sep 19, 2019 13:03, Stefan Solbrig <stefan.solbrig@xxxxx> wrote:
>
> Thanks for the quick answer!
>
> I think I can reduce data on the "full" bricks, solving the problem temporarily.
>
> The thing is, that the behavior changed from 3.12 to 6.5: 3.12 didn't have problems with almost full bricks, so I thought everything was fine. Then, after the upgrade, I ran into this problem. This might be a corner case that will go away once no-one uses 3.12 any more.
>
> But I think I can create a situation with 6.5 only that reproduces the error. Suppose I have a brick that 99% full. So a write() will succeed. After the write, the brick can be 100% full, so a subsequent mkdir() will produce stale file handles (i.e., bricks that have different directory trees). The funny thing is, that the mkdir() on the user side does not produce an error. Clearly, no-one should ever let the file system get to 99%, but still, mkdir should fail then...
I think there is a soft and hard limit that prevents creation of files/folders when a specific threshold is hit , but that threshold might be per brick instead of per replica set.
> What remains: is there a recommended way how to deal with the situation that I have some bricks that don't have all directories?
I think that you can mount the gluster volume and run a find with stat that will force a sync.
find /rhev/mnt/full-path/directory-missing-on-some-bricks -iname '*' -exec stat {} \;
Best Regards,
Strahil Nikolov
________ Community Meeting Calendar: APAC Schedule - Every 2nd and 4th Tuesday at 11:30 AM IST Bridge: https://bluejeans.com/118564314 NA/EMEA Schedule - Every 1st and 3rd Tuesday at 01:00 PM EDT Bridge: https://bluejeans.com/118564314 Gluster-users mailing list Gluster-users@xxxxxxxxxxx https://lists.gluster.org/mailman/listinfo/gluster-users