"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "hsqldb/src/org/hsqldb/QueryExpression.java" between
hsqldb-2.7.0.zip and hsqldb-2.7.1.zip

About: HSQLDB (HyperSQL DataBase) is a SQL relational database engine written in Java. It supports nearly full ANSI-92 SQL (BNF format) and full core SQL:2008.

QueryExpression.java  (hsqldb-2.7.0):QueryExpression.java  (hsqldb-2.7.1)
skipping to change at line 58 skipping to change at line 58
import org.hsqldb.persist.PersistentStore; import org.hsqldb.persist.PersistentStore;
import org.hsqldb.result.Result; import org.hsqldb.result.Result;
import org.hsqldb.result.ResultMetaData; import org.hsqldb.result.ResultMetaData;
import org.hsqldb.types.Type; import org.hsqldb.types.Type;
import org.hsqldb.types.Types; import org.hsqldb.types.Types;
/** /**
* Implementation of an SQL query expression * Implementation of an SQL query expression
* *
* @author Fred Toussi (fredt@users dot sourceforge.net) * @author Fred Toussi (fredt@users dot sourceforge.net)
* @version 2.7.0 * @version 2.7.1
* @since 1.9.0 * @since 1.9.0
*/ */
public class QueryExpression implements RangeGroup { public class QueryExpression implements RangeGroup {
public static final int NOUNION = 0, public static final int NOUNION = 0,
UNION = 1, UNION = 1,
UNION_ALL = 2, UNION_ALL = 2,
INTERSECT = 3, INTERSECT = 3,
INTERSECT_ALL = 4, INTERSECT_ALL = 4,
EXCEPT_ALL = 5, EXCEPT_ALL = 5,
skipping to change at line 670 skipping to change at line 670
} }
navigator.reset(); navigator.reset();
return first; return first;
} }
public void setRecursiveQuerySettings(RecursiveQuerySettings settings) { public void setRecursiveQuerySettings(RecursiveQuerySettings settings) {
OrderedHashSet subqueryList = rightQueryExpression.getSubqueries(); OrderedHashSet subqueryList = rightQueryExpression.getSubqueries();
OrderedHashSet refList = new OrderedHashSet();
if (subqueryList == null) { if (subqueryList == null) {
subqueryList = new OrderedHashSet(); subqueryList = new OrderedHashSet();
} }
for (int i = 0; i < subqueryList.size(); i++) { for (int i = 0; i < subqueryList.size(); i++) {
TableDerived td = (TableDerived) subqueryList.get(i); TableDerived td = (TableDerived) subqueryList.get(i);
if (td.isCorrelated()) { if (td.isCorrelated()) {
continue; continue;
} }
QueryExpression qe = td.queryExpression; QueryExpression qe = td.queryExpression;
if (qe == null) { if (qe == null) {
continue; continue;
} }
refList = qe.collectRangeVariables(refList); OrderedHashSet refList = new OrderedHashSet();
qe.collectObjectNames(refList);
for (int j = 0; j < refList.size(); j++) { for (int j = 0; j < refList.size(); j++) {
RangeVariable range = (RangeVariable) refList.get(j); HsqlName name = (HsqlName) refList.get(j);
if (range.rangeTable == recursiveWorkTable if (name == recursiveWorkTable.tableName
|| range.rangeTable == recursiveResultTable) { || name == recursiveResultTable.tableName) {
materialiseList = materialiseList =
ArrayUtil.toAdjustedArray(materialiseList, td); ArrayUtil.toAdjustedArray(materialiseList, td);
break; break;
} }
} }
} }
recursiveSettings = settings; recursiveSettings = settings;
} }
 End of changes. 5 change blocks. 
6 lines changed or deleted 7 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)