Acceptance Test #3 - Replication manager re-starts the failed primary

Functionality
Fault-Tolerant Baseline

Use Case
When primary server fails, client will automatically connect to another server, however it is still important that the primary that failed is restarted. Our application does this and it is very easy to see.

Test Distribution
All details about setting-up the environment and running the application are given in Building the Fault-Tolerant Baseline Application. It is assumed that the environment is working and that you have everything compiled correctly.

Test Sequence

  • Launch the replication manager:
    java Replication.UniReplication -ORBInitialHost localhost -ORBInitialPort 1500

  • Launch the client:
    java Client.UniClient -ORBInitialHost localhost -ORBInitialPort 1500

  • Perform an operation on the client, in the replicas status window you will see that the client is bound to this server and the transaction taking place.

  • Now kill the primary replica

  • In the client, execute another command to the server
You will now see the next server in line turn red (become the primary) and then you will see the primary turn green as it is now re-launched by the replication manager. You may kill as many primaries as you would like. They will turn grey right after they are killed, indicating that they have failed. They will then turn green shortly after they died indicating that they are now back up and running and able to become the primary again if other replicas fail.