Class IndexRow

    • Field Detail

      • orderedNulls

        private boolean[] orderedNulls
    • Constructor Detail

      • IndexRow

        IndexRow​(int ncols)
    • Method Detail

      • orderedNulls

        public void orderedNulls​(int columnPosition)
        Description copied from interface: ExecIndexRow
        These two methods are a sort of a hack. The store implements ordered null semantics for start and stop positioning, which is correct for IS NULL and incorrect for everything else. To work around this, TableScanResultSet will check whether the start and stop positions have NULL in any column position other than for an IS NULL check. If so, it won't do the scan (that is, it will return no rows). This method is to inform this ExecIndexRow (which can be used for start and stop positioning) that the given column uses ordered null semantics.
        Specified by:
        orderedNulls in interface ExecIndexRow
        Parameters:
        columnPosition - The position of the column that uses ordered null semantics (zero-based).
      • areNullsOrdered

        public boolean areNullsOrdered​(int columnPosition)
        Description copied from interface: ExecIndexRow
        Return true if orderedNulls was called on this ExecIndexRow for the given column position.
        Specified by:
        areNullsOrdered in interface ExecIndexRow
        Parameters:
        columnPosition - The position of the column (zero-based) for which we want to check if ordered null semantics are used.
        Returns:
        true if we are to use ordered null semantics on the given column