You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by fu...@apache.org on 2006/08/02 08:28:47 UTC
svn commit: r427911 - in /db/derby/code/trunk/java:
engine/org/apache/derby/impl/sql/execute/rts/
testing/org/apache/derbyTesting/functionTests/master/
testing/org/apache/derbyTesting/functionTests/tests/lang/
Author: fuzzylogic
Date: Tue Aug 1 23:28:46 2006
New Revision: 427911
URL: http://svn.apache.org/viewvc?rev=427911&view=rev
Log:
DERBY-939: Add missed files from checkin of derby939trunkdiffpatch2.txt
Added:
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/rts/RealSetOpResultSetStatistics.java (with props)
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/setOpPlan.out (with props)
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/lang/setOpPlan.sql (with props)
Added: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/rts/RealSetOpResultSetStatistics.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/rts/RealSetOpResultSetStatistics.java?rev=427911&view=auto
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/rts/RealSetOpResultSetStatistics.java (added)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/rts/RealSetOpResultSetStatistics.java Tue Aug 1 23:28:46 2006
@@ -0,0 +1,208 @@
+/*
+
+ Derby - Class org.apache.derby.impl.sql.execute.rts.RealSetOpResultSetStatistics
+
+ Copyright 2006 The Apache Software Foundation or its licensors, as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ */
+
+package org.apache.derby.impl.sql.execute.rts;
+
+import org.apache.derby.iapi.services.i18n.MessageService;
+import org.apache.derby.iapi.reference.SQLState;
+
+import org.apache.derby.impl.sql.compile.IntersectOrExceptNode;
+
+/**
+ ResultSetStatistics implementation for SetOpResultSet.
+
+ @author yip
+
+*/
+public class RealSetOpResultSetStatistics
+ extends RealNoPutResultSetStatistics
+{
+
+ /* Leave these fields public for object inspectors */
+ public int opType;
+ public int rowsSeenLeft;
+ public int rowsSeenRight;
+ public int rowsReturned;
+ public ResultSetStatistics leftResultSetStatistics;
+ public ResultSetStatistics rightResultSetStatistics;
+
+ // CONSTRUCTORS
+
+ /**
+ * Constructs a new <code>RealSetOpResultSetStatistics</code> object
+ * to represent the runtime statistics for <code>SetOpResultSet</code>.
+ *
+ * @param opType set operation type
+ * @param numOpens number of open
+ * @param rowsSeen rows seen
+ * @param rowsFiltered rows filtered
+ * @param constructorTime the time for construction
+ * @param openTime the time for open operation
+ * @param nextTime the time for next operation
+ * @param closeTime the time for close operation
+ * @param resultSetNumber the result set number
+ * @param rowsSeenLeft rows seen by left source input
+ * @param rowsSeenRight rows seen by right source input
+ * @param rowsReturned rows returned
+ * @param optimizerEstimatedRowCount optimizer estimated row count
+ * @param optimizerEstimatedCost optimizer estimated cost
+ * @param leftResultSetStatistics left source runtime statistics
+ * @param rightResultSetStatistics right source runtime statistics
+ *
+ * @see org.apache.derby.impl.sql.execute.SetOpResultSet
+ */
+ public RealSetOpResultSetStatistics(
+ int opType,
+ int numOpens,
+ int rowsSeen,
+ int rowsFiltered,
+ long constructorTime,
+ long openTime,
+ long nextTime,
+ long closeTime,
+ int resultSetNumber,
+ int rowsSeenLeft,
+ int rowsSeenRight,
+ int rowsReturned,
+ double optimizerEstimatedRowCount,
+ double optimizerEstimatedCost,
+ ResultSetStatistics leftResultSetStatistics,
+ ResultSetStatistics rightResultSetStatistics
+ )
+ {
+ super(
+ numOpens,
+ rowsSeen,
+ rowsFiltered,
+ constructorTime,
+ openTime,
+ nextTime,
+ closeTime,
+ resultSetNumber,
+ optimizerEstimatedRowCount,
+ optimizerEstimatedCost
+ );
+
+ this.opType = opType;
+ this.rowsSeenLeft = rowsSeenLeft;
+ this.rowsSeenRight = rowsSeenRight;
+ this.rowsReturned = rowsReturned;
+ this.leftResultSetStatistics = leftResultSetStatistics;
+ this.rightResultSetStatistics = rightResultSetStatistics;
+ }
+
+ // ResultSetStatistics methods
+
+ /**
+ * Return the statement execution plan as a <code>String</code>.
+ *
+ * @param depth Indentation level.
+ *
+ * @return the statement execution plan as a <code>String</code>.
+ */
+ public String getStatementExecutionPlanText(int depth) {
+ initFormatInfo(depth);
+
+ String rs = (opType == IntersectOrExceptNode.INTERSECT_OP)
+ ? (SQLState.RTS_INTERSECT_RS) : (SQLState.RTS_EXCEPT_RS);
+
+ return
+ indent + MessageService.getTextMessage(rs) +
+ ":\n" +
+ indent + MessageService.getTextMessage(SQLState.RTS_NUM_OPENS) +
+ " = " + numOpens + "\n" +
+ indent + MessageService.getTextMessage(
+ SQLState.RTS_ROWS_SEEN_LEFT) +
+ " = " + rowsSeenLeft + "\n" +
+ indent + MessageService.getTextMessage(
+ SQLState.RTS_ROWS_SEEN_RIGHT) +
+ " = " + rowsSeenRight + "\n" +
+ indent + MessageService.getTextMessage(
+ SQLState.RTS_ROWS_RETURNED) +
+ " = " + rowsReturned + "\n" +
+ dumpTimeStats(indent, subIndent) + "\n" +
+ dumpEstimatedCosts(subIndent) + "\n" +
+ indent + MessageService.getTextMessage(SQLState.RTS_LEFT_RS) +
+ ":\n" +
+ leftResultSetStatistics.getStatementExecutionPlanText(sourceDepth) +
+ "\n" +
+ indent + MessageService.getTextMessage(SQLState.RTS_RIGHT_RS) +
+ ":\n" +
+ rightResultSetStatistics.getStatementExecutionPlanText(
+ sourceDepth) +
+ "\n";
+ }
+
+ /**
+ * Return information on the scan nodes from the statement execution
+ * plan as a <code>String</code>.
+ *
+ * @param depth Indentation level.
+ * @param tableName if not NULL then print information for this table only
+ *
+ * @return String The information on the scan nodes from the
+ * statement execution plan as a <code>String</code>.
+ */
+ public String getScanStatisticsText(String tableName, int depth) {
+ return leftResultSetStatistics.getScanStatisticsText(tableName, depth)
+ + rightResultSetStatistics.getScanStatisticsText(tableName, depth);
+ }
+
+ // Class implementation
+
+ /**
+ * Return the runtime statistics of this object in textual representation
+ *
+ * @return the runtime statistics of this object in textual representation
+ * as a <code>String</code>.
+ */
+ public String toString() {
+ return getStatementExecutionPlanText(0);
+ }
+
+ /**
+ * Retrieves the children runtime statistics of this <code>
+ * RealSetOpResultSetStatistics</code> object
+ *
+ * @return the children runtime statistics of this <code>
+ * RealSetOpResultSetStatistics</code> object stored in a <code>
+ * Vector</code>.
+ *
+ */
+ public java.util.Vector getChildren() {
+ java.util.Vector children = new java.util.Vector();
+ children.addElement(leftResultSetStatistics);
+ children.addElement(rightResultSetStatistics);
+ return children;
+ }
+
+ /**
+ * Format for display, a name for this node.
+ *
+ * @return the name of the node as a <code>String</code>.
+ */
+ public String getNodeName() {
+ String nodeName =
+ (opType == IntersectOrExceptNode.INTERSECT_OP)
+ ? (SQLState.RTS_INTERSECT) : (SQLState.RTS_EXCEPT);
+
+ return MessageService.getTextMessage(nodeName);
+ }
+}
Propchange: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/execute/rts/RealSetOpResultSetStatistics.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/setOpPlan.out
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/setOpPlan.out?rev=427911&view=auto
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/setOpPlan.out (added)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/setOpPlan.out Tue Aug 1 23:28:46 2006
@@ -0,0 +1,454 @@
+ij> -- DERBY-939
+-- Test union and intersect/except with runtime statistics enabled.
+CREATE TABLE t1 (i int);
+0 rows inserted/updated/deleted
+ij> CREATE TABLE t2 (j int);
+0 rows inserted/updated/deleted
+ij> CREATE TABLE t3 (k int);
+0 rows inserted/updated/deleted
+ij> INSERT INTO t1 VALUES 3,2,1;
+3 rows inserted/updated/deleted
+ij> INSERT INTO t2 VALUES 1,2,3,4;
+4 rows inserted/updated/deleted
+ij> INSERT INTO t3 VALUES 5,2,3,4,1;
+5 rows inserted/updated/deleted
+ij> CALL SYSCS_UTIL.SYSCS_SET_RUNTIMESTATISTICS(1);
+0 rows inserted/updated/deleted
+ij> MaximumDisplayWidth 7000;
+ij> SELECT i FROM t1 UNION SELECT j FROM t2 INTERSECT SELECT k FROM t3;
+1
+-----------
+1
+2
+3
+4
+ij> VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
+1
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------
+Statement Name:
+ null
+Statement Text:
+ SELECT i FROM t1 UNION SELECT j FROM t2 INTERSECT SELECT k FROM t3
+Parse Time: 0
+Bind Time: 0
+Optimize Time: 0
+Generate Time: 0
+Compile Time: 0
+Execute Time: 0
+Begin Compilation Timestamp : null
+End Compilation Timestamp : null
+Begin Execution Timestamp : null
+End Execution Timestamp : null
+Statement Execution Plan Text:
+Sort ResultSet:
+Number of opens = 1
+Rows input = 7
+Rows returned = 4
+Eliminate duplicates = true
+In sorted order = false
+Sort information:
+ Number of rows input=7
+ Number of rows output=4
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+Source result set:
+ Union ResultSet:
+ Number of opens = 1
+ Rows seen from the left = 3
+ Rows seen from the right = 4
+ Rows returned = 7
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Left result set:
+ Table Scan ResultSet for T1 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 3
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=3
+ Number of rows visited=3
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ Right result set:
+ Intersect ResultSet:
+ Number of opens = 1
+ Rows seen from the left = 4
+ Rows seen from the right = 4
+ Rows returned = 4
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Left result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 4
+ Rows returned = 4
+ Eliminate duplicates = false
+ In sorted order = false
+ Sort information:
+ Number of rows input=4
+ Number of rows output=4
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Table Scan ResultSet for T2 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 4
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=4
+ Number of rows visited=4
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ Right result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 5
+ Rows returned = 4
+ Eliminate duplicates = false
+ In sorted order = false
+ Sort information:
+ Number of rows input=5
+ Number of rows output=5
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Table Scan ResultSet for T3 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 5
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=5
+ Number of rows visited=5
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ij> SELECT i FROM t1 UNION SELECT j FROM t2 EXCEPT SELECT k FROM t3;
+1
+-----------
+ij> VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
+1
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------
+Statement Name:
+ null
+Statement Text:
+ SELECT i FROM t1 UNION SELECT j FROM t2 EXCEPT SELECT k FROM t3
+Parse Time: 0
+Bind Time: 0
+Optimize Time: 0
+Generate Time: 0
+Compile Time: 0
+Execute Time: 0
+Begin Compilation Timestamp : null
+End Compilation Timestamp : null
+Begin Execution Timestamp : null
+End Execution Timestamp : null
+Statement Execution Plan Text:
+Except ResultSet:
+Number of opens = 1
+Rows seen from the left = 4
+Rows seen from the right = 4
+Rows returned = 0
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+Left result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 7
+ Rows returned = 4
+ Eliminate duplicates = true
+ In sorted order = false
+ Sort information:
+ Number of rows input=7
+ Number of rows output=4
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Union ResultSet:
+ Number of opens = 1
+ Rows seen from the left = 3
+ Rows seen from the right = 4
+ Rows returned = 7
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Left result set:
+ Table Scan ResultSet for T1 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 3
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=3
+ Number of rows visited=3
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ Right result set:
+ Table Scan ResultSet for T2 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 4
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=4
+ Number of rows visited=4
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+Right result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 5
+ Rows returned = 4
+ Eliminate duplicates = false
+ In sorted order = false
+ Sort information:
+ Number of rows input=5
+ Number of rows output=5
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Table Scan ResultSet for T3 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 5
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=5
+ Number of rows visited=5
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ij> SELECT i FROM t1 INTERSECT SELECT j FROM t2 EXCEPT SELECT k FROM t3;
+1
+-----------
+ij> VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
+1
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------
+Statement Name:
+ null
+Statement Text:
+ SELECT i FROM t1 INTERSECT SELECT j FROM t2 EXCEPT SELECT k FROM t3
+Parse Time: 0
+Bind Time: 0
+Optimize Time: 0
+Generate Time: 0
+Compile Time: 0
+Execute Time: 0
+Begin Compilation Timestamp : null
+End Compilation Timestamp : null
+Begin Execution Timestamp : null
+End Execution Timestamp : null
+Statement Execution Plan Text:
+Except ResultSet:
+Number of opens = 1
+Rows seen from the left = 3
+Rows seen from the right = 3
+Rows returned = 0
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+Left result set:
+ Intersect ResultSet:
+ Number of opens = 1
+ Rows seen from the left = 3
+ Rows seen from the right = 3
+ Rows returned = 3
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Left result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 3
+ Rows returned = 3
+ Eliminate duplicates = false
+ In sorted order = false
+ Sort information:
+ Number of rows input=3
+ Number of rows output=3
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Table Scan ResultSet for T1 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 3
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=3
+ Number of rows visited=3
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ Right result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 4
+ Rows returned = 3
+ Eliminate duplicates = false
+ In sorted order = false
+ Sort information:
+ Number of rows input=4
+ Number of rows output=4
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Table Scan ResultSet for T2 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 4
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=4
+ Number of rows visited=4
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+Right result set:
+ Sort ResultSet:
+ Number of opens = 1
+ Rows input = 5
+ Rows returned = 3
+ Eliminate duplicates = false
+ In sorted order = false
+ Sort information:
+ Number of rows input=5
+ Number of rows output=5
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ Source result set:
+ Table Scan ResultSet for T3 at read committed isolation level using instantaneous share row locking chosen by the optimizer
+ Number of opens = 1
+ Rows seen = 5
+ Rows filtered = 0
+ Fetch Size = 16
+ constructor time (milliseconds) = 0
+ open time (milliseconds) = 0
+ next time (milliseconds) = 0
+ close time (milliseconds) = 0
+ next time in milliseconds/row = 0
+ scan information:
+ Bit set of columns fetched=All
+ Number of columns fetched=1
+ Number of pages visited=1
+ Number of rows qualified=5
+ Number of rows visited=5
+ Scan type=heap
+ start position:
+null stop position:
+null qualifiers:
+None
+ij> CALL SYSCS_UTIL.SYSCS_SET_RUNTIMESTATISTICS(0);
+0 rows inserted/updated/deleted
+ij>
Propchange: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/setOpPlan.out
------------------------------------------------------------------------------
svn:eol-style = native
Added: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/lang/setOpPlan.sql
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/lang/setOpPlan.sql?rev=427911&view=auto
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/lang/setOpPlan.sql (added)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/lang/setOpPlan.sql Tue Aug 1 23:28:46 2006
@@ -0,0 +1,21 @@
+-- DERBY-939
+-- Test union and intersect/except with runtime statistics enabled.
+CREATE TABLE t1 (i int);
+CREATE TABLE t2 (j int);
+CREATE TABLE t3 (k int);
+INSERT INTO t1 VALUES 3,2,1;
+INSERT INTO t2 VALUES 1,2,3,4;
+INSERT INTO t3 VALUES 5,2,3,4,1;
+CALL SYSCS_UTIL.SYSCS_SET_RUNTIMESTATISTICS(1);
+MaximumDisplayWidth 7000;
+
+SELECT i FROM t1 UNION SELECT j FROM t2 INTERSECT SELECT k FROM t3;
+VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
+
+SELECT i FROM t1 UNION SELECT j FROM t2 EXCEPT SELECT k FROM t3;
+VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
+
+SELECT i FROM t1 INTERSECT SELECT j FROM t2 EXCEPT SELECT k FROM t3;
+VALUES SYSCS_UTIL.SYSCS_GET_RUNTIMESTATISTICS();
+
+CALL SYSCS_UTIL.SYSCS_SET_RUNTIMESTATISTICS(0);
Propchange: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/lang/setOpPlan.sql
------------------------------------------------------------------------------
svn:eol-style = native