private void printWriteQueries(final SourceDescription source) { if (!source.getWriteQueries().isEmpty()) { writer().println(String.format( "%n%-20s%n%-20s", "Queries that write into this " + source.getType(), "-----------------------------------" )); for (final RunningQuery writeQuery : source.getWriteQueries()) { writer().println(writeQuery.getId().getId() + " : " + writeQuery.getQueryString()); } writer().println("\nFor query topology and execution plan please run: EXPLAIN <QueryId>"); } }
@Override public Table buildTable(final Queries entity) { final Stream<List<String>> rows = entity.getQueries().stream() .map(r -> ImmutableList.of( r.getId().getId(), String.join(",", r.getSinks()), r.getQueryString())); return new Builder() .withColumnHeaders(HEADERS) .withRows(rows) .withFooterLine("For detailed information on a Query run: EXPLAIN <Query ID>;") .build(); } }
@Test public void shouldSerializeCorrectly() throws IOException { final String id = "query-id"; final String serialized = String.format("\"%s\"", id); final EntityQueryId deserialized = objectMapper.readValue(serialized, EntityQueryId.class); assertThat(deserialized.getId(), equalTo(id)); assertThat(objectMapper.writeValueAsString(id), equalTo(serialized)); } }
private void printQueryDescription(final QueryDescription query) { writer().println(String.format("%-20s : %s", "ID", query.getId().getId())); if (query.getStatementText().length() > 0) { writer().println(String.format("%-20s : %s", "SQL", query.getStatementText())); } writer().println(); printSchema(query.getFields(), ""); printQuerySources(query); printQuerySinks(query); printExecutionPlan(query); printTopology(query); printOverriddenProperties(query); }
assertThat(queryDescription.getId().getId(), equalTo("")); assertThat(queryDescription.getExecutionPlan(), equalTo("execution plan")); assertThat(queryDescription.getSources(), equalTo(Collections.singleton("source")));
queryCloseCallback); final QueryDescription queryDescription = QueryDescription.forQueryMetadata(queryMetadata); assertThat(queryDescription.getId().getId(), equalTo("query_id")); assertThat(queryDescription.getSinks(), equalTo(Collections.singleton("fake_sink")));