diff --git a/CHANGES.txt b/CHANGES.txt index ceccc71f6e..1d1b4fddb0 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -9,6 +9,8 @@ (CASSANDRA-4088) * relax path length requirement for sstable files when upgrading on non-Windows platforms (CASSANDRA-4110) + * fix terminination of the stress.java when errors were encountered + (CASSANDRA-4128) 1.1-beta2 diff --git a/tools/stress/src/org/apache/cassandra/stress/Stress.java b/tools/stress/src/org/apache/cassandra/stress/Stress.java index 36f0410daa..c5e65f8f6e 100644 --- a/tools/stress/src/org/apache/cassandra/stress/Stress.java +++ b/tools/stress/src/org/apache/cassandra/stress/Stress.java @@ -88,7 +88,7 @@ public final class Stress } else { - new StressAction(session, outStream).run(); + new StressAction(session, outStream).start(); } } diff --git a/tools/stress/src/org/apache/cassandra/stress/StressAction.java b/tools/stress/src/org/apache/cassandra/stress/StressAction.java index 8d6a0f58a5..d175170d99 100644 --- a/tools/stress/src/org/apache/cassandra/stress/StressAction.java +++ b/tools/stress/src/org/apache/cassandra/stress/StressAction.java @@ -137,6 +137,9 @@ public class StressAction extends Thread } } + if (producer.isAlive()) + producer.interrupt(); // if producer is still alive it means that we had errors in the consumers + // marking an end of the output to the client output.println("END"); } @@ -161,7 +164,8 @@ public class StressAction extends Thread } catch (InterruptedException e) { - System.err.println("Producer error - " + e.getMessage()); + if (e.getMessage() != null) + System.err.println("Producer error - " + e.getMessage()); return; } }