Safe Haskell | None |
---|---|
Language | Haskell2010 |
Data structures and functions related to handling overflow pages.
- getNewOverflowId :: (Functor m, MonadState (WriterEnv hnd) m) => m OverflowId
- getOverflowHandle :: FilePath -> OverflowId -> FilePath
- getOverflowDir :: FilePath -> TxId -> FilePath
- readOverflowId :: FilePath -> Maybe OverflowId
- showHex' :: (Integral a, Show a) => a -> String
- readHex' :: (Eq a, Num a) => String -> Maybe (a, String)
- type OverflowTree = Tree TxId OverflowSubtree
- type OverflowSubtree = NonEmptyTree OverflowId ()
- insertOverflowIds :: AllocM m => TxId -> NonEmpty OverflowId -> OverflowTree -> m OverflowTree
- deleteOverflowIds :: AllocM m => TxId -> OverflowTree -> m OverflowTree
- deleteOutdatedOverflowIds :: (Functor m, AllocM m, MonadIO m, MonadState (WriterEnv hnd) m) => OverflowTree -> m (Maybe OverflowTree)
Documentation
getNewOverflowId :: (Functor m, MonadState (WriterEnv hnd) m) => m OverflowId Source #
getOverflowHandle :: FilePath -> OverflowId -> FilePath Source #
readOverflowId :: FilePath -> Maybe OverflowId Source #
type OverflowTree = Tree TxId OverflowSubtree Source #
The main tree structure of the freed overflow page tree
type OverflowSubtree = NonEmptyTree OverflowId () Source #
The subtree structure of the freed overflow page tree
insertOverflowIds :: AllocM m => TxId -> NonEmpty OverflowId -> OverflowTree -> m OverflowTree Source #
Save a set of overflow ids that were free'd in the transaction.
deleteOverflowIds :: AllocM m => TxId -> OverflowTree -> m OverflowTree Source #
Delete the set of overflow ids that were free'd in the transaction.
deleteOutdatedOverflowIds :: (Functor m, AllocM m, MonadIO m, MonadState (WriterEnv hnd) m) => OverflowTree -> m (Maybe OverflowTree) Source #