|
@@ -6,9 +6,6 @@
|
|
|
package org.elasticsearch.xpack.ml.job.process;
|
|
|
|
|
|
import org.elasticsearch.action.ActionListener;
|
|
|
-import org.elasticsearch.cluster.service.ClusterService;
|
|
|
-import org.elasticsearch.common.settings.ClusterSettings;
|
|
|
-import org.elasticsearch.common.settings.Setting;
|
|
|
import org.elasticsearch.common.settings.Settings;
|
|
|
import org.elasticsearch.common.unit.TimeValue;
|
|
|
import org.elasticsearch.env.Environment;
|
|
@@ -25,33 +22,24 @@ import org.mockito.Mockito;
|
|
|
import java.io.IOException;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.Date;
|
|
|
-import java.util.HashSet;
|
|
|
-import java.util.Set;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
-import static org.elasticsearch.mock.orig.Mockito.when;
|
|
|
import static org.mockito.Matchers.any;
|
|
|
import static org.mockito.Matchers.anyString;
|
|
|
import static org.mockito.Matchers.eq;
|
|
|
-import static org.mockito.Mockito.mock;
|
|
|
import static org.mockito.Mockito.never;
|
|
|
import static org.mockito.Mockito.verify;
|
|
|
|
|
|
public class DataCountsReporterTests extends ESTestCase {
|
|
|
- private static final int MAX_PERCENT_DATE_PARSE_ERRORS = 40;
|
|
|
- private static final int MAX_PERCENT_OUT_OF_ORDER_ERRORS = 30;
|
|
|
|
|
|
private Job job;
|
|
|
private JobDataCountsPersister jobDataCountsPersister;
|
|
|
private Settings settings;
|
|
|
private TimeValue bucketSpan = TimeValue.timeValueSeconds(300);
|
|
|
- private ClusterService clusterService;
|
|
|
|
|
|
@Before
|
|
|
public void setUpMocks() {
|
|
|
settings = Settings.builder().put(Environment.PATH_HOME_SETTING.getKey(), createTempDir().toString())
|
|
|
- .put(DataCountsReporter.MAX_ACCEPTABLE_PERCENT_OF_DATE_PARSE_ERRORS_SETTING.getKey(), MAX_PERCENT_DATE_PARSE_ERRORS)
|
|
|
- .put(DataCountsReporter.MAX_ACCEPTABLE_PERCENT_OF_OUT_OF_ORDER_ERRORS_SETTING.getKey(), MAX_PERCENT_OUT_OF_ORDER_ERRORS)
|
|
|
.build();
|
|
|
|
|
|
AnalysisConfig.Builder acBuilder = new AnalysisConfig.Builder(Arrays.asList(new Detector.Builder("metric", "field").build()));
|
|
@@ -60,14 +48,6 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
acBuilder.setDetectors(Arrays.asList(new Detector.Builder("metric", "field").build()));
|
|
|
|
|
|
|
|
|
- Set<Setting<?>> setOfSettings = new HashSet<>();
|
|
|
- setOfSettings.add(DataCountsReporter.MAX_ACCEPTABLE_PERCENT_OF_DATE_PARSE_ERRORS_SETTING);
|
|
|
- setOfSettings.add(DataCountsReporter.MAX_ACCEPTABLE_PERCENT_OF_OUT_OF_ORDER_ERRORS_SETTING);
|
|
|
- ClusterSettings clusterSettings = new ClusterSettings(settings, setOfSettings);
|
|
|
-
|
|
|
- clusterService = mock(ClusterService.class);
|
|
|
- when(clusterService.getClusterSettings()).thenReturn(clusterSettings);
|
|
|
-
|
|
|
Job.Builder builder = new Job.Builder("sr");
|
|
|
builder.setAnalysisConfig(acBuilder);
|
|
|
builder.setDataDescription(new DataDescription.Builder());
|
|
@@ -76,16 +56,9 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
jobDataCountsPersister = Mockito.mock(JobDataCountsPersister.class);
|
|
|
}
|
|
|
|
|
|
- public void testSettingAcceptablePercentages() throws IOException {
|
|
|
- DataCountsReporter dataCountsReporter = new DataCountsReporter(settings, job, new DataCounts(job.getId()),
|
|
|
- jobDataCountsPersister, clusterService);
|
|
|
- assertEquals(dataCountsReporter.getAcceptablePercentDateParseErrors(), MAX_PERCENT_DATE_PARSE_ERRORS);
|
|
|
- assertEquals(dataCountsReporter.getAcceptablePercentOutOfOrderErrors(), MAX_PERCENT_OUT_OF_ORDER_ERRORS);
|
|
|
- }
|
|
|
-
|
|
|
public void testSimpleConstructor() throws Exception {
|
|
|
DataCountsReporter dataCountsReporter = new DataCountsReporter(settings, job, new DataCounts(job.getId()),
|
|
|
- jobDataCountsPersister, clusterService);
|
|
|
+ jobDataCountsPersister);
|
|
|
DataCounts stats = dataCountsReporter.incrementalStats();
|
|
|
assertNotNull(stats);
|
|
|
assertAllCountFieldsEqualZero(stats);
|
|
@@ -96,7 +69,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
new Date(), new Date(), new Date(), new Date(), new Date());
|
|
|
|
|
|
DataCountsReporter dataCountsReporter =
|
|
|
- new DataCountsReporter(settings, job, counts, jobDataCountsPersister, clusterService);
|
|
|
+ new DataCountsReporter(settings, job, counts, jobDataCountsPersister);
|
|
|
DataCounts stats = dataCountsReporter.incrementalStats();
|
|
|
assertNotNull(stats);
|
|
|
assertAllCountFieldsEqualZero(stats);
|
|
@@ -114,7 +87,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
|
|
|
public void testResetIncrementalCounts() throws Exception {
|
|
|
DataCountsReporter dataCountsReporter = new DataCountsReporter(settings, job, new DataCounts(job.getId()),
|
|
|
- jobDataCountsPersister, clusterService);
|
|
|
+ jobDataCountsPersister);
|
|
|
DataCounts stats = dataCountsReporter.incrementalStats();
|
|
|
assertNotNull(stats);
|
|
|
assertAllCountFieldsEqualZero(stats);
|
|
@@ -167,7 +140,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
|
|
|
public void testReportLatestTimeIncrementalStats() throws IOException {
|
|
|
DataCountsReporter dataCountsReporter = new DataCountsReporter(settings, job, new DataCounts(job.getId()),
|
|
|
- jobDataCountsPersister, clusterService);
|
|
|
+ jobDataCountsPersister);
|
|
|
dataCountsReporter.startNewIncrementalCount();
|
|
|
dataCountsReporter.reportLatestTimeIncrementalStats(5001L);
|
|
|
assertEquals(5001L, dataCountsReporter.incrementalStats().getLatestRecordTimeStamp().getTime());
|
|
@@ -175,7 +148,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
|
|
|
public void testReportRecordsWritten() {
|
|
|
DataCountsReporter dataCountsReporter = new DataCountsReporter(settings, job, new DataCounts(job.getId()),
|
|
|
- jobDataCountsPersister, clusterService);
|
|
|
+ jobDataCountsPersister);
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
|
|
|
dataCountsReporter.reportRecordWritten(5, 2000);
|
|
@@ -199,7 +172,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
}
|
|
|
|
|
|
public void testReportRecordsWritten_Given9999Records() {
|
|
|
- DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter(clusterService);
|
|
|
+ DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter();
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
|
|
|
for (int i = 1; i <= 9999; i++) {
|
|
@@ -216,7 +189,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
}
|
|
|
|
|
|
public void testReportRecordsWritten_Given30000Records() {
|
|
|
- DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter(clusterService);
|
|
|
+ DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter();
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
|
|
|
for (int i = 1; i <= 30001; i++) {
|
|
@@ -233,7 +206,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
}
|
|
|
|
|
|
public void testReportRecordsWritten_Given100_000Records() {
|
|
|
- DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter(clusterService);
|
|
|
+ DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter();
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
|
|
|
for (int i = 1; i <= 100000; i++) {
|
|
@@ -250,7 +223,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
}
|
|
|
|
|
|
public void testReportRecordsWritten_Given1_000_000Records() {
|
|
|
- DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter(clusterService);
|
|
|
+ DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter();
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
|
|
|
for (int i = 1; i <= 1_000_000; i++) {
|
|
@@ -267,7 +240,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
}
|
|
|
|
|
|
public void testReportRecordsWritten_Given2_000_000Records() {
|
|
|
- DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter(clusterService);
|
|
|
+ DummyDataCountsReporter dataCountsReporter = new DummyDataCountsReporter();
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
|
|
|
for (int i = 1; i <= 2_000_000; i++) {
|
|
@@ -286,7 +259,7 @@ public class DataCountsReporterTests extends ESTestCase {
|
|
|
|
|
|
public void testFinishReporting() {
|
|
|
DataCountsReporter dataCountsReporter = new DataCountsReporter(settings, job, new DataCounts(job.getId()),
|
|
|
- jobDataCountsPersister, clusterService);
|
|
|
+ jobDataCountsPersister);
|
|
|
|
|
|
dataCountsReporter.setAnalysedFieldsPerRecord(3);
|
|
|
Date now = new Date();
|