/**
   * restore the before image of the page
   *
   * @exception StandardException Standard Derby Error Policy
   * @exception IOException problem reading the complete log record from the input stream
   */
  public void restoreMe(
      Transaction xact, BasePage undoPage, LogInstant CLRInstant, LimitObjectInput in)
      throws StandardException, IOException {
    int slot = undoPage.findRecordById(recordId, Page.FIRST_SLOT_NUMBER);
    if (SanityManager.DEBUG) {
      if (!getPageId().equals(undoPage.getPageId()))
        SanityManager.THROWASSERT(
            "restoreMe cannot restore to a different page. "
                + "doMe page:"
                + getPageId()
                + " undoPage:"
                + undoPage.getPageId());
      if (slot != doMeSlot)
        SanityManager.THROWASSERT(
            "restoreMe cannot restore to a different slot. "
                + "doMe slot:"
                + doMeSlot
                + " undoMe slot: "
                + slot
                + " recordId:"
                + recordId);
    }

    undoPage.skipField(in); // skip the after image of the column
    undoPage.storeField(CLRInstant, slot, fieldId, in);
    undoPage.setAuxObject(null);
  }