use of com.alibaba.nacos.config.server.model.event.RaftDbErrorRecoverEvent in project nacos by alibaba.
the class ConfigDerbyRaft_DITCase method test_h_derby_has_error.
@Test
public void test_h_derby_has_error() throws Exception {
ThreadUtils.sleep(5000);
boolean result = iconfig7.publishConfig("raft_test_raft_error", "cluster_test_1", "this.is.raft_cluster=lessspring_7");
Assert.assertTrue(result);
NotifyCenter.registerToPublisher(RaftDbErrorRecoverEvent.class, 8);
CountDownLatch latch1 = new CountDownLatch(1);
NotifyCenter.registerSubscriber(new Subscriber<RaftDbErrorEvent>() {
@Override
public void onEvent(RaftDbErrorEvent event) {
latch1.countDown();
}
@Override
public Class<? extends Event> subscribeType() {
return RaftDbErrorEvent.class;
}
});
NotifyCenter.publishEvent(new RaftDbErrorEvent());
latch1.await(10_000L, TimeUnit.MILLISECONDS);
result = iconfig7.publishConfig("raft_test_raft_error", "cluster_test_1", "this.is.raft_cluster=lessspring_7");
Assert.assertFalse(result);
CountDownLatch latch2 = new CountDownLatch(1);
NotifyCenter.registerSubscriber(new Subscriber<RaftDbErrorRecoverEvent>() {
@Override
public void onEvent(RaftDbErrorRecoverEvent event) {
latch2.countDown();
}
@Override
public Class<? extends Event> subscribeType() {
return RaftDbErrorRecoverEvent.class;
}
});
NotifyCenter.publishEvent(new RaftDbErrorRecoverEvent());
latch2.await(10_000L, TimeUnit.MILLISECONDS);
result = iconfig7.publishConfig("raft_test_raft_error", "cluster_test_1", "this.is.raft_cluster=lessspring_7");
Assert.assertTrue(result);
}
Aggregations