Java Code Examples for org.apache.cassandra.config.DatabaseDescriptor#getCommitFailurePolicy()
The following examples show how to use
org.apache.cassandra.config.DatabaseDescriptor#getCommitFailurePolicy() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: CommitLog.java From stratio-cassandra with Apache License 2.0 | 6 votes |
@VisibleForTesting public static boolean handleCommitError(String message, Throwable t) { JVMStabilityInspector.inspectCommitLogThrowable(t); switch (DatabaseDescriptor.getCommitFailurePolicy()) { // Needed here for unit tests to not fail on default assertion case die: case stop: StorageService.instance.stopTransports(); case stop_commit: logger.error(String.format("%s. Commit disk failure policy is %s; terminating thread", message, DatabaseDescriptor.getCommitFailurePolicy()), t); return false; case ignore: logger.error(message, t); return true; default: throw new AssertionError(DatabaseDescriptor.getCommitFailurePolicy()); } }
Example 2
Source File: CommitLogTest.java From stratio-cassandra with Apache License 2.0 | 6 votes |
@Test public void testCommitFailurePolicy_stop() throws ConfigurationException { // Need storage service active so stop policy can shutdown gossip StorageService.instance.initServer(); Assert.assertTrue(Gossiper.instance.isEnabled()); Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); try { DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.stop); CommitLog.handleCommitError("Test stop error", new Throwable()); Assert.assertFalse(Gossiper.instance.isEnabled()); } finally { DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); } }
Example 3
Source File: CommitLogTest.java From stratio-cassandra with Apache License 2.0 | 6 votes |
@Test public void testCommitFailurePolicy_die() { KillerForTests killerForTests = new KillerForTests(); JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); Config.CommitFailurePolicy oldPolicy = DatabaseDescriptor.getCommitFailurePolicy(); try { DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); CommitLog.handleCommitError("Testing die policy", new Throwable()); Assert.assertTrue(killerForTests.wasKilled()); } finally { DatabaseDescriptor.setCommitFailurePolicy(oldPolicy); JVMStabilityInspector.replaceKiller(originalKiller); } }
Example 4
Source File: JVMStabilityInspector.java From stratio-cassandra with Apache License 2.0 | 5 votes |
public static void inspectCommitLogThrowable(Throwable t) { if (DatabaseDescriptor.getCommitFailurePolicy() == Config.CommitFailurePolicy.die) killer.killCurrentJVM(t); else inspectThrowable(t); }
Example 5
Source File: JVMStabilityInspectorTest.java From stratio-cassandra with Apache License 2.0 | 5 votes |
@Test public void testKill() throws Exception { KillerForTests killerForTests = new KillerForTests(); JVMStabilityInspector.Killer originalKiller = JVMStabilityInspector.replaceKiller(killerForTests); Config.DiskFailurePolicy oldPolicy = DatabaseDescriptor.getDiskFailurePolicy(); Config.CommitFailurePolicy oldCommitPolicy = DatabaseDescriptor.getCommitFailurePolicy(); try { killerForTests.reset(); JVMStabilityInspector.inspectThrowable(new IOException()); assertFalse(killerForTests.wasKilled()); killerForTests.reset(); JVMStabilityInspector.inspectThrowable(new OutOfMemoryError()); assertTrue(killerForTests.wasKilled()); DatabaseDescriptor.setDiskFailurePolicy(Config.DiskFailurePolicy.die); killerForTests.reset(); JVMStabilityInspector.inspectThrowable(new FSReadError(new IOException(), "blah")); assertTrue(killerForTests.wasKilled()); DatabaseDescriptor.setCommitFailurePolicy(Config.CommitFailurePolicy.die); killerForTests.reset(); JVMStabilityInspector.inspectCommitLogThrowable(new Throwable()); assertTrue(killerForTests.wasKilled()); } finally { JVMStabilityInspector.replaceKiller(originalKiller); DatabaseDescriptor.setDiskFailurePolicy(oldPolicy); DatabaseDescriptor.setCommitFailurePolicy(oldCommitPolicy); } }