ResultSetInfo rsInfo = contextNode.getResultSetInfo();
// this list of all the source nodes below the context, which are directly ro indirectly
// involved in the criteria
LinkedHashSet resultSets = new LinkedHashSet();
boolean singleParentage = getResultSets(contextNode, rsInfo.getCriteriaResultSets(), resultSets);
Query contextQuery = null;
if (rsInfo.isCriteriaRaised()) {
contextQuery = (Query)QueryUtil.getQueryFromQueryNode(rsInfo.getResultSetName(), planEnv);
String inlineViewName = planEnv.getAliasName(rsInfo.getResultSetName());
updateSymbolMap(symbolMap, rsInfo.getResultSetName(), inlineViewName, planEnv.getGlobalMetadata());
} else {
contextQuery = (Query)rsInfo.getCommand();
}
Query currentQuery = contextQuery;
for (Iterator i = resultSets.iterator(); i.hasNext();) {
MappingSourceNode rsNode = (MappingSourceNode)i.next();
ResultSetInfo childRsInfo = rsNode.getResultSetInfo();
QueryNode planNode = QueryUtil.getQueryNode(childRsInfo.getResultSetName(), planEnv.getGlobalMetadata());