feat: prioritize DBS over cluster enabled in scan mode (#855)
This commit is contained in:
parent
f1c46964c5
commit
6093348dcc
|
@ -64,25 +64,24 @@ func NewScanStandaloneReader(ctx context.Context, opts *ScanReaderOptions) Reade
|
||||||
r := new(scanStandaloneReader)
|
r := new(scanStandaloneReader)
|
||||||
// dbs
|
// dbs
|
||||||
c := client.NewRedisClient(ctx, opts.Address, opts.Username, opts.Password, opts.Tls, opts.PreferReplica)
|
c := client.NewRedisClient(ctx, opts.Address, opts.Username, opts.Password, opts.Tls, opts.PreferReplica)
|
||||||
if c.IsCluster() { // not use opts.Cluster, because user may use standalone mode to scan a cluster node
|
if len(opts.DBS) != 0 {
|
||||||
|
r.dbs = opts.DBS
|
||||||
|
} else if c.IsCluster() { // not use opts.Cluster, because user may use standalone mode to scan a cluster node
|
||||||
r.dbs = []int{0}
|
r.dbs = []int{0}
|
||||||
} else {
|
} else {
|
||||||
if len(opts.DBS) == 0 {
|
c.Send("info", "keyspace")
|
||||||
c.Send("info", "keyspace")
|
info, err := c.Receive()
|
||||||
info, err := c.Receive()
|
if err != nil {
|
||||||
if err != nil {
|
log.Panicf(err.Error())
|
||||||
log.Panicf(err.Error())
|
|
||||||
}
|
|
||||||
r.dbs = utils.ParseDBs(info.(string))
|
|
||||||
} else {
|
|
||||||
r.dbs = opts.DBS
|
|
||||||
}
|
}
|
||||||
|
r.dbs = utils.ParseDBs(info.(string))
|
||||||
}
|
}
|
||||||
r.opts = opts
|
r.opts = opts
|
||||||
r.ch = make(chan *entry.Entry, 1024)
|
r.ch = make(chan *entry.Entry, 1024)
|
||||||
r.stat.Name = "reader_" + strings.Replace(opts.Address, ":", "_", -1)
|
r.stat.Name = "reader_" + strings.Replace(opts.Address, ":", "_", -1)
|
||||||
r.needDumpQueue = utils.NewUniqueQueue(100000) // cache 100000 keys
|
r.needDumpQueue = utils.NewUniqueQueue(100000) // cache 100000 keys
|
||||||
r.needRestoreChan = make(chan *needRestoreItem, 1024) // inflight 1024 keys
|
r.needRestoreChan = make(chan *needRestoreItem, 1024) // inflight 1024 keys
|
||||||
|
log.Infof("[%s] scanStandaloneReader init finished. dbs=[%v]", r.stat.Name, r.dbs)
|
||||||
return r
|
return r
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue