Search in sources :

Example 11 with Metric

use of org.apache.hadoop.hive.ql.parse.repl.metric.event.Metric in project hive by apache.

the class TestScheduledReplicationScenarios method checkMetrics.

private void checkMetrics(List<ReplicationMetric> expectedReplicationMetrics, List<ReplicationMetric> actualMetrics) {
    Assert.assertEquals(expectedReplicationMetrics.size(), actualMetrics.size());
    int metricCounter = 0;
    for (ReplicationMetric actualMetric : actualMetrics) {
        for (ReplicationMetric expecMetric : expectedReplicationMetrics) {
            if (actualMetric.getPolicy().equalsIgnoreCase(expecMetric.getPolicy())) {
                Assert.assertEquals(expecMetric.getDumpExecutionId(), actualMetric.getDumpExecutionId());
                Assert.assertEquals(expecMetric.getMetadata().getDbName(), actualMetric.getMetadata().getDbName());
                Assert.assertEquals(expecMetric.getMetadata().getLastReplId(), actualMetric.getMetadata().getLastReplId());
                Assert.assertEquals(expecMetric.getMetadata().getStagingDir(), actualMetric.getMetadata().getStagingDir());
                Assert.assertEquals(expecMetric.getMetadata().getReplicationType(), actualMetric.getMetadata().getReplicationType());
                Assert.assertEquals(expecMetric.getProgress().getStatus(), actualMetric.getProgress().getStatus());
                Assert.assertEquals(expecMetric.getProgress().getStages().size(), actualMetric.getProgress().getStages().size());
                List<Stage> expectedStages = expecMetric.getProgress().getStages();
                List<Stage> actualStages = actualMetric.getProgress().getStages();
                int counter = 0;
                for (Stage actualStage : actualStages) {
                    for (Stage expeStage : expectedStages) {
                        if (actualStage.getName().equalsIgnoreCase(expeStage.getName())) {
                            Assert.assertEquals(expeStage.getStatus(), actualStage.getStatus());
                            Assert.assertEquals(expeStage.getMetrics().size(), actualStage.getMetrics().size());
                            for (Metric actMetric : actualStage.getMetrics()) {
                                for (Metric expMetric : expeStage.getMetrics()) {
                                    if (actMetric.getName().equalsIgnoreCase(expMetric.getName())) {
                                        Assert.assertEquals(expMetric.getTotalCount(), actMetric.getTotalCount());
                                        Assert.assertEquals(expMetric.getCurrentCount(), actMetric.getCurrentCount());
                                    }
                                }
                            }
                            counter++;
                            if (counter == actualStages.size()) {
                                break;
                            }
                        }
                    }
                }
                metricCounter++;
                if (metricCounter == actualMetrics.size()) {
                    break;
                }
            }
        }
    }
}
Also used : Stage(org.apache.hadoop.hive.ql.parse.repl.metric.event.Stage) Metric(org.apache.hadoop.hive.ql.parse.repl.metric.event.Metric) ReplicationMetric(org.apache.hadoop.hive.ql.parse.repl.metric.event.ReplicationMetric) ReplicationMetric(org.apache.hadoop.hive.ql.parse.repl.metric.event.ReplicationMetric)

Example 12 with Metric

use of org.apache.hadoop.hive.ql.parse.repl.metric.event.Metric in project hive by apache.

the class TestScheduledReplicationScenarios method generateDumpStages.

private List<Stage> generateDumpStages(boolean isBootstrap) {
    List<Stage> stages = new ArrayList<>();
    // Ranger
    Stage rangerDump = new Stage("RANGER_DUMP", Status.SUCCESS, 0);
    Metric rangerMetric = new Metric(ReplUtils.MetricName.POLICIES.name(), 0);
    rangerDump.addMetric(rangerMetric);
    stages.add(rangerDump);
    // Atlas
    Stage atlasDump = new Stage("ATLAS_DUMP", Status.SUCCESS, 0);
    Metric atlasMetric = new Metric(ReplUtils.MetricName.ENTITIES.name(), 0);
    atlasDump.addMetric(atlasMetric);
    stages.add(atlasDump);
    // Hive
    Stage replDump = new Stage("REPL_DUMP", Status.SUCCESS, 0);
    if (isBootstrap) {
        Metric hiveMetric = new Metric(ReplUtils.MetricName.TABLES.name(), 1);
        hiveMetric.setCurrentCount(1);
        replDump.addMetric(hiveMetric);
        hiveMetric = new Metric(ReplUtils.MetricName.FUNCTIONS.name(), 0);
        replDump.addMetric(hiveMetric);
    } else {
        Metric hiveMetric = new Metric(ReplUtils.MetricName.EVENTS.name(), 1);
        hiveMetric.setCurrentCount(1);
        replDump.addMetric(hiveMetric);
    }
    stages.add(replDump);
    return stages;
}
Also used : ArrayList(java.util.ArrayList) Stage(org.apache.hadoop.hive.ql.parse.repl.metric.event.Stage) Metric(org.apache.hadoop.hive.ql.parse.repl.metric.event.Metric) ReplicationMetric(org.apache.hadoop.hive.ql.parse.repl.metric.event.ReplicationMetric)

Aggregations

Metric (org.apache.hadoop.hive.ql.parse.repl.metric.event.Metric)12 ReplicationMetric (org.apache.hadoop.hive.ql.parse.repl.metric.event.ReplicationMetric)12 Stage (org.apache.hadoop.hive.ql.parse.repl.metric.event.Stage)12 Progress (org.apache.hadoop.hive.ql.parse.repl.metric.event.Progress)9 Metadata (org.apache.hadoop.hive.ql.parse.repl.metric.event.Metadata)7 HashMap (java.util.HashMap)6 ReplStatsTracker (org.apache.hadoop.hive.ql.exec.repl.ReplStatsTracker)6 SnapshotUtils (org.apache.hadoop.hive.ql.exec.repl.util.SnapshotUtils)6 Test (org.junit.Test)6 IncrementalDumpMetricCollector (org.apache.hadoop.hive.ql.parse.repl.dump.metric.IncrementalDumpMetricCollector)3 ArrayList (java.util.ArrayList)2 Map (java.util.Map)2 BootstrapDumpMetricCollector (org.apache.hadoop.hive.ql.parse.repl.dump.metric.BootstrapDumpMetricCollector)2 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 GetReplicationMetricsRequest (org.apache.hadoop.hive.metastore.api.GetReplicationMetricsRequest)1 ReplicationMetricList (org.apache.hadoop.hive.metastore.api.ReplicationMetricList)1 ReplicationMetrics (org.apache.hadoop.hive.metastore.api.ReplicationMetrics)1 BootstrapLoadMetricCollector (org.apache.hadoop.hive.ql.parse.repl.load.metric.BootstrapLoadMetricCollector)1 IncrementalLoadMetricCollector (org.apache.hadoop.hive.ql.parse.repl.load.metric.IncrementalLoadMetricCollector)1 ProgressMapper (org.apache.hadoop.hive.ql.parse.repl.metric.event.ProgressMapper)1