Skip to content

Commit 68704f8

Browse files
authored
gracefulswitch, stub: remove last UpdateSubConnState references (#6533)
1 parent 4900699 commit 68704f8

File tree

2 files changed

+18
-17
lines changed

2 files changed

+18
-17
lines changed

internal/balancer/gracefulswitch/gracefulswitch_test.go

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -889,7 +889,7 @@ func (mb1 *mockBalancer) ResolverError(err error) {
889889
}
890890

891891
func (mb1 *mockBalancer) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) {
892-
mb1.scStateCh.Send(subConnWithState{sc: sc, state: state})
892+
panic(fmt.Sprintf("UpdateSubConnState(%v, %+v) called unexpectedly", sc, state))
893893
}
894894

895895
func (mb1 *mockBalancer) Close() {
@@ -951,7 +951,9 @@ func (mb1 *mockBalancer) updateState(state balancer.State) {
951951

952952
func (mb1 *mockBalancer) newSubConn(addrs []resolver.Address, opts balancer.NewSubConnOptions) (sc balancer.SubConn, err error) {
953953
if opts.StateListener == nil {
954-
opts.StateListener = func(state balancer.SubConnState) { mb1.UpdateSubConnState(sc, state) }
954+
opts.StateListener = func(state balancer.SubConnState) {
955+
mb1.scStateCh.Send(subConnWithState{sc: sc, state: state})
956+
}
955957
}
956958
defer func() {
957959
if sc != nil {
@@ -994,13 +996,13 @@ func (verifyBalancerBuilder) Name() string {
994996
return verifyBalName
995997
}
996998

997-
// verifyBalancer is a balancer that verifies that after a Close() call, an
998-
// updateSubConnState() call never happens.
999+
// verifyBalancer is a balancer that verifies that after a Close() call, a
1000+
// StateListener() call never happens.
9991001
type verifyBalancer struct {
10001002
closed *grpcsync.Event
10011003
// Hold onto the ClientConn wrapper to communicate with it.
10021004
cc balancer.ClientConn
1003-
// To fail the test if UpdateSubConnState gets called after Close().
1005+
// To fail the test if StateListener gets called after Close().
10041006
t *testing.T
10051007
}
10061008

@@ -1011,9 +1013,7 @@ func (vb *verifyBalancer) UpdateClientConnState(ccs balancer.ClientConnState) er
10111013
func (vb *verifyBalancer) ResolverError(err error) {}
10121014

10131015
func (vb *verifyBalancer) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) {
1014-
if vb.closed.HasFired() {
1015-
vb.t.Fatal("UpdateSubConnState was called after Close(), which breaks the balancer API")
1016-
}
1016+
panic(fmt.Sprintf("UpdateSubConnState(%v, %+v) called unexpectedly", sc, state))
10171017
}
10181018

10191019
func (vb *verifyBalancer) Close() {
@@ -1022,7 +1022,11 @@ func (vb *verifyBalancer) Close() {
10221022

10231023
func (vb *verifyBalancer) newSubConn(addrs []resolver.Address, opts balancer.NewSubConnOptions) (sc balancer.SubConn, err error) {
10241024
if opts.StateListener == nil {
1025-
opts.StateListener = func(state balancer.SubConnState) { vb.UpdateSubConnState(sc, state) }
1025+
opts.StateListener = func(state balancer.SubConnState) {
1026+
if vb.closed.HasFired() {
1027+
vb.t.Fatalf("StateListener(%+v) was called after Close(), which breaks the balancer API", state)
1028+
}
1029+
}
10261030
}
10271031
defer func() { sc.Connect() }()
10281032
return vb.cc.NewSubConn(addrs, opts)
@@ -1064,7 +1068,9 @@ func (bcb *buildCallbackBal) UpdateClientConnState(ccs balancer.ClientConnState)
10641068

10651069
func (bcb *buildCallbackBal) ResolverError(err error) {}
10661070

1067-
func (bcb *buildCallbackBal) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) {}
1071+
func (bcb *buildCallbackBal) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) {
1072+
panic(fmt.Sprintf("UpdateSubConnState(%v, %+v) called unexpectedly", sc, state))
1073+
}
10681074

10691075
func (bcb *buildCallbackBal) Close() {
10701076
bcb.closeCh.Send(struct{}{})
@@ -1075,9 +1081,6 @@ func (bcb *buildCallbackBal) updateState(state balancer.State) {
10751081
}
10761082

10771083
func (bcb *buildCallbackBal) newSubConn(addrs []resolver.Address, opts balancer.NewSubConnOptions) (sc balancer.SubConn, err error) {
1078-
if opts.StateListener == nil {
1079-
opts.StateListener = func(state balancer.SubConnState) { bcb.UpdateSubConnState(sc, state) }
1080-
}
10811084
defer func() {
10821085
if sc != nil {
10831086
sc.Connect()

internal/balancer/stub/stub.go

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ package stub
2121

2222
import (
2323
"encoding/json"
24+
"fmt"
2425

2526
"google.golang.org/grpc/balancer"
2627
"google.golang.org/grpc/serviceconfig"
@@ -38,7 +39,6 @@ type BalancerFuncs struct {
3839

3940
UpdateClientConnState func(*BalancerData, balancer.ClientConnState) error
4041
ResolverError func(*BalancerData, error)
41-
UpdateSubConnState func(*BalancerData, balancer.SubConn, balancer.SubConnState)
4242
Close func(*BalancerData)
4343
ExitIdle func(*BalancerData)
4444
}
@@ -72,9 +72,7 @@ func (b *bal) ResolverError(e error) {
7272
}
7373

7474
func (b *bal) UpdateSubConnState(sc balancer.SubConn, scs balancer.SubConnState) {
75-
if b.bf.UpdateSubConnState != nil {
76-
b.bf.UpdateSubConnState(b.bd, sc, scs)
77-
}
75+
panic(fmt.Sprintf("UpdateSubConnState(%v, %+v) called unexpectedly", sc, scs))
7876
}
7977

8078
func (b *bal) Close() {

0 commit comments

Comments
 (0)