org.apache.cassandra.utils.memory

## Class MemtableAllocator

- java.lang.Object
- - org.apache.cassandra.utils.memory.MemtableAllocator

Direct Known Subclasses:
  MemtableBufferAllocator, NativeAllocator

    public abstract class MemtableAllocator
    extends java.lang.Object

### Nested Class Summary

Nested Classes
`static class` `MemtableAllocator.SubAllocator` Mark the BB as unused, permitting it to be reclaimed

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`abstract DecoratedKey` `clone(DecoratedKey key, OpOrder.Group opGroup)`
`abstract EnsureOnHeap` `ensureOnHeap()`
`boolean` `isLive()`
`MemtableAllocator.SubAllocator` `offHeap()`
`MemtableAllocator.SubAllocator` `onHeap()`
`abstract Row.Builder` `rowBuilder(OpOrder.Group opGroup)`
`void` `setDiscarded()` Indicate the memory and resources owned by this allocator are no longer referenced, and can be reclaimed/reused.
`void` `setDiscarding()` Mark this allocator reclaiming; this will permit any outstanding allocations to temporarily overshoot the maximum memory limit so that flushing can begin immediately

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### rowBuilder

    public abstract Row.Builder rowBuilder(OpOrder.Group opGroup)

#### clone

    public abstract DecoratedKey clone(DecoratedKey key,
                                       OpOrder.Group opGroup)

#### ensureOnHeap

    public abstract EnsureOnHeap ensureOnHeap()

#### onHeap

    public MemtableAllocator.SubAllocator onHeap()

#### offHeap

    public MemtableAllocator.SubAllocator offHeap()

#### setDiscarding

    public void setDiscarding()

Mark this allocator reclaiming; this will permit any outstanding allocations to temporarily overshoot the maximum memory limit so that flushing can begin immediately

#### setDiscarded

    public void setDiscarded()

Indicate the memory and resources owned by this allocator are no longer referenced, and can be reclaimed/reused.

#### isLive

    public boolean isLive()