-
Notifications
You must be signed in to change notification settings - Fork 138
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
btrfs send/receive - Failure to destroy quota group can prevent promoting oldest snapshot during replication #2901
Comments
Could this be due to changes on the qgroup maintenance within Rockstor or related to newer btrfs developments that added additional constraints. On btrfs documentation
while Rockstor uses the
|
@Hooverdan96 Post #2911 I've had another go at reproducing this issue: without success. This time with a slightly less trivial data payload on the replicated share of 2 GB. This is in the context of the following #2902 (comment) It may be that in some contexts the error report detailed in this issue:
is another emergence, with a mutual cause now addressed in #2911. But I'n not convinced of this. And your notes here regarding our having no `btrfs qgroup destroy ...' counterpart to our custom 2015/* parent/child qgroup creation/assign are informative. However without an exact reproducer it's tricky to know if we are doing what is necessary. And as below there is now (in master) successful repclone function; albeit with only a slightly non-trivial data payload. Receiver:
I know there have been some improvements more recently in btrfs regarding qgroup housekeeping. I'm just not sure it's something we have yet to respond to. In the above log there appears no blocker. I'll have a little more of a look at what we are doing in this stage and make notes accordingly in this issue if anything stands out. Mostly focused on show-stopper currently however, but this did qualified; however without a reproducer it's tricky. |
In the interests of attempting to trigger this issue, I added an additional many-files 2GB payload to the source share and in-between replication events: On Receiving system
On Sender:
On Recievier:The above artificially created anomaly (receiver end) is successfully detected & logged. The receiver then re-establishes the future receiving share and lists the first
As is evident we get a restore to stable state on Receiver, re a replication share re-created with 3 snapshots: cascading oldest first to supplant their replication created Share. But over the subsequent 4-5 events. More specifically pertinent to this issue, the snap to share promotion (this time with around 4 G of small files payload), again did not give us the reproducer that would be favoured here. These tests were performed on low-end VM instances where the single full replication transfer lasted 3 minutes. A 5 minute replication interval was used. |
As observed in the scenario described on the Rockstor community forum (users stevek, Hooverdan, phillxnet), when quotas are enabled on the receiving system, it can happen that a quota group cannot be destroyed during the Receive Process while trying to promote a snapshot:
https://forum.rockstor.com/t/disk-structure-under-mnt2-and-replication-question/9720/21
The text was updated successfully, but these errors were encountered: