Open scottyeager opened 1 week ago
it should be fixed by #126 as well
it should be fixed by https://github.com/threefoldtech/0-stor_v2/pull/126 as well
confirmed:
master
branchWhat I would expect to happen in this case is for zstor to stop trying to reach the backends removed from config and
rebuild both data and metadata on the newly provided backends.
Restarting zstor also doesn't trigger the repair process for some reason.
Oh, just realized that there are few things in above description.
@scottyeager i suggest you create new issue for those things if you have more info it. If no more info, i could create it for you.
Hi @iwanbk,
Thanks for looking into this. Indeed there could be a couple extra issues from this one. I wanted to test after this one is resolved and see if the other issues still arise in the course of normal use.
Let me test some with the new code and I'll open more detailed issues for any problems remaining.
hi @scottyeager i assigned this issue to you for checking and for this
Indeed there could be a couple extra issues from this one
Core issue has been resolved and zstor no longer tries to connect to the deleted namespaces after config reload. I do still see a bunch of WARN Failed to delete removed metric by label: Error: missing labels
logs after the config reload, but those eventually stop.
Leaving this open for now in case I need to split off some new issues, since I didn't have a chance to test the other behaviors yet.
I found that when a backend is removed by destroying the zdb deployment (thus removing the namespace from a still active zdb), zstor continues trying to contact the old backend after it's replaced in the config file and a
SIGUSR1
is issued to do a hot reload of the config. Furthermore, zstor does perform repair to restore the expected shard count after the config is reloaded.Here are the steps to reproduce:
I can see from running the status command that no data is written to the new backends. In this case I replace both a data backend and a metadata backend.
What I would expect to happen in this case is for zstor to stop trying to reach the backends removed from config and rebuild both data and metadata on the newly provided backends. Restarting zstor also doesn't trigger the repair process for some reason.