I’ll give it a shot on the weekend, will also compare the rest of scrub.py with the respective types in the postgresql table in case there are more potential overflows. Have also a small change in btrfs.py that removes two redundant function calls.
As I have close to zero knowledge of writing code, I’m not the right one to give advice.
But if I understand what dunkelfalke found, it seems like an “easy” fix.
I’ll be happy to try a possible fix out on my system, when its made available.
That seems to be the right fix in the right place. I don’t think this information is used anywhere else throughout Rockstor so it will be an isolated change.
The required Django migrations are probably the highest “risk” for this change, but from my own experiments, should still be straightforward, even with the older version of Django?
@dunkelfalke Great. Let us know here on the forum if you have any difficulties as there are now a number of folks who have contributed to rockstor-core. But not necessarily to the new testing channel so watch for the caveats there. There is one right at the last minute within the GitHub Web-UI anctually, where you have to manually select the testing channel as it is inconvenient for us to make this the default branch.
Take care with scope creep. If these changes are unrelated then they should be against their own issue and within their own pull request. This massively helps with our to-be-required cherry picking too come as we move some of the newer changes in testing back to stable. So do take care not to mix your efforts too much as we then get into merge difficulties. Especially as we are about to moving into maintaining two branches simultaneously. And trivial or unrelated changes can end up breaking otherwise easy changes elsewhere. It may be that these hopefully trivial removals could form a practice issue-pull request set, familiarising you with the process we have ready for the real fix re the integer type in db thingy.
Hope that helps.
BTW, I have now discovered that I am getting the same integer out of range message on my system. And I’m “only” running a RAID10 4 Disk 20TB setup on that machine.
I am also using the backport kernel setup.
And using this hint (which I think @KarstenV might have used)
btrfs scrub start -d /mnt2/<PoolName>/
the scrub starts again, and the web page is accessible for now.
So we don’t lose track on this, I created a new issue on github:
If that’s a duplicate by one that @dunkelfalke created, my apologies and I will close this one right away, but I couldn’t find one with similar content.