@@ -93,6 +93,8 @@ func newTestRaft(t *testing.T, id string, fsm raft.FSM) (*raft.Raft, func()) {
9393}
9494
9595func TestShardRouterCommit (t * testing.T ) {
96+ ctx := context .Background ()
97+
9698 e := distribution .NewEngine ()
9799 e .UpdateRoute ([]byte ("a" ), []byte ("m" ), 1 )
98100 e .UpdateRoute ([]byte ("m" ), nil , 2 )
@@ -104,32 +106,31 @@ func TestShardRouterCommit(t *testing.T) {
104106 l1 := store .NewRbMemoryStoreWithExpire (time .Minute )
105107 r1 , stop1 := newTestRaft (t , "1" , NewKvFSM (s1 , l1 ))
106108 defer stop1 ()
107- router .Register (1 , NewTransaction (r1 ))
109+ router .Register (1 , NewTransaction (r1 ), s1 )
108110
109111 // group 2
110112 s2 := store .NewRbMemoryStore ()
111113 l2 := store .NewRbMemoryStoreWithExpire (time .Minute )
112114 r2 , stop2 := newTestRaft (t , "2" , NewKvFSM (s2 , l2 ))
113115 defer stop2 ()
114- router .Register (2 , NewTransaction (r2 ))
116+ router .Register (2 , NewTransaction (r2 ), s2 )
115117
116118 reqs := []* pb.Request {
117119 {IsTxn : false , Phase : pb .Phase_NONE , Mutations : []* pb.Mutation {{Op : pb .Op_PUT , Key : []byte ("b" ), Value : []byte ("v1" )}}},
118120 {IsTxn : false , Phase : pb .Phase_NONE , Mutations : []* pb.Mutation {{Op : pb .Op_PUT , Key : []byte ("x" ), Value : []byte ("v2" )}}},
119121 }
120122
121- _ , err := router .Commit (reqs )
122- if err != nil {
123+ if _ , err := router .Commit (reqs ); err != nil {
123124 t .Fatalf ("commit: %v" , err )
124125 }
125126
126- v , err := s1 .Get (context . Background () , []byte ("b" ))
127+ v , err := router .Get (ctx , []byte ("b" ))
127128 if err != nil || string (v ) != "v1" {
128- t .Fatalf ("group1 value : %v %v" , v , err )
129+ t .Fatalf ("group1 get : %v %v" , v , err )
129130 }
130- v , err = s2 .Get (context . Background () , []byte ("x" ))
131+ v , err = router .Get (ctx , []byte ("x" ))
131132 if err != nil || string (v ) != "v2" {
132- t .Fatalf ("group2 value : %v %v" , v , err )
133+ t .Fatalf ("group2 get : %v %v" , v , err )
133134 }
134135}
135136
@@ -147,14 +148,14 @@ func TestShardRouterSplitAndMerge(t *testing.T) {
147148 l1 := store .NewRbMemoryStoreWithExpire (time .Minute )
148149 r1 , stop1 := newTestRaft (t , "1" , NewKvFSM (s1 , l1 ))
149150 defer stop1 ()
150- router .Register (1 , NewTransaction (r1 ))
151+ router .Register (1 , NewTransaction (r1 ), s1 )
151152
152153 // group 2 (will be used after split)
153154 s2 := store .NewRbMemoryStore ()
154155 l2 := store .NewRbMemoryStoreWithExpire (time .Minute )
155156 r2 , stop2 := newTestRaft (t , "2" , NewKvFSM (s2 , l2 ))
156157 defer stop2 ()
157- router .Register (2 , NewTransaction (r2 ))
158+ router .Register (2 , NewTransaction (r2 ), s2 )
158159
159160 // initial write routed to group 1
160161 req := []* pb.Request {
@@ -163,7 +164,7 @@ func TestShardRouterSplitAndMerge(t *testing.T) {
163164 if _ , err := router .Commit (req ); err != nil {
164165 t .Fatalf ("commit group1: %v" , err )
165166 }
166- v , err := s1 .Get (ctx , []byte ("b" ))
167+ v , err := router .Get (ctx , []byte ("b" ))
167168 if err != nil || string (v ) != "v1" {
168169 t .Fatalf ("group1 value before split: %v %v" , v , err )
169170 }
@@ -181,7 +182,7 @@ func TestShardRouterSplitAndMerge(t *testing.T) {
181182 if _ , err := router .Commit (req ); err != nil {
182183 t .Fatalf ("commit group2: %v" , err )
183184 }
184- v , err = s2 .Get (ctx , []byte ("x" ))
185+ v , err = router .Get (ctx , []byte ("x" ))
185186 if err != nil || string (v ) != "v2" {
186187 t .Fatalf ("group2 value after split: %v %v" , v , err )
187188 }
@@ -198,7 +199,7 @@ func TestShardRouterSplitAndMerge(t *testing.T) {
198199 if _ , err := router .Commit (req ); err != nil {
199200 t .Fatalf ("commit after merge: %v" , err )
200201 }
201- v , err = s1 .Get (ctx , []byte ("z" ))
202+ v , err = router .Get (ctx , []byte ("z" ))
202203 if err != nil || string (v ) != "v3" {
203204 t .Fatalf ("group1 value after merge: %v %v" , v , err )
204205 }
@@ -232,8 +233,8 @@ func TestShardRouterCommitFailure(t *testing.T) {
232233
233234 ok := & fakeTM {}
234235 fail := & fakeTM {commitErr : true }
235- router .Register (1 , ok )
236- router .Register (2 , fail )
236+ router .Register (1 , ok , nil )
237+ router .Register (2 , fail , nil )
237238
238239 reqs := []* pb.Request {
239240 {IsTxn : false , Phase : pb .Phase_NONE , Mutations : []* pb.Mutation {{Op : pb .Op_PUT , Key : []byte ("b" ), Value : []byte ("v1" )}}},
0 commit comments