@Test public void testGetMetricsTableHandlesNotRegisteredMetrics() { OperatorProfile op = OperatorProfile .newBuilder().addMetric( UserBitShared.MetricValue.newBuilder() .setMetricId(1) .setDoubleValue(200)) .addMetric( UserBitShared.MetricValue.newBuilder() .setMetricId(3) .setDoubleValue(21)) .setOperatorId(UserBitShared.CoreOperatorType.PARQUET_ROW_GROUP_SCAN.getNumber()) .build(); ImmutablePair<OperatorProfile, Integer> pair = new ImmutablePair<>(op, 1); OperatorWrapper ow = new OperatorWrapper(1, ImmutableList.of(pair), OperatorMetricRegistry.getCoreOperatorTypeMetricsMap()); String html = ow.getMetricsTable(); Pattern columnPattern = Pattern.compile("<td>.*?</td>"); Matcher matcher = columnPattern.matcher(html); int count = 0; while (matcher.find()){ count++; } // Unregistered metrics should not appear on profiles screen assertEquals(2, count); }
break; case 8: builder.addMetric(input.mergeObject(com.dremio.exec.proto.UserBitShared.MetricValue.newBuilder(), com.dremio.exec.proto.SchemaUserBitShared.MetricValue.MERGE));
public Builder toBuilder() { return newBuilder(this); }
public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder(com.dremio.exec.proto.UserBitShared.MetricValue prototype) {
@Override public void apply(int key, double value) { builder.addMetric(MetricValue.newBuilder().setMetricId(key).setDoubleValue(value)); }
@Override public void apply(int key, long value) { builder.addMetric(MetricValue.newBuilder().setMetricId(key).setLongValue(value)); }
public static Builder newBuilder(com.dremio.exec.proto.UserBitShared.MetricValue prototype) { return newBuilder().mergeFrom(prototype); } public Builder toBuilder() { return newBuilder(this); }
public com.dremio.exec.proto.UserBitShared.MetricValue.Builder newMessage() { return com.dremio.exec.proto.UserBitShared.MetricValue.newBuilder(); } public java.lang.String getFieldName(int number)