[AMBARI-23685] Rename metric tables to support schema upgrade (dsen) (#1091)
* [AMBARI-23685] Rename metric tables to support schema upgrade (dsen)
* [AMBARI-23685] Rename metric tables to support schema upgrade (dsen)
* [AMBARI-23685] Rename metric tables to support schema upgrade (dsen) - removed whitespaces
* [AMBARI-23685] Rename metric tables to support schema upgrade (dsen) - changed _V2 to _UUID
* [AMBARI-23685] Rename metric tables to support schema upgrade (dsen) - regex change
diff --git a/ambari-metrics-timelineservice/conf/unix/ambari-metrics-collector b/ambari-metrics-timelineservice/conf/unix/ambari-metrics-collector
index 58984a1..ce75742 100644
--- a/ambari-metrics-timelineservice/conf/unix/ambari-metrics-collector
+++ b/ambari-metrics-timelineservice/conf/unix/ambari-metrics-collector
@@ -32,8 +32,8 @@
HBASE_CMD=${HBASE_DIR}/bin/hbase
-METRIC_TABLES=(METRIC_AGGREGATE_DAILY METRIC_AGGREGATE_HOURLY METRIC_AGGREGATE_MINUTE METRIC_AGGREGATE METRIC_RECORD METRIC_RECORD_DAILY METRIC_RECORD_HOURLY METRIC_RECORD_MINUTE)
-METRIC_FIFO_COMPACTION_TABLES=(METRIC_AGGREGATE METRIC_RECORD METRIC_RECORD_MINUTE)
+METRIC_TABLES=(METRIC_AGGREGATE_DAILY_UUID METRIC_AGGREGATE_HOURLY_UUID METRIC_AGGREGATE_MINUTE_UUID METRIC_AGGREGATE_UUID METRIC_RECORD_UUID METRIC_RECORD_DAILY_UUID METRIC_RECORD_HOURLY_UUID METRIC_RECORD_MINUTE_UUID)
+METRIC_FIFO_COMPACTION_TABLES=(METRIC_AGGREGATE_UUID METRIC_RECORD_UUID METRIC_RECORD_MINUTE_UUID)
METRIC_COLLECTOR=ambari-metrics-collector
NORMALIZER_ENABLED_STUB_FILE=/var/run/ambari-metrics-collector/normalizer_enabled
diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/query/PhoenixTransactSQL.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/query/PhoenixTransactSQL.java
index eda6842..f76933a 100644
--- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/query/PhoenixTransactSQL.java
+++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/query/PhoenixTransactSQL.java
@@ -44,7 +44,7 @@
* Create table to store individual metric records.
*/
public static final String CREATE_METRICS_TABLE_SQL = "CREATE TABLE IF NOT " +
- "EXISTS METRIC_RECORD (UUID BINARY(32) NOT NULL, " +
+ "EXISTS METRIC_RECORD_UUID (UUID BINARY(32) NOT NULL, " +
"SERVER_TIME BIGINT NOT NULL, " +
"METRIC_SUM DOUBLE, " +
"METRIC_COUNT UNSIGNED_INT, " +
@@ -140,7 +140,7 @@
//////// METATDATA TABLES ////////
public static final String CREATE_METRICS_METADATA_TABLE_SQL =
- "CREATE TABLE IF NOT EXISTS METRICS_METADATA " +
+ "CREATE TABLE IF NOT EXISTS METRICS_METADATA_UUID " +
"(METRIC_NAME VARCHAR, " +
"APP_ID VARCHAR, " +
"INSTANCE_ID VARCHAR, " +
@@ -154,7 +154,7 @@
"DATA_BLOCK_ENCODING='%s', COMPRESSION='%s'";
public static final String CREATE_HOSTED_APPS_METADATA_TABLE_SQL =
- "CREATE TABLE IF NOT EXISTS HOSTED_APPS_METADATA " +
+ "CREATE TABLE IF NOT EXISTS HOSTED_APPS_METADATA_UUID " +
"(HOSTNAME VARCHAR, UUID BINARY(16), APP_IDS VARCHAR, " +
"CONSTRAINT pk PRIMARY KEY (HOSTNAME))" +
"DATA_BLOCK_ENCODING='%s', COMPRESSION='%s'";
@@ -166,7 +166,7 @@
"DATA_BLOCK_ENCODING='%s', COMPRESSION='%s'";
public static final String ALTER_METRICS_METADATA_TABLE =
- "ALTER TABLE METRICS_METADATA ADD IF NOT EXISTS IS_WHITELISTED BOOLEAN";
+ "ALTER TABLE METRICS_METADATA_UUID ADD IF NOT EXISTS IS_WHITELISTED BOOLEAN";
////////////////////////////////
@@ -253,12 +253,12 @@
"(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
public static final String UPSERT_METADATA_SQL =
- "UPSERT INTO METRICS_METADATA (METRIC_NAME, APP_ID, INSTANCE_ID, UUID, UNITS, TYPE, " +
+ "UPSERT INTO METRICS_METADATA_UUID (METRIC_NAME, APP_ID, INSTANCE_ID, UUID, UNITS, TYPE, " +
"START_TIME, SUPPORTS_AGGREGATION, IS_WHITELISTED) " +
"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)";
public static final String UPSERT_HOSTED_APPS_METADATA_SQL =
- "UPSERT INTO HOSTED_APPS_METADATA (HOSTNAME, UUID, APP_IDS) VALUES (?, ?, ?)";
+ "UPSERT INTO HOSTED_APPS_METADATA_UUID (HOSTNAME, UUID, APP_IDS) VALUES (?, ?, ?)";
public static final String UPSERT_INSTANCE_HOST_METADATA_SQL =
"UPSERT INTO INSTANCE_HOST_METADATA (INSTANCE_ID, HOSTNAME) VALUES (?, ?)";
@@ -364,10 +364,10 @@
public static final String GET_METRIC_METADATA_SQL = "SELECT " +
"METRIC_NAME, APP_ID, INSTANCE_ID, UUID, UNITS, TYPE, START_TIME, " +
- "SUPPORTS_AGGREGATION, IS_WHITELISTED FROM METRICS_METADATA";
+ "SUPPORTS_AGGREGATION, IS_WHITELISTED FROM METRICS_METADATA_UUID";
public static final String GET_HOSTED_APPS_METADATA_SQL = "SELECT " +
- "HOSTNAME, UUID, APP_IDS FROM HOSTED_APPS_METADATA";
+ "HOSTNAME, UUID, APP_IDS FROM HOSTED_APPS_METADATA_UUID";
public static final String GET_INSTANCE_HOST_METADATA_SQL = "SELECT " +
"INSTANCE_ID, HOSTNAME FROM INSTANCE_HOST_METADATA";
@@ -423,26 +423,43 @@
"MAX(METRIC_MAX), MIN(METRIC_MIN) FROM %s WHERE METRIC_NAME LIKE %s AND SERVER_TIME > %s AND " +
"SERVER_TIME <= %s GROUP BY METRIC_NAME, APP_ID, INSTANCE_ID, UNITS";
- public static final String METRICS_RECORD_TABLE_NAME = "METRIC_RECORD";
-
public static final String CONTAINER_METRICS_TABLE_NAME = "CONTAINER_METRICS";
- public static final String METRICS_AGGREGATE_MINUTE_TABLE_NAME =
+ public static final String METRICS_RECORD_V1_TABLE_NAME = "METRIC_RECORD";
+
+ public static final String METRICS_AGGREGATE_MINUTE_V1_TABLE_NAME =
"METRIC_RECORD_MINUTE";
- public static final String METRICS_AGGREGATE_HOURLY_TABLE_NAME =
+ public static final String METRICS_AGGREGATE_HOURLY_V1_TABLE_NAME =
"METRIC_RECORD_HOURLY";
- public static final String METRICS_AGGREGATE_DAILY_TABLE_NAME =
+ public static final String METRICS_AGGREGATE_DAILY_V1_TABLE_NAME =
"METRIC_RECORD_DAILY";
- public static final String METRICS_CLUSTER_AGGREGATE_TABLE_NAME =
+ public static final String METRICS_CLUSTER_AGGREGATE_V1_TABLE_NAME =
"METRIC_AGGREGATE";
- public static final String METRICS_CLUSTER_AGGREGATE_MINUTE_TABLE_NAME =
+ public static final String METRICS_CLUSTER_AGGREGATE_MINUTE_V1_TABLE_NAME =
"METRIC_AGGREGATE_MINUTE";
- public static final String METRICS_CLUSTER_AGGREGATE_HOURLY_TABLE_NAME =
+ public static final String METRICS_CLUSTER_AGGREGATE_HOURLY_V1_TABLE_NAME =
"METRIC_AGGREGATE_HOURLY";
- public static final String METRICS_CLUSTER_AGGREGATE_DAILY_TABLE_NAME =
+ public static final String METRICS_CLUSTER_AGGREGATE_DAILY_V1_TABLE_NAME =
"METRIC_AGGREGATE_DAILY";
- public static final Pattern PHOENIX_TABLES_REGEX_PATTERN = Pattern.compile("METRIC_");
+ public static final String METRICS_RECORD_TABLE_NAME = "METRIC_RECORD_UUID";
+
+ public static final String METRICS_AGGREGATE_MINUTE_TABLE_NAME =
+ "METRIC_RECORD_MINUTE_UUID";
+ public static final String METRICS_AGGREGATE_HOURLY_TABLE_NAME =
+ "METRIC_RECORD_HOURLY_UUID";
+ public static final String METRICS_AGGREGATE_DAILY_TABLE_NAME =
+ "METRIC_RECORD_DAILY_UUID";
+ public static final String METRICS_CLUSTER_AGGREGATE_TABLE_NAME =
+ "METRIC_AGGREGATE_UUID";
+ public static final String METRICS_CLUSTER_AGGREGATE_MINUTE_TABLE_NAME =
+ "METRIC_AGGREGATE_MINUTE_UUID";
+ public static final String METRICS_CLUSTER_AGGREGATE_HOURLY_TABLE_NAME =
+ "METRIC_AGGREGATE_HOURLY_UUID";
+ public static final String METRICS_CLUSTER_AGGREGATE_DAILY_TABLE_NAME =
+ "METRIC_AGGREGATE_DAILY_UUID";
+
+ public static final Pattern PHOENIX_TABLES_REGEX_PATTERN = Pattern.compile("METRIC_.*_UUID");
public static final String[] PHOENIX_TABLES = {
METRICS_RECORD_TABLE_NAME,
diff --git a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/AbstractMiniHBaseClusterTest.java b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/AbstractMiniHBaseClusterTest.java
index d8b7bbf..258054c 100644
--- a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/AbstractMiniHBaseClusterTest.java
+++ b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/AbstractMiniHBaseClusterTest.java
@@ -121,16 +121,16 @@
conn = getConnection(getUrl());
stmt = conn.createStatement();
- deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE");
- deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_MINUTE");
- deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_HOURLY");
- deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_DAILY");
- deleteTableIgnoringExceptions(stmt, "METRIC_RECORD");
- deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_MINUTE");
- deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_HOURLY");
- deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_DAILY");
- deleteTableIgnoringExceptions(stmt, "METRICS_METADATA");
- deleteTableIgnoringExceptions(stmt, "HOSTED_APPS_METADATA");
+ deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_MINUTE_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_HOURLY_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_AGGREGATE_DAILY_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_MINUTE_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_HOURLY_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRIC_RECORD_DAILY_UUID");
+ deleteTableIgnoringExceptions(stmt, "METRICS_METADATA_UUID");
+ deleteTableIgnoringExceptions(stmt, "HOSTED_APPS_METADATA_UUID");
conn.commit();
} catch (Exception e) {
diff --git a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/ITPhoenixHBaseAccessor.java b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/ITPhoenixHBaseAccessor.java
index c3a26c1..65b5a1b 100644
--- a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/ITPhoenixHBaseAccessor.java
+++ b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/ITPhoenixHBaseAccessor.java
@@ -409,7 +409,7 @@
Assert.assertFalse("Normalizer disabled.", normalizerEnabled);
Assert.assertTrue("Durability Set.", tableDurabilitySet);
- Assert.assertEquals("FIFO compaction policy is set for METRIC_RECORD.", FIFO_COMPACTION_POLICY_CLASS, precisionTableCompactionPolicy);
+ Assert.assertEquals("FIFO compaction policy is set for METRIC_RECORD_UUID.", FIFO_COMPACTION_POLICY_CLASS, precisionTableCompactionPolicy);
Assert.assertEquals("FIFO compaction policy is set for aggregate tables", DATE_TIERED_COMPACTION_POLICY, aggregateTableCompactionPolicy);
Assert.assertEquals("Precision TTL value as expected.", 86400, precisionTtl);
@@ -441,7 +441,7 @@
metric.setExitCode(0);
List<ContainerMetric> list = Arrays.asList(metric);
hdb.insertContainerMetrics(list);
- PreparedStatement stmt = conn.prepareStatement("SELECT * FROM CONTAINER_METRICS");
+ PreparedStatement stmt = conn.prepareStatement("SELECT * FROM CONTAINER_METRICS_UUID");
ResultSet set = stmt.executeQuery();
// check each filed is set properly when read back.
boolean foundRecord = false;
diff --git a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/TestPhoenixTransactSQL.java b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/TestPhoenixTransactSQL.java
index cacdbcd..3960751 100644
--- a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/TestPhoenixTransactSQL.java
+++ b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/TestPhoenixTransactSQL.java
@@ -154,7 +154,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_MINUTE_UUID"));
verify(connection, preparedStatement);
}
@@ -183,7 +183,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_UUID"));
Assert.assertEquals(Precision.SECONDS, condition.getPrecision());
verify(connection, preparedStatement);
@@ -201,7 +201,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_MINUTE_UUID"));
Assert.assertEquals(Precision.MINUTES, condition.getPrecision());
verify(connection, preparedStatement);
@@ -219,7 +219,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_HOURLY"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_HOURLY_UUID"));
Assert.assertEquals(Precision.HOURS, condition.getPrecision());
verify(connection, preparedStatement);
@@ -237,7 +237,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_DAILY"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_DAILY_UUID"));
Assert.assertEquals(Precision.DAYS, condition.getPrecision());
verify(connection, preparedStatement);
}
@@ -256,7 +256,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_HOURLY"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_HOURLY_UUID"));
verify(connection, preparedStatement);
}
@@ -274,7 +274,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_MINUTE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_MINUTE_UUID"));
verify(connection, preparedStatement);
}
@@ -301,7 +301,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_UUID"));
Assert.assertEquals(Precision.SECONDS, condition.getPrecision());
verify(connection, preparedStatement);
reset(connection, preparedStatement);
@@ -320,7 +320,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_UUID"));
Assert.assertEquals(Precision.SECONDS, condition.getPrecision());
verify(connection, preparedStatement);
@@ -338,7 +338,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_MINUTE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_MINUTE_UUID"));
Assert.assertEquals(Precision.MINUTES, condition.getPrecision());
verify(connection, preparedStatement);
@@ -355,7 +355,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_HOURLY"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_HOURLY_UUID"));
Assert.assertEquals(Precision.HOURS, condition.getPrecision());
verify(connection, preparedStatement);
@@ -372,7 +372,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_DAILY"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_DAILY_UUID"));
Assert.assertEquals(Precision.DAYS, condition.getPrecision());
verify(connection, preparedStatement);
@@ -398,7 +398,7 @@
replay(connection, preparedStatement, parameterMetaData);
PhoenixTransactSQL.prepareGetLatestMetricSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_UUID"));
Assert.assertTrue(stmt.contains("JOIN"));
verify(connection, preparedStatement, parameterMetaData);
}
@@ -441,7 +441,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_HOURLY"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_HOURLY_UUID"));
verify(connection, preparedStatement);
}
@@ -476,7 +476,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
String stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_UUID"));
verify(connection, preparedStatement);
//Check without passing precision. Should be OK!
@@ -492,7 +492,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_UUID"));
verify(connection, preparedStatement);
//Check with more hosts and lesser metrics for 1 day data = 11520 points Should be OK!
@@ -518,7 +518,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetMetricsSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_MINUTE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_RECORD_MINUTE_UUID"));
verify(connection, preparedStatement);
//Check with 20 metrics, NO hosts and 1 day data = 5760 points. Should be OK!
@@ -540,7 +540,7 @@
replay(connection, preparedStatement);
PhoenixTransactSQL.prepareGetAggregateSqlStmt(connection, condition);
stmt = stmtCapture.getValue();
- Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_MINUTE"));
+ Assert.assertTrue(stmt.contains("FROM METRIC_AGGREGATE_MINUTE_UUID"));
verify(connection, preparedStatement);
//Check with 5 hosts and 10 metrics for 1 hour data = 18000 points. Should throw out Exception!
@@ -584,7 +584,7 @@
String conditionClause = condition.getConditionClause().toString();
String expectedClause = " UUID IN (" +
- "SELECT UUID FROM METRIC_RECORD WHERE " +
+ "SELECT UUID FROM METRIC_RECORD_UUID WHERE " +
"(UUID IN (?, ?)) AND " +
"SERVER_TIME >= ? AND SERVER_TIME < ? " +
"GROUP BY UUID ORDER BY MAX(METRIC_MAX) DESC LIMIT 2) AND SERVER_TIME >= ? AND SERVER_TIME < ?";
@@ -602,7 +602,7 @@
String conditionClause = condition.getConditionClause().toString();
String expectedClause = " UUID IN (" +
- "SELECT UUID FROM METRIC_RECORD WHERE " +
+ "SELECT UUID FROM METRIC_RECORD_UUID WHERE " +
"(UUID IN (?, ?, ?)) AND " +
"SERVER_TIME >= ? AND SERVER_TIME < ? " +
"GROUP BY UUID ORDER BY MAX(METRIC_MAX) DESC LIMIT 2) AND SERVER_TIME >= ? AND SERVER_TIME < ?";
diff --git a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/DownSamplerTest.java b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/DownSamplerTest.java
index f45731d..6f54a38 100644
--- a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/DownSamplerTest.java
+++ b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/DownSamplerTest.java
@@ -68,15 +68,15 @@
Map<String, String> conf = configuration.getValByRegex(DownSamplerUtils.downSamplerConfigPrefix);
TopNDownSampler topNDownSampler = TopNDownSampler.fromConfig(conf);
- List<String> stmts = topNDownSampler.prepareDownSamplingStatement(14000000l, 14100000l, "METRIC_RECORD");
+ List<String> stmts = topNDownSampler.prepareDownSamplingStatement(14000000l, 14100000l, "METRIC_RECORD_UUID");
Assert.assertEquals(stmts.size(),2);
Assert.assertTrue(stmts.contains("SELECT METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, 14100000 AS SERVER_TIME, UNITS, " +
- "MAX(METRIC_MAX), 1, MAX(METRIC_MAX), MAX(METRIC_MAX) FROM METRIC_RECORD WHERE " +
+ "MAX(METRIC_MAX), 1, MAX(METRIC_MAX), MAX(METRIC_MAX) FROM METRIC_RECORD_UUID WHERE " +
"METRIC_NAME LIKE 'pattern1' AND SERVER_TIME > 14000000 AND SERVER_TIME <= 14100000 " +
"GROUP BY METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, UNITS ORDER BY MAX(METRIC_MAX) DESC LIMIT 3"));
Assert.assertTrue(stmts.contains("SELECT METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, 14100000 AS SERVER_TIME, UNITS, " +
- "MAX(METRIC_MAX), 1, MAX(METRIC_MAX), MAX(METRIC_MAX) FROM METRIC_RECORD WHERE " +
+ "MAX(METRIC_MAX), 1, MAX(METRIC_MAX), MAX(METRIC_MAX) FROM METRIC_RECORD_UUID WHERE " +
"METRIC_NAME LIKE 'pattern2' AND SERVER_TIME > 14000000 AND SERVER_TIME <= 14100000 " +
"GROUP BY METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, UNITS ORDER BY MAX(METRIC_MAX) DESC LIMIT 3"));
@@ -86,11 +86,11 @@
configuration.setIfUnset("timeline.metrics.downsampler.topn.function", "sum");
conf = configuration.getValByRegex(DownSamplerUtils.downSamplerConfigPrefix);
topNDownSampler = TopNDownSampler.fromConfig(conf);
- stmts = topNDownSampler.prepareDownSamplingStatement(14000000l, 14100000l, "METRIC_AGGREGATE_MINUTE");
+ stmts = topNDownSampler.prepareDownSamplingStatement(14000000l, 14100000l, "METRIC_AGGREGATE_MINUTE_UUID");
Assert.assertEquals(stmts.size(),1);
Assert.assertTrue(stmts.contains("SELECT METRIC_NAME, APP_ID, INSTANCE_ID, 14100000 AS SERVER_TIME, UNITS, " +
- "SUM(METRIC_SUM), 1, SUM(METRIC_SUM), SUM(METRIC_SUM) FROM METRIC_AGGREGATE_MINUTE WHERE " +
+ "SUM(METRIC_SUM), 1, SUM(METRIC_SUM), SUM(METRIC_SUM) FROM METRIC_AGGREGATE_MINUTE_UUID WHERE " +
"METRIC_NAME LIKE 'pattern1' AND SERVER_TIME > 14000000 AND SERVER_TIME <= 14100000 " +
"GROUP BY METRIC_NAME, APP_ID, INSTANCE_ID, UNITS ORDER BY SUM(METRIC_SUM) DESC LIMIT 4"));
}
@@ -103,15 +103,15 @@
Map<String, String> conf = configuration.getValByRegex(DownSamplerUtils.downSamplerConfigPrefix);
EventMetricDownSampler eventMetricDownSampler = EventMetricDownSampler.fromConfig(conf);
- List<String> stmts = eventMetricDownSampler.prepareDownSamplingStatement(14000000l, 14100000l, "METRIC_RECORD");
+ List<String> stmts = eventMetricDownSampler.prepareDownSamplingStatement(14000000l, 14100000l, "METRIC_RECORD_UUID");
Assert.assertEquals(stmts.size(),2);
Assert.assertTrue(stmts.get(0).equals("SELECT METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, 14100000 AS SERVER_TIME, " +
- "UNITS, SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN) FROM METRIC_RECORD WHERE METRIC_NAME " +
+ "UNITS, SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN) FROM METRIC_RECORD_UUID WHERE METRIC_NAME " +
"LIKE 'pattern1' AND SERVER_TIME > 14000000 AND SERVER_TIME <= 14100000 GROUP BY METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, UNITS"));
Assert.assertTrue(stmts.get(1).equals("SELECT METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, 14100000 AS SERVER_TIME, " +
- "UNITS, SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN) FROM METRIC_RECORD WHERE METRIC_NAME " +
+ "UNITS, SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN) FROM METRIC_RECORD_UUID WHERE METRIC_NAME " +
"LIKE 'pattern2' AND SERVER_TIME > 14000000 AND SERVER_TIME <= 14100000 GROUP BY METRIC_NAME, HOSTNAME, APP_ID, INSTANCE_ID, UNITS"));
}
}
diff --git a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/ITClusterAggregator.java b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/ITClusterAggregator.java
index aac70ab..1a7d432 100644
--- a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/ITClusterAggregator.java
+++ b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/ITClusterAggregator.java
@@ -291,7 +291,7 @@
agg.doWork(startTime, ctime + hour + 1000);
// THEN
- ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_DAILY");
+ ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_DAILY_UUID");
int count = 0;
while (rs.next()) {
TimelineMetric metric = metadataManager.getMetricFromUuid(rs.getBytes("UUID"));
@@ -353,7 +353,7 @@
hdb.saveClusterAggregateRecords(records);
agg.doWork(oldCtime, ctime + second);
- ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_MINUTE");
+ ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_MINUTE_UUID");
int count = 0;
long diff = 0 ;
while (rs.next()) {
@@ -412,7 +412,7 @@
agg.doWork(startTime, ctime + minute);
// THEN
- ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_HOURLY");
+ ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_HOURLY_UUID");
int count = 0;
while (rs.next()) {
TimelineMetric metric = metadataManager.getMetricFromUuid(rs.getBytes("UUID"));
@@ -471,7 +471,7 @@
agg.doWork(startTime, ctime + minute);
// THEN
- ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_HOURLY");
+ ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_HOURLY_UUID");
int count = 0;
while (rs.next()) {
TimelineMetric metric = metadataManager.getMetricFromUuid(rs.getBytes("UUID"));
@@ -681,7 +681,7 @@
agg.doWork(startTime, ctime + minute);
// THEN
- ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_HOURLY");
+ ResultSet rs = executeQuery("SELECT * FROM METRIC_AGGREGATE_HOURLY_UUID");
int count = 0;
while (rs.next()) {
TimelineMetric metric = metadataManager.getMetricFromUuid(rs.getBytes("UUID"));