Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[New feature] Add option to disable BTRFS quota/qgroups #1592

Closed
maxhq opened this issue Dec 22, 2016 · 11 comments
Closed

[New feature] Add option to disable BTRFS quota/qgroups #1592

maxhq opened this issue Dec 22, 2016 · 11 comments
Assignees

Comments

@maxhq
Copy link
Contributor

maxhq commented Dec 22, 2016

Qgroups seem to cause a lot of trouble / performance issues. Personally I get errors like BTRFS warning (device sda): orphan qgroup relation 0x563->0x7df00000000000a.
Picking up an idea from a forum post by Matthew it would be nice to be able to completely disable quota related functions in Rockstor.

@maxhq maxhq changed the title Add option to disable BTRFS quota/qgroups [New feature] Add option to disable BTRFS quota/qgroups Dec 22, 2016
@MFlyer
Copy link
Member

MFlyer commented Jan 4, 2017

Adding some note:
qgroups disabling -> no, helps getting pools & shares size
disabling quota limits -> possible

M.

@schakrava
Copy link
Member

You both have good points here. Redesigning the quota stuff has been on my list for a while. I see that things have improved in 4.10, but it would be nice to give the option to cleanly disable them.

@schakrava schakrava self-assigned this Mar 24, 2017
@schakrava schakrava added this to the Point Bonita milestone Mar 24, 2017
@schakrava schakrava modified the milestones: Point Bonita, Panamint Valley Nov 7, 2017
@phillxnet
Copy link
Member

phillxnet commented Dec 9, 2017

Linking to related pr #1867 where we at least don't block mounts when quota disabled.
And to in progress issue #1869 tallying remaining fail points when quotas are disabled.
The latter contains some info re Rockstor issues but focuses on why a quota enabled status was not maintained by a pool (unresolved and suspected to be quota anomaly in fs).

@phillxnet
Copy link
Member

I am currently working on this issue.

@phillxnet
Copy link
Member

Final testing in progress. Pull request to follow shortly.

@phillxnet
Copy link
Member

Inline edit of quotas Enabled / Disabled setting in Pool overview page:
quota-inline-enable-disable

phillxnet added a commit to phillxnet/rockstor-core that referenced this issue Feb 25, 2018
Adds pool api command to enable / disable quotas. Upon enabling a quota
rescan is initiated. In some instances this scan is redundant but is
robust to those instances and simply info logs the prior existence of
an ongoing quota rescan and skips the rescan requested. Similarly
provision is made to deal elegantly with quota rescan requests
on read only filesystems. UI is by way of bootstrap inline editable as
per current compression and custom mount options settings.

Summary:
- Add backend pool quota enable/disable command.
- Change existing quota status displays for inline editable elements.
- Move pool details page quota element from "Details" section to
"Compression and extra mount options" section as then all inline edit
elements are grouped.
- Rename compression / extra mount options header to indicate quotas.
- Allowed quotas enable/disable on the system pool.
@phillxnet
Copy link
Member

The code to address this issue is now ready, however as it interrelates closely with an existing and outstanding pull request I will await that pull requests review and potential merge prior to submitting the pull request for this issue.

Noting ideal dependency on prior merge of pr:

"empty compression setting on imported pools blocks extra mount options. Fixes #1896" pr #1899

Once the outcome of the above referenced pull request is finalised I can, if then appropriate, re-base and submit the pr for this issue. This cautionary action is due to many very closely related changes made to the bootstrap inline editable UI code that could lead to merge difficulties if a re-base is not first performed.

@phillxnet
Copy link
Member

This issue is again my main focus and will shortly be rebased, retested, and it's associated pull request submitted.

@phillxnet
Copy link
Member

About to delete GitHub resident branch, re-base, and re-publish under the same branch name.

phillxnet added a commit to phillxnet/rockstor-core that referenced this issue Mar 7, 2018
Adds pool api command to enable / disable quotas. Upon enabling a quota
rescan is initiated. In some instances this scan is redundant but is
robust to those instances and simply info logs the prior existence of
an ongoing quota rescan and skips the rescan requested. Similarly
provision is made to deal elegantly with quota rescan requests
on read only filesystems. UI is by way of bootstrap inline editable as
per current compression and custom mount options settings.

Summary:
- Add backend pool quota enable/disable command.
- Change existing quota status displays for inline editable elements.
- Move pool details page quota element from "Details" section to
"Compression and extra mount options" section as then all inline edit
elements are grouped.
- Rename compression / extra mount options header to indicate quotas.
- Allowed quotas enable/disable on the system pool.
@schakrava
Copy link
Member

Really thankful for the work you did on this @phillxnet !

schakrava added a commit that referenced this issue Mar 10, 2018
…RFS_quota-qgroups

Add option to disable BTRFS quota-qgroups. Fixes #1592
@phillxnet
Copy link
Member

@schakrava Thanks. Hopefully with ongoing quota work upstream this will in time become less of an issue going forward.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants