nspcc-dev / nspcc-dev/neofs-node
Track progress in `control shards evacuate`
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 38
- Forks
- 51
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 38
Description
There is no ability to track the progress of the evacuate command and what the timeout duration should I specify according to the data on a shard?
I have 1.7G data on shard:
/dev/vdh1 20G 1.7G 17G 10% /srv/neofs/data6
And when I tried to evacuate objects I always get
root@az:/etc/neofs/storage/tatlin-object-sber-tfstate/vkarakozov# neofs-cli --wallet /etc/neofs/storage/wallet.json --endpoint localhost:8091 control shards evacuate --id XpwHq2ojz93WzZsct4TS7f -t 10m
Enter password >
rpc error: context deadline exceeded
Just for proposal it would be great to always display status bar for this command and add someting like --no-progress option in case if no need to display. One more suggestion is in case if --no-progress is specified or session has been terminated and there is no way to track if evacuate is finished or not, we could display status 'evacuated' or 'evacuate in progress' for example in control shards list command or somewhere else.
Your Environment
Linux az 5.10.0-19-amd64 #1 SMP Debian 5.10.149-2 (2022-10-21) x86_64 GNU/Linux
Server setup and configuration:
cloud, 4 VMs, 4 SN, 4 http qw, 4 s3 gw
NeoFS Storage node
Version: v0.34.0-54-g402bbba1
GoVersion: go1.19.3
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the implementation of control shards evacuate and the output path for control shards list; reproduce the context deadline exceeded case with the reported timeout. Done should be defined as a progress display or explicit --no-progress behavior, plus a way to distinguish evacuated shards from evacuations still in progress.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli, distributed-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100