[#969] node: Do not require shard config in relay mode
Relay storage node doesn't exec local object operations, so it doesn't need shard configuration. Add `required` bool parameter to `engineconfig.IterateShards`. Make it to panic if it is `true`, and immediately return otherwise. Pass `false` if node is configured as relay in app (it also prevents panic). Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
This commit is contained in:
parent
95893927aa
commit
fb89d29574
3 changed files with 22 additions and 6 deletions
|
@ -367,7 +367,9 @@ func initLocalStorage(c *cfg) {
|
|||
func initShardOptions(c *cfg) {
|
||||
var opts [][]shard.Option
|
||||
|
||||
engineconfig.IterateShards(c.appCfg, func(sc *shardconfig.Config) {
|
||||
require := !nodeconfig.Relay(c.appCfg) // relay node does not require shards
|
||||
|
||||
engineconfig.IterateShards(c.appCfg, require, func(sc *shardconfig.Config) {
|
||||
var writeCacheOpts []writecache.Option
|
||||
|
||||
useWriteCache := sc.UseWriteCache()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue