chaos / rquota

quota utilities for NFS and Lustre file systems
GNU General Public License v2.0
9 stars 3 forks source link

Incorrect Lustre set_state logic #18

Closed ofaaland closed 4 years ago

ofaaland commented 4 years ago

As of version 2.10, Lustre does not allow the admin to set a soft limit without a grace period. As a consequence, NOTSTARTED is not a valid state with respect to Lustre quotas.

Lustre set_state does not correctly handle the case where the user has exceeded the soft quota, but not the hard quota, and the grace period has passed. It sets NOTSTARTED instead of EXPIRED.

Lustre does not determine quota state at the granularity of bytes, but at the granularity of qunits. As a consequence, the user may exceed the soft quota without triggering the beginning of the grace period. Since the user need not act under these circumstances, the correct state for this condition is UNDER as if their usage was below the stated soft quota value.