/** * Determines the {@link UUID} which will be associated with the * {@link IRunningQuery}. If {@link QueryHints#QUERYID} has already been * used by the application to specify the {@link UUID} then that * {@link UUID} is noted. Otherwise, a random {@link UUID} is generated and * assigned to the query by binding it on the query hints. * <p> * Note: The ability to provide metadata from the {@link ASTContainer} in * the {@link StatusServlet} or the "EXPLAIN" page depends on the ability to * cross walk the queryIds as established by this method. * * @param query * The query. * * @param queryUuid * * @return The {@link UUID} which will be associated with the * {@link IRunningQuery} and never <code>null</code>. */ protected UUID setQueryId(final ASTContainer astContainer, UUID queryUuid) { // Figure out the effective UUID under which the query will run. final String queryIdStr = astContainer.getQueryHint(QueryHints.QUERYID); if (queryIdStr == null) { // Not specified, so generate and set on query hint. queryUuid = UUID.randomUUID(); } astContainer.setQueryHint(QueryHints.QUERYID, queryUuid.toString()); return queryUuid; }
assert queryId2 == null; // precondition. final String queryIdStr = astContainer.getQueryHint( QueryHints.QUERYID); if (queryIdStr == null) {
assert queryId2 == null; // precondition. final String queryIdStr = astContainer.getQueryHint( QueryHints.QUERYID); if (queryIdStr == null) {
final String actualIdStr = astContainer.getQueryHint(QueryHints.QUERYID);
final String actualIdStr = astContainer.getQueryHint(QueryHints.QUERYID);
final String actualIdStr = astContainer.getQueryHint(QueryHints.QUERYID);