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

Qubes Disk Widget - please inform about/alert on pool metadata space #5053

Closed
brendanhoar opened this issue May 28, 2019 · 9 comments · Fixed by QubesOS/qubes-desktop-linux-manager#73
Assignees
Labels
C: manager/widget C: storage P: major Priority: major. Between "default" and "critical" in severity. r4.1-dom0-cur-test
Milestone

Comments

@brendanhoar
Copy link

brendanhoar commented May 28, 2019

The problem you're addressing (if any)
The new Qubes disk space widget is useful. However, some users of the default file system layout (ext4/etc. in a LVM Thin Provisioned Pool) are running out of metadata far before running out of disk space.

Describe the solution you'd like

  • Add an additional line/bar displaying the amount/percent of metadata space left in the pool.
  • Additionally alert on low metadata space.
  • Add a popup indicating what steps the user can take to address when metadata is low.
  • Consider adding some warnings or monitoring to qvm-* tools that are likely lead to increased metadata as well.

Where is the value to a user, and who might that user be?

  1. Resolving disk space issues is rather straightforward and when one is approaching or has reached the limit, there are steps that generally educated computer users can take to resolve.

  2. On the other hand, resolving metadata space issues is not straightforward and some steps a user might take based as generally educated computer user can make the situation worse. In addition, generally, it is easy to get the pool+file systems into a non-recoverable state.

Describe alternatives you've considered

  1. Qubes installer increases metadata size above the default (increase by factor of 2x to 4x, perhaps).
  2. Switch from ext4+lvm thin provisioning to btrfs. Stability and/or baby/bathwater issues.
  3. Chide users for not making backups.

Additional context
https://groups.google.com/forum/#!topic/qubes-users/qq_ElNPdx-g

Relevant documentation you've consulted
I did not see anything addressing the issue on https://www.qubes-os.org

Related, non-duplicate issues
#5054

@brendanhoar brendanhoar added P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. T: enhancement labels May 28, 2019
@brendanhoar brendanhoar changed the title Qubes Disk Widget - please inform about/alert on metadata space Qubes Disk Widget - please inform about/alert on pool metadata space May 28, 2019
@andrewdavidwong andrewdavidwong added this to the Release 4.1 milestone May 29, 2019
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Aug 8, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Aug 8, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
marmarta added a commit to marmarta/qubes-desktop-linux-manager that referenced this issue Aug 8, 2019
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Aug 8, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Aug 8, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Aug 8, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Aug 8, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
marmarta added a commit to marmarta/qubes-desktop-linux-manager that referenced this issue Aug 8, 2019
marmarta added a commit to marmarta/qubes-core-admin that referenced this issue Oct 22, 2019
Added usage_details method to Pool class
(returns a dictionary with detailed information
on pool usage) and LVM implementation that returns
metadata info.
Needed for QubesOS/qubes-issues#5053
@brendanhoar
Copy link
Author

Thanks @marmarta !

I tried several times to do all the api plumbing to get the data up to where it was needed in the widget and failed a couple months back.

Looking forward to R 4.1!

Brendan

@qubesos-bot
Copy link

Automated announcement from builder-github

The package qubes-desktop-linux-manager-4.1.1-1.fc29 has been pushed to the r4.1 testing repository for dom0.
To test this update, please install it with the following command:

sudo qubes-dom0-update --enablerepo=qubes-dom0-current-testing

Changes included in this update

@tlaurion
Copy link
Contributor

tlaurion commented Feb 10, 2020

@andrewdavidwong : the upgrade notes of QubesOS states that the user can apply upgrades from Qubes 4 and have the same system as if it was freshly installed.

@marmarek This is false, since anaconda was modified since then and changes behavior for discards and metadata pool size, and consequently, newer installations are fixed to mitigate future problems, where upgraded systems are not. (True?)

@marmarta As stated here, the widget should permit the user to fix problems related on that matter, so that freshly installed Qubes/upgraded 4.+ results in the same stable system for users on LVM discards/metadata pool potential problems.

@andrewdavidwong
Copy link
Member

@tlaurion:

@andrewdavidwong : the upgrade notes of QubesOS states that the user can apply upgrades from Qubes 4 and have the same system as if it was freshly installed.

@marmarek This is false, since anaconda was modified since then and changes behavior for discards and metadata pool size, and consequently, newer installations are fixed to mitigate future problems, where upgraded systems are not. (True?)

@marmarta As stated here, the widget should permit the user to fix problems related on that matter, so that freshly installed Qubes/upgraded 4.+ results in the same stable system for users on LVM discards/metadata pool potential problems.

Shouldn't this be reported as a separate issue? It sounds rather different from the topic of this issue ("inform about/alert on pool metadata space").

@tlaurion
Copy link
Contributor

tlaurion commented Feb 11, 2020

@andrewdavidwong

Shouldn't this be reported as a separate issue? It sounds rather different from the topic of this issue ("inform about/alert on pool metadata space").

The issue related here is still that once tpool is maxed out, the user is not informed of what to do to fix it but informed it is near maxed out. What would be the proposed action? This is why I tagged @marmarta in this issue, rest being background information. Opened ticket #5643

@andrewdavidwong
Copy link
Member

The issue related here is still that once tpool is maxed out, the user is not informed of what to do to fix it but informed it is near maxed out. What would be the proposed action?

I see that @brendanhoar raised this point in the original issue description, where he wrote:

Add a popup indicating what steps the user can take to address when metadata is low.
[...]
On the other hand, resolving metadata space issues is not straightforward and some steps a user might take based as generally educated computer user can make the situation worse. In addition, generally, it is easy to get the pool+file systems into a non-recoverable state.

It sounds like you're saying that this part of the issue has not yet been addressed, so you'd like for this issue to be reopened. Am I understanding you correctly?

@tlaurion
Copy link
Contributor

tlaurion commented Feb 15, 2020 via email

@andrewdavidwong andrewdavidwong added P: major Priority: major. Between "default" and "critical" in severity. and removed P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. labels Feb 17, 2020
@DemiMarie
Copy link

Can this be backported to R4.0? This is a serious issue that has caused data loss.

@marmarek
Copy link
Member

Widget in R4.1 reports metadata usage already, and also the default metadata size was doubled to avoid this issue from happening.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: manager/widget C: storage P: major Priority: major. Between "default" and "critical" in severity. r4.1-dom0-cur-test
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants