refactor(raft): remove raft config resolver, only keep transport resolver

with #22357426

Signed-off-by: xiejian <xiejian3@oppo.com>
This commit is contained in:
xiejian 2024-10-09 15:09:29 +08:00 committed by slasher
parent 5a93938026
commit 3f0f1d2b31
7 changed files with 19 additions and 17 deletions

View File

@ -164,7 +164,6 @@ type (
Transport *Transport `json:"-"`
Logger raft.Logger `json:"-"`
Storage Storage `json:"-"`
Resolver AddressResolver `json:"-"`
}
GroupConfig struct {
ID uint64
@ -205,9 +204,9 @@ func NewManager(cfg *Config) (Manager, error) {
}{state: make(map[uint64]groupState)}
}
cfg.TransportConfig.Resolver = &cacheAddressResolver{resolver: cfg.TransportConfig.Resolver}
transport := cfg.Transport
if transport == nil {
cfg.TransportConfig.Resolver = &cacheAddressResolver{resolver: cfg.Resolver}
transport = NewTransport(&cfg.TransportConfig)
}
transport.RegisterHandler((*internalTransportHandler)(manager))

View File

@ -384,11 +384,11 @@ func initManager(t *testing.T, ctrl *gomock.Controller, member Member, storagePa
MaxWorkerNum: 6,
MaxSnapshotWorkerNum: 2,
TransportConfig: TransportConfig{
Addr: member.Host,
Addr: member.Host,
Resolver: mockResolver,
},
Logger: log.DefaultLogger,
Storage: storage,
Resolver: mockResolver,
Logger: log.DefaultLogger,
Storage: storage,
})
require.NoError(t, err)

View File

@ -273,10 +273,10 @@ func initManager(member raft.Member, storagePath string) (raft.Manager, *raft.Co
KeepaliveTimeoutS: 60,
ServerKeepaliveTimeoutS: 10,
MaxInflightMsgSize: 1024,
Resolver: &addressResolver{nodes: nodesMap},
},
Logger: log.DefaultLogger,
Storage: storage,
Resolver: &addressResolver{nodes: nodesMap},
Logger: log.DefaultLogger,
Storage: storage,
}
m, err := raft.NewManager(cfg)
if err != nil {

View File

@ -127,7 +127,7 @@ func newMockService(t *testing.T) (*service, func(), error) {
ShardGetter: sg,
})
mockDisk, clearFunc, err := storage.NewMockDisk(t, diskID, true)
mockDisk, clearFunc, err := storage.NewMockDisk(t, diskID, false)
if err != nil {
return nil, nil, err
}

View File

@ -233,7 +233,7 @@ func (d *Disk) Load(ctx context.Context) error {
shardInfo: *shardInfo,
store: d.store,
raftManager: d.raftManager,
addrResolver: raftConfig.TransportConfig.Resolver.(*AddressResolver),
addrResolver: raftConfig.TransportConfig.Resolver,
disk: d,
})
if err != nil {
@ -290,7 +290,7 @@ func (d *Disk) AddShard(ctx context.Context, suid proto.Suid,
diskID: d.diskInfo.DiskID,
store: d.store,
raftManager: d.raftManager,
addrResolver: d.cfg.RaftConfig.TransportConfig.Resolver.(*AddressResolver),
addrResolver: d.cfg.RaftConfig.TransportConfig.Resolver,
disk: d,
})
if err != nil {

View File

@ -21,12 +21,13 @@ import (
"testing"
"time"
"github.com/cubefs/cubefs/blobstore/common/raft"
"github.com/golang/mock/gomock"
"github.com/stretchr/testify/require"
"github.com/cubefs/cubefs/blobstore/api/clustermgr"
"github.com/cubefs/cubefs/blobstore/common/proto"
"github.com/cubefs/cubefs/blobstore/common/raft"
"github.com/cubefs/cubefs/blobstore/common/trace"
"github.com/cubefs/cubefs/blobstore/shardnode/base"
"github.com/cubefs/cubefs/blobstore/util"
@ -77,8 +78,10 @@ func NewMockDisk(tb testing.TB, diskID proto.DiskID, useRaft bool) (*MockDisk, f
cfg.RaftConfig.ElectionTick = 6
cfg.RaftConfig.TransportConfig.Resolver = &AddressResolver{Transport: tp}
cfg.RaftConfig.TransportConfig.Addr = fmt.Sprintf("127.0.0.1:%d", 18080+uint32(diskID))
if useRaft {
cfg.RaftConfig.Transport = raft.NewTransport(&cfg.RaftConfig.TransportConfig)
if !useRaft {
cfg.RaftConfig.Transport = raft.NewTransport(&raft.TransportConfig{
Resolver: &AddressResolver{Transport: tp},
})
}
// shard stat

View File

@ -46,7 +46,7 @@ func setUpRaftDisks(t *testing.T, ids []proto.DiskID) ([]*Disk, func(), error) {
func TestServerDisk_Shard(t *testing.T) {
diskID := proto.DiskID(1)
disk, clearFunc, err := NewMockDisk(t, diskID, true)
disk, clearFunc, err := NewMockDisk(t, diskID, false)
defer clearFunc()
require.NoError(t, err)
@ -88,7 +88,7 @@ func TestServerDisk_Shard(t *testing.T) {
func TestServerDisk_Load(t *testing.T) {
diskID := proto.DiskID(1)
disk, _, err := NewMockDisk(t, diskID, true)
disk, _, err := NewMockDisk(t, diskID, false)
defer func() {
os.Remove(disk.d.cfg.DiskPath)
}()