|
3 | 3 | use Cluster; |
4 | 4 | use TestLib; |
5 | 5 | use Test::Moretests=> 3; |
6 | | -use DBI; |
7 | | -use DBD::Pg':async'; |
8 | 6 |
|
9 | 7 | my$cluster = new Cluster(3); |
10 | 8 | $cluster->init(); |
|
43 | 41 | diag("stopping node 2"); |
44 | 42 | $cluster->{nodes}->[2]->teardown_node; |
45 | 43 |
|
46 | | -diag("sleeping 15"); |
47 | | -sleep(15); |
| 44 | +my$ret =$cluster->psql(0,'postgres',"insert into t values(4, 40);"); |
| 45 | +diag"tx1 status =$ret"; |
48 | 46 |
|
49 | 47 | diag("inserting 2"); |
50 | | -$cluster->psql(0,'postgres',"insert into t values(2, 20);"); |
| 48 | +my$ret =$cluster->psql(0,'postgres',"insert into t values(2, 20);"); |
| 49 | +diag"tx2 status =$ret"; |
| 50 | + |
51 | 51 | diag("selecting"); |
52 | 52 | $cluster->psql(1,'postgres',"select v from t where k=2;",stdout=> \$psql_out); |
53 | 53 | diag("selected"); |
|
58 | 58 | ############################################################################### |
59 | 59 |
|
60 | 60 | diag("starting node 2"); |
61 | | -$nodes[2]->start; |
62 | | -diag("sleeping 10"); |
| 61 | +$cluster->{nodes}->[2]->start; |
| 62 | +#diag("sleeping 10"); |
63 | 63 | #sleep(10); # XXX: here we can poll |
| 64 | + |
64 | 65 | $cluster->psql(0,'postgres',"select mtm.poll_node(3);"); |
65 | 66 | diag("inserting 3"); |
| 67 | + |
66 | 68 | $cluster->psql(0,'postgres',"insert into t values(3, 30);"); |
67 | 69 | diag("selecting"); |
| 70 | + |
68 | 71 | $cluster->psql(2,'postgres',"select v from t where k=3;",stdout=> \$psql_out); |
69 | 72 | diag("selected"); |
| 73 | + |
70 | 74 | is($psql_out,'30',"Check replication after failed node recovery."); |
71 | 75 |
|
72 | 76 |
|