4141
4242using namespace dsn ::replication;
4343
44- TEST (meta_data, dropped_cmp) {
44+ TEST (meta_data, dropped_cmp)
45+ {
4546 dsn::host_port n;
4647
4748 dropped_replica d1, d2;
@@ -87,7 +88,8 @@ TEST(meta_data, dropped_cmp) {
8788}
8889
8990static bool vec_equal (const std::vector<dropped_replica> &vec1,
90- const std::vector<dropped_replica> &vec2) {
91+ const std::vector<dropped_replica> &vec2)
92+ {
9193 if (vec1.size () != vec2.size ())
9294 return false ;
9395 for (unsigned int i = 0 ; i != vec1.size (); ++i) {
@@ -105,7 +107,8 @@ static bool vec_equal(const std::vector<dropped_replica> &vec1,
105107 return true ;
106108}
107109
108- TEST (meta_data, collect_replica) {
110+ TEST (meta_data, collect_replica)
111+ {
109112 app_mapper apps;
110113 node_mapper nodes;
111114
@@ -131,20 +134,20 @@ TEST(meta_data, collect_replica) {
131134 std::vector<dsn::host_port> node_list;
132135 generate_node_list (node_list, 10 , 10 );
133136
134- #define CLEAR_REPLICA \
135- do { \
136- RESET_IP_AND_HOST_PORT (pc, primary); \
137- CLEAR_IP_AND_HOST_PORT (pc, secondaries); \
138- CLEAR_IP_AND_HOST_PORT (pc, last_drops); \
137+ #define CLEAR_REPLICA \
138+ do { \
139+ RESET_IP_AND_HOST_PORT (pc, primary); \
140+ CLEAR_IP_AND_HOST_PORT (pc, secondaries); \
141+ CLEAR_IP_AND_HOST_PORT (pc, last_drops); \
139142 } while (false )
140143
141- #define CLEAR_DROP_LIST \
142- do { \
143- cc.dropped .clear (); \
144+ #define CLEAR_DROP_LIST \
145+ do { \
146+ cc.dropped .clear (); \
144147 } while (false )
145148
146- #define CLEAR_ALL \
147- CLEAR_REPLICA; \
149+ #define CLEAR_ALL \
150+ CLEAR_REPLICA; \
148151 CLEAR_DROP_LIST
149152
150153 {
@@ -207,10 +210,8 @@ TEST(meta_data, collect_replica) {
207210 // drop_list mixed, full, minimal position
208211 CLEAR_ALL;
209212 cc.dropped = {
210- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
211- 3 , 5 },
212- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
213- 4 , 5 },
213+ dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 3 , 5 },
214+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 5 },
214215 dropped_replica{node_list[2 ], 7 , 1 , 1 , 5 },
215216 dropped_replica{node_list[3 ], 8 , 1 , 1 , 5 },
216217 };
@@ -225,10 +226,8 @@ TEST(meta_data, collect_replica) {
225226 // drop_list mixed, not full, minimal position
226227 CLEAR_ALL;
227228 cc.dropped = {
228- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
229- 3 , 5 },
230- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
231- 4 , 5 },
229+ dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 3 , 5 },
230+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 5 },
232231 dropped_replica{node_list[2 ], 7 , 1 , 1 , 6 },
233232 };
234233
@@ -246,10 +245,8 @@ TEST(meta_data, collect_replica) {
246245 // drop_list mixed, full, not minimal position
247246 CLEAR_ALL;
248247 cc.dropped = {
249- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
250- 2 , 6 },
251- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
252- 4 , 6 },
248+ dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 2 , 6 },
249+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 6 },
253250 dropped_replica{node_list[2 ], 7 , 1 , 1 , 6 },
254251 dropped_replica{node_list[3 ], 8 , 1 , 1 , 6 },
255252 };
@@ -268,25 +265,19 @@ TEST(meta_data, collect_replica) {
268265 {
269266 // drop_list mixed, not full, not minimal position
270267 CLEAR_ALL;
271- cc.dropped = {
272- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
273- 2 , 6 },
274- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
275- 4 , 6 },
276- dropped_replica{node_list[2 ], 7 , 1 , 1 , 6 }};
268+ cc.dropped = {dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 2 , 6 },
269+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 6 },
270+ dropped_replica{node_list[2 ], 7 , 1 , 1 , 6 }};
277271
278272 rep.ballot = 3 ;
279273 rep.last_committed_decree = 1 ;
280274 rep.last_prepared_decree = 6 ;
281275 ASSERT_TRUE (collect_replica (view, node_list[5 ], rep));
282276
283277 std::vector<dropped_replica> result_dropped = {
284- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
285- 2 , 6 },
286- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
287- 4 , 6 },
288- dropped_replica{node_list[5 ], dropped_replica::INVALID_TIMESTAMP, 3 ,
289- 1 , 6 },
278+ dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 2 , 6 },
279+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 6 },
280+ dropped_replica{node_list[5 ], dropped_replica::INVALID_TIMESTAMP, 3 , 1 , 6 },
290281 dropped_replica{node_list[2 ], 7 , 1 , 1 , 6 }};
291282
292283 ASSERT_TRUE (vec_equal (result_dropped, cc.dropped ));
@@ -296,14 +287,10 @@ TEST(meta_data, collect_replica) {
296287 // drop_list no timestamp, full, minimal position
297288 CLEAR_ALL;
298289 cc.dropped = {
299- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
300- 2 , 8 },
301- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
302- 4 , 8 },
303- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
304- 6 , 8 },
305- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
306- 2 , 8 },
290+ dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 2 , 8 },
291+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 8 },
292+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 , 6 , 8 },
293+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 , 2 , 8 },
307294 };
308295
309296 rep.ballot = 1 ;
@@ -316,14 +303,10 @@ TEST(meta_data, collect_replica) {
316303 // drop_list no timestamp, full, middle position
317304 CLEAR_ALL;
318305 cc.dropped = {
319- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
320- 2 , 8 },
321- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
322- 4 , 8 },
323- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
324- 6 , 8 },
325- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
326- 2 , 8 },
306+ dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 2 , 2 , 8 },
307+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 8 },
308+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 , 6 , 8 },
309+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 , 2 , 8 },
327310 };
328311
329312 rep.ballot = 3 ;
@@ -332,14 +315,10 @@ TEST(meta_data, collect_replica) {
332315 ASSERT_TRUE (collect_replica (view, node_list[5 ], rep));
333316
334317 std::vector<dropped_replica> result_dropped = {
335- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
336- 4 , 8 },
337- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
338- 6 , 8 },
339- dropped_replica{node_list[5 ], dropped_replica::INVALID_TIMESTAMP, 3 ,
340- 6 , 8 },
341- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
342- 2 , 8 },
318+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 8 },
319+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 , 6 , 8 },
320+ dropped_replica{node_list[5 ], dropped_replica::INVALID_TIMESTAMP, 3 , 6 , 8 },
321+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 , 2 , 8 },
343322 };
344323
345324 ASSERT_TRUE (vec_equal (result_dropped, cc.dropped ));
@@ -348,30 +327,21 @@ TEST(meta_data, collect_replica) {
348327 {
349328 // drop_list no timestamp, full, largest position
350329 CLEAR_ALL;
351- cc.dropped = {
352- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
353- 4 , 8 },
354- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
355- 6 , 8 },
356- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
357- 2 , 8 },
358- dropped_replica{node_list[4 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
359- 6 , 8 }};
330+ cc.dropped = {dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 2 , 4 , 8 },
331+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 , 6 , 8 },
332+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 , 2 , 8 },
333+ dropped_replica{node_list[4 ], dropped_replica::INVALID_TIMESTAMP, 4 , 6 , 8 }};
360334
361335 rep.ballot = 4 ;
362336 rep.last_committed_decree = 8 ;
363337 rep.last_prepared_decree = 8 ;
364338 ASSERT_TRUE (collect_replica (view, node_list[5 ], rep));
365339
366340 std::vector<dropped_replica> result_dropped = {
367- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 ,
368- 6 , 8 },
369- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
370- 2 , 8 },
371- dropped_replica{node_list[4 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
372- 6 , 8 },
373- dropped_replica{node_list[5 ], dropped_replica::INVALID_TIMESTAMP, 4 ,
374- 8 , 8 }};
341+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 2 , 6 , 8 },
342+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 4 , 2 , 8 },
343+ dropped_replica{node_list[4 ], dropped_replica::INVALID_TIMESTAMP, 4 , 6 , 8 },
344+ dropped_replica{node_list[5 ], dropped_replica::INVALID_TIMESTAMP, 4 , 8 , 8 }};
375345
376346 ASSERT_TRUE (vec_equal (result_dropped, cc.dropped ));
377347 }
@@ -380,7 +350,8 @@ TEST(meta_data, collect_replica) {
380350#undef CLEAR_DROP_LIST
381351}
382352
383- TEST (meta_data, construct_replica) {
353+ TEST (meta_data, construct_replica)
354+ {
384355 app_mapper apps;
385356 node_mapper nodes;
386357
@@ -406,20 +377,20 @@ TEST(meta_data, construct_replica) {
406377 std::vector<dsn::host_port> node_list;
407378 generate_node_list (node_list, 10 , 10 );
408379
409- #define CLEAR_REPLICA \
410- do { \
411- RESET_IP_AND_HOST_PORT (pc, primary); \
412- CLEAR_IP_AND_HOST_PORT (pc, secondaries); \
413- CLEAR_IP_AND_HOST_PORT (pc, last_drops); \
380+ #define CLEAR_REPLICA \
381+ do { \
382+ RESET_IP_AND_HOST_PORT (pc, primary); \
383+ CLEAR_IP_AND_HOST_PORT (pc, secondaries); \
384+ CLEAR_IP_AND_HOST_PORT (pc, last_drops); \
414385 } while (false )
415386
416- #define CLEAR_DROP_LIST \
417- do { \
418- cc.dropped .clear (); \
387+ #define CLEAR_DROP_LIST \
388+ do { \
389+ cc.dropped .clear (); \
419390 } while (false )
420391
421- #define CLEAR_ALL \
422- CLEAR_REPLICA; \
392+ #define CLEAR_ALL \
393+ CLEAR_REPLICA; \
423394 CLEAR_DROP_LIST
424395
425396 // drop_list is empty, can't construct replica
@@ -432,8 +403,7 @@ TEST(meta_data, construct_replica) {
432403 // only have one node in drop_list
433404 {
434405 CLEAR_ALL;
435- cc.dropped = {dropped_replica{
436- node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 5 , 10 , 12 }};
406+ cc.dropped = {dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 5 , 10 , 12 }};
437407 ASSERT_TRUE (construct_replica (view, rep.pid , 3 ));
438408 ASSERT_EQ (node_list[0 ], pc.hp_primary );
439409 ASSERT_TRUE (pc.hp_secondaries .empty ());
@@ -444,15 +414,10 @@ TEST(meta_data, construct_replica) {
444414 // have multiple nodes, ballots are not same
445415 {
446416 CLEAR_ALL;
447- cc.dropped = {
448- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 6 ,
449- 10 , 12 },
450- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
451- 10 , 12 },
452- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 8 ,
453- 10 , 12 },
454- dropped_replica{node_list[4 ], dropped_replica::INVALID_TIMESTAMP, 9 ,
455- 11 , 12 }};
417+ cc.dropped = {dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 6 , 10 , 12 },
418+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 7 , 10 , 12 },
419+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 8 , 10 , 12 },
420+ dropped_replica{node_list[4 ], dropped_replica::INVALID_TIMESTAMP, 9 , 11 , 12 }};
456421 ASSERT_TRUE (construct_replica (view, rep.pid , 3 ));
457422 ASSERT_EQ (node_list[4 ], pc.hp_primary );
458423 ASSERT_TRUE (pc.hp_secondaries .empty ());
@@ -466,13 +431,9 @@ TEST(meta_data, construct_replica) {
466431 // have multiple node, two have same ballots
467432 {
468433 CLEAR_ALL;
469- cc.dropped = {
470- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 5 ,
471- 10 , 12 },
472- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
473- 11 , 12 },
474- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
475- 12 , 12 }};
434+ cc.dropped = {dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 5 , 10 , 12 },
435+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 7 , 11 , 12 },
436+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 7 , 12 , 12 }};
476437
477438 ASSERT_TRUE (construct_replica (view, rep.pid , 3 ));
478439 ASSERT_EQ (node_list[2 ], pc.hp_primary );
@@ -487,15 +448,10 @@ TEST(meta_data, construct_replica) {
487448 // have multiple nodes, all have same ballots
488449 {
489450 CLEAR_ALL;
490- cc.dropped = {
491- dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
492- 11 , 14 },
493- dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
494- 12 , 14 },
495- dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
496- 13 , 14 },
497- dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 7 ,
498- 14 , 14 }};
451+ cc.dropped = {dropped_replica{node_list[0 ], dropped_replica::INVALID_TIMESTAMP, 7 , 11 , 14 },
452+ dropped_replica{node_list[1 ], dropped_replica::INVALID_TIMESTAMP, 7 , 12 , 14 },
453+ dropped_replica{node_list[2 ], dropped_replica::INVALID_TIMESTAMP, 7 , 13 , 14 },
454+ dropped_replica{node_list[3 ], dropped_replica::INVALID_TIMESTAMP, 7 , 14 , 14 }};
499455
500456 ASSERT_TRUE (construct_replica (view, rep.pid , 3 ));
501457 ASSERT_EQ (node_list[3 ], pc.hp_primary );
0 commit comments