Class StoredRecordHeader.OverflowInfo

java.lang.Object
org.apache.derby.impl.store.raw.data.StoredRecordHeader.OverflowInfo
Enclosing class:
StoredRecordHeader

private static class StoredRecordHeader.OverflowInfo extends Object
Class which holds the fields overflowId, overflowPage and firstField, which are not needed when there is no overflow. These fields are factored out to save Java heap space (see DERBY-3130).
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private int
    If (hasFirstField()) then this field is the number of the column in the orginal row which is now stored as the first field in this row.
    private int
    If (hasOverflow()) then this is the id of the row on page overflowPage where the next portion of the row can be found.
    private long
    If (hasOverflow()) then this is the page where where the next portion of the row can be found.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
    Create an empty OverflowInfo object.
    private
    Create a copy of a OverflowInfo object.
  • Method Summary

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • overflowId

      private int overflowId
      If (hasOverflow()) then this is the id of the row on page overflowPage where the next portion of the row can be found. In this case there are no "real" fields on this page. This situation comes about if a row has been updated such that the real first field no longer fits on the head page.
    • overflowPage

      private long overflowPage
      If (hasOverflow()) then this is the page where where the next portion of the row can be found. In this case there are no "real" fields on this page.
    • firstField

      private int firstField
      If (hasFirstField()) then this field is the number of the column in the orginal row which is now stored as the first field in this row. This row is 2nd through N'th portion of a long row. For example if a row has its first 3 fields on page 0 and its next 3 fields on page 1, then the record header of the row portion on page 1 will have hasFirstField() set to true, and the value would be 4, indicating that the 4th field of the row is stored as the 1st field of the partial row portion stored on page 1.
  • Constructor Details

    • OverflowInfo

      private OverflowInfo()
      Create an empty OverflowInfo object.
    • OverflowInfo

      private OverflowInfo(StoredRecordHeader.OverflowInfo from)
      Create a copy of a OverflowInfo object.