stan: fix error when multiple times calling Connect method
dont overwrite passed options to avoid error: impossible to use custom ConnectionLostCB and ConnectRetry(true) Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
parent
44de02e879
commit
09f946bd6b
10
stan.go
10
stan.go
@ -218,10 +218,6 @@ func (n *stanBroker) Connect() error {
|
||||
return errors.New("impossible to use custom ConnectionLostCB and ConnectRetry(true)")
|
||||
}
|
||||
|
||||
if n.connectRetry {
|
||||
n.sopts.ConnectionLostCB = n.reconnectCB
|
||||
}
|
||||
|
||||
nopts := []stan.Option{
|
||||
stan.NatsURL(n.sopts.NatsURL),
|
||||
stan.NatsConn(n.sopts.NatsConn),
|
||||
@ -229,8 +225,12 @@ func (n *stanBroker) Connect() error {
|
||||
stan.PubAckWait(n.sopts.AckTimeout),
|
||||
stan.MaxPubAcksInflight(n.sopts.MaxPubAcksInflight),
|
||||
stan.Pings(n.sopts.PingInterval, n.sopts.PingMaxOut),
|
||||
stan.SetConnectionLostHandler(n.sopts.ConnectionLostCB),
|
||||
}
|
||||
|
||||
if n.connectRetry {
|
||||
nopts = append(nopts, stan.SetConnectionLostHandler(n.reconnectCB))
|
||||
}
|
||||
|
||||
nopts = append(nopts, stan.NatsURL(strings.Join(n.addrs, ",")))
|
||||
|
||||
n.nopts = nopts
|
||||
|
Loading…
Reference in New Issue
Block a user