Class SetOpResultSet

    • Field Detail

      • opType

        private final int opType
      • all

        private final boolean all
      • resultSetNumber

        private final int resultSetNumber
      • leftInputRow

        private ExecRow leftInputRow
      • rightInputRow

        private ExecRow rightInputRow
      • intermediateOrderByColumns

        private final int[] intermediateOrderByColumns
      • intermediateOrderByDirection

        private final int[] intermediateOrderByDirection
      • intermediateOrderByNullsLow

        private final boolean[] intermediateOrderByNullsLow
      • rowsSeenLeft

        private int rowsSeenLeft
      • rowsSeenRight

        private int rowsSeenRight
      • rowsReturned

        private int rowsReturned
    • Constructor Detail

      • SetOpResultSet

        SetOpResultSet​(NoPutResultSet leftSource,
                       NoPutResultSet rightSource,
                       Activation activation,
                       int resultSetNumber,
                       long optimizerEstimatedRowCount,
                       double optimizerEstimatedCost,
                       int opType,
                       boolean all,
                       int intermediateOrderByColumnsSavedObject,
                       int intermediateOrderByDirectionSavedObject,
                       int intermediateOrderByNullsLowSavedObject)
    • Method Detail

      • getCurrentRow

        public ExecRow getCurrentRow()
        Description copied from interface: CursorResultSet
        Returns the current row of the result set. REMIND: eventually, this will only return the current row for result sets that need to return it; either some field in the activation or a parameter in the constructor will be used to signal that this needs to function. This will let us limit the number of live objects we are holding on to.

        Specified by:
        getCurrentRow in interface CursorResultSet
        Returns:
        the last row returned by getNextRow. null if closed.
      • getTimeSpent

        public long getTimeSpent​(int type)
        Return the total amount of time spent in this ResultSet
        Specified by:
        getTimeSpent in interface ResultSet
        Parameters:
        type - CURRENT_RESULTSET_ONLY - time spent only in this ResultSet ENTIRE_RESULTSET_TREE - time spent in this ResultSet and below.
        Returns:
        long The total amount of time spent (in milliseconds).
      • getOpType

        public int getOpType()
        Return the set operation of this SetOpResultSet
        Returns:
        the set operation of this ResultSet, the value is either IntersectOrExceptNode.INTERSECT_OP for Intersect operation or IntersectOrExceptNode.EXCEPT_OP for Except operation
        See Also:
        IntersectOrExceptNode
      • getResultSetNumber

        public int getResultSetNumber()
        Return the result set number
        Returns:
        the result set number
      • getLeftSourceInput

        public NoPutResultSet getLeftSourceInput()
        Return the left source input of this SetOpResultSet
        Returns:
        the left source input of this SetOpResultSet
        See Also:
        NoPutResultSet
      • getRightSourceInput

        public NoPutResultSet getRightSourceInput()
        Return the right source input of this SetOpResultSet
        Returns:
        the right source input of this SetOpResultSet
        See Also:
        NoPutResultSet
      • getRowsSeenLeft

        public int getRowsSeenLeft()
        Return the number of rows seen on the left source input
        Returns:
        the number of rows seen on the left source input
      • getRowsSeenRight

        public int getRowsSeenRight()
        Return the number of rows seen on the right source input
        Returns:
        the number of rows seen on the right source input
      • getRowsReturned

        public int getRowsReturned()
        Return the number of rows returned from the result set
        Returns:
        the number of rows returned from the result set