Exemple #1
0
  @Test(timeout = 1000)
  public void testCommit() throws Exception {
    log.trace("PaxosTest::testCommit()");

    serverL.run();
    serverA.run();
    serverB.run();
    serverC.run();

    long id = leader.addProposal(new NullOperation("one"));

    while (isProposalPending(id)) {
      Thread.sleep(100);
    }
  }
Exemple #2
0
  // TODO fix test
  // @Test(timeout = 1000)
  public void testCommitWithFailure() throws Exception {
    log.trace("PaxosTest::testCommit()");

    serverL.run();
    serverA.run();
    serverB.run();
    // C missing

    long id = leader.addProposal(new NullOperation("one"));

    while (followA.getProposal(id) == null
        || followA.getProposal(id).getState() != ProposalState.ACCEPTED
        || followB.getProposal(id) == null
        || followB.getProposal(id).getState() != ProposalState.ACCEPTED) {
      Thread.sleep(100);
    }
  }
Exemple #3
0
  @Test(timeout = 1000)
  public void testOperationHanddown() throws Exception {
    log.trace("PaxosTest::testCommit()");

    serverL.run();
    serverA.run();
    serverB.run();
    serverC.run();

    long id = leader.addProposal(new NullOperation("one"));

    while (isProposalPending(id)) {
      Thread.sleep(100);
    }

    assertNotNull(followA.getProposal(id).getOperation());
    assertNotNull(followB.getProposal(id).getOperation());
    assertNotNull(followC.getProposal(id).getOperation());
  }