private void checkTooManyError(ISingleConsole singleConsole,
								   PerfTest perfTest,
								   IPerfTestService perfTestService,
								   ImmutableStatisticsSet cumulativeStatistics) {

		StatisticsIndexMap statisticsIndexMap = singleConsole.getStatisticsIndexMap();
		long testSum = cumulativeStatistics.getCount(statisticsIndexMap.getLongSampleIndex("timedTests"));
		long errors = cumulativeStatistics.getValue(statisticsIndexMap.getLongIndex("errors"));
		if (((double) (testSum + errors)) / 2 < errors) {
			if (lastMomentWhenErrorsMoreThanHalfOfTotalTPSValue == 0) {
				lastMomentWhenErrorsMoreThanHalfOfTotalTPSValue = System.currentTimeMillis();
			} else if (isOverLowTpsThreshold()) {
				log.warn(format(perfTest, "Stop the test because the count of test error is more than"
					+ " half of total tps for last {} seconds.", TOO_MANY_ERROR_TIME / 1000));

				if (perfTest.getStatus() != Status.ABNORMAL_TESTING) {
					perfTestService.markStatusAndProgress(perfTest, Status.ABNORMAL_TESTING, "Too many errors");
				}
				lastMomentWhenErrorsMoreThanHalfOfTotalTPSValue = 0;
			}
		}
	}
Check if too many error has been occurred. If the half of total
transaction is error for the last 10 secs. It notifies the
{@link SingleConsole.ConsoleShutdownListener}

@param cumulativeStatistics accumulated Statistics
ngrinder-controller/src/main/java/org/ngrinder/perftest/service/samplinglistener/TooManyErrorCheckPlugin.java