Interface RawContainerHandle

All Superinterfaces:
ContainerHandle
All Known Implementing Classes:
BaseContainerHandle

public interface RawContainerHandle extends ContainerHandle
RawContainerHandle is the form of ContainerHandle that is used within the raw store. This allows the raw store to have a handle on dropped container without exposing this to the external interface, which is not allowed to get back a handle on a dropped container
  • Field Details

    • NORMAL

      static final int NORMAL
      A container can be in 4 states: non_existent - this is represented by a null ContainerHandle NORMAL - this is the normal case, container has been created and is not dropped. DROPPED - container has been dropped, but is not known whether the drop has been committed or not COMMITTED_DROP - container has been dropped and has committed. To everyone else except recovery, this state is equivalent to NON_EXISTENT
      See Also:
    • DROPPED

      static final int DROPPED
      See Also:
    • COMMITTED_DROP

      static final int COMMITTED_DROP
      See Also:
  • Method Details

    • getContainerStatus

      int getContainerStatus() throws StandardException
      Return the status of the container - one of NORMAL, DROPPED, COMMITTED_DROP.
      Throws:
      StandardException - Standard Derby exception policy
    • removeContainer

      void removeContainer(LogInstant instant) throws StandardException
      Remove the container.
      Throws:
      StandardException - Standard Derby exception policy
    • dropContainer

      void dropContainer(LogInstant instant, boolean drop) throws StandardException
      If drop is true, drop the container. if drop is false, un-drop the container
      Throws:
      StandardException - Standard Derby exception policy
    • getContainerVersion

      long getContainerVersion() throws StandardException
      Get the logged container version
      Throws:
      StandardException - Standard Derby exception policy
    • getAnyPage

      Page getAnyPage(long pageNumber) throws StandardException
      Return a Page that represents any page - alloc page, valid page, free page, dealloced page etc.
      Throws:
      StandardException - Standard Derby error policy
    • reCreatePageForRedoRecovery

      Page reCreatePageForRedoRecovery(int pageFormat, long pageNumber, long pageOffset) throws StandardException
      ReCreate a page for redo recovery. Used during redo recovery while trying to apply log records which are creating the page.
      Throws:
      StandardException - Standard Derby error policy
    • logCreateContainerInfo

      ByteArray logCreateContainerInfo() throws StandardException
      Log all information necessary to recreate the container during a load tran.
      Throws:
      StandardException - Standard Derby error policy
    • preDirty

      void preDirty(boolean preDirtyOn) throws StandardException
      The container is about to be modified. Loggable actions use this to make sure the container gets cleaned if a checkpoint is taken after any log record is sent to the log stream but before the container is actually dirtied.
      Throws:
      StandardException - Standard Derby error policy
    • encryptOrDecryptContainer

      void encryptOrDecryptContainer(String newFilePath, boolean doEncrypt) throws StandardException
      Creates an encrypted or decrypted version of the container.
      Parameters:
      newFilePath - file to store the new version of the container
      doEncrypt - tells whether to encrypt or decrypt
      Throws:
      StandardException - Standard Derby error policy