Package | Description |
---|---|
com.bigdata.journal |
The journal is an append-only persistence capable data structure
supporting atomic commit, named indices, and transactions.
|
com.bigdata.rawstore |
A set of interfaces and some simple implementations for a read-write
store without atomic commit or transactions.
|
com.bigdata.rwstore | |
com.bigdata.rwstore.sector |
Modifier and Type | Method and Description |
---|---|
IAllocationContext |
AbstractJournal.newAllocationContext(boolean isolated) |
IAllocationContext |
RWStrategy.newAllocationContext(boolean isolated) |
Modifier and Type | Method and Description |
---|---|
void |
AbstractJournal.abortContext(IAllocationContext context) |
void |
RWStrategy.abortContext(IAllocationContext context) |
void |
AbstractJournal.delete(long addr,
IAllocationContext context) |
void |
RWStrategy.delete(long addr,
IAllocationContext context)
Must check whether there are existing transactions which may access
this data, and if not free immediately, otherwise defer.
|
void |
AbstractJournal.detachContext(IAllocationContext context) |
void |
RWStrategy.detachContext(IAllocationContext context) |
IPSOutputStream |
AbstractJournal.getOutputStream(IAllocationContext context) |
IPSOutputStream |
RWStrategy.getOutputStream(IAllocationContext context) |
long |
AbstractJournal.write(ByteBuffer data,
IAllocationContext context) |
long |
RWStrategy.write(ByteBuffer data,
IAllocationContext context)
Overridden to integrate with the shadow allocator support of the
RWStore . |
Modifier and Type | Method and Description |
---|---|
void |
IAllocationManagerStore.delete(long addr,
IAllocationContext context)
Delete the data associated with the address within the allocation
context.
|
IPSOutputStream |
IAllocationManagerStore.getOutputStream(IAllocationContext context)
Return an output stream which can be used to write on the backing store
within the given allocation context.
|
long |
IAllocationManagerStore.write(ByteBuffer data,
IAllocationContext context)
Write the data within the allocation context.
|
Modifier and Type | Method and Description |
---|---|
IAllocationContext |
RWStore.newAllocationContext(boolean isolated) |
IAllocationContext |
IAllocationManager.newAllocationContext(boolean isolated)
Creates a context to be used to isolate updates to within the context until it
is released to the parent environment.
|
Modifier and Type | Method and Description |
---|---|
void |
FixedAllocator.abortAllocationContext(IAllocationContext context,
RWWriteCacheService writeCacheService)
Unwinds the allocations made within the context and clears the write
cache of any associated data
|
void |
RWStore.abortContext(IAllocationContext context)
The ContextAllocation object manages a freeList of associated allocators
and an overall list of allocators.
|
void |
IAllocationManager.abortContext(IAllocationContext context)
Indicates that the allocation context will no longer be used and that the
allocations made within the context should be discarded.
|
long |
RWStore.alloc(byte[] buf,
int size,
IAllocationContext context)
Called by PSOutputStream to make to actual allocation or directly by
lower level API clients.
|
long |
IStore.alloc(byte[] buf,
int size,
IAllocationContext context)
Writes data on the store.
|
int |
RWStore.alloc(int size,
IAllocationContext context)
Core allocation method.
|
int |
Allocator.alloc(RWStore store,
int size,
IAllocationContext context) |
int |
FixedAllocator.alloc(RWStore store,
int size,
IAllocationContext context)
The introduction of IAllocationContexts has added some complexity to
the older concept of a free list.
|
boolean |
Allocator.canImmediatelyFree(int addr,
int size,
IAllocationContext context) |
boolean |
FixedAllocator.canImmediatelyFree(int addr,
int size,
IAllocationContext context)
If the context is this allocators context AND it is not in the commit bits
then we can immediately free.
|
void |
RWStore.detachContext(IAllocationContext context)
Indicates that the allocation context will no longer be used, but that
the allocations made within the context should be preserved.
|
void |
IAllocationManager.detachContext(IAllocationContext context)
Indicates that the allocation context will no longer be used, but that
the allocations made within the context should be preserved.
|
void |
RWStore.free(long laddr,
int sze,
IAllocationContext context)
free
|
static PSOutputStream |
PSOutputStream.getNew(IStore store,
int maxAlloc,
IAllocationContext context) |
IPSOutputStream |
RWStore.getOutputStream(IAllocationContext context) |
void |
FixedAllocator.setAllocationContext(IAllocationContext context) |
Modifier and Type | Class and Description |
---|---|
class |
AllocationContext
The
AllocationContext is used to maintain a handle on allocations
made within some specific environment (context). |
Modifier and Type | Method and Description |
---|---|
IAllocationContext |
AllocationContext.newAllocationContext(boolean isolated) |
IAllocationContext |
MemStrategy.newAllocationContext(boolean isolated) |
IAllocationContext |
MemoryManager.newAllocationContext(boolean isolated) |
Modifier and Type | Method and Description |
---|---|
void |
AllocationContext.abortContext(IAllocationContext context) |
void |
MemStrategy.abortContext(IAllocationContext context) |
void |
MemoryManager.abortContext(IAllocationContext context) |
long |
AllocationContext.alloc(byte[] buf,
int size,
IAllocationContext context) |
long |
MemoryManager.alloc(byte[] buf,
int size,
IAllocationContext context) |
long |
IMemoryManager.allocate(ByteBuffer data,
IAllocationContext context) |
long |
AllocationContext.allocate(ByteBuffer data,
IAllocationContext context) |
long |
MemoryManager.allocate(ByteBuffer data,
IAllocationContext context) |
void |
MemStore.delete(long addr,
IAllocationContext context) |
void |
AllocationContext.delete(long addr,
IAllocationContext context) |
void |
MemStrategy.delete(long addr,
IAllocationContext context) |
void |
MemoryManager.delete(long addr,
IAllocationContext context) |
void |
AllocationContext.detachContext(IAllocationContext context) |
void |
MemStrategy.detachContext(IAllocationContext context) |
void |
MemoryManager.detachContext(IAllocationContext context) |
void |
IMemoryManager.free(long addr,
IAllocationContext context) |
void |
AllocationContext.free(long addr,
IAllocationContext context) |
void |
MemoryManager.free(long addr,
IAllocationContext context) |
IPSOutputStream |
MemStore.getOutputStream(IAllocationContext context)
Return an output stream which can be used to write on the backing store
within the given allocation context.
|
IPSOutputStream |
AllocationContext.getOutputStream(IAllocationContext context) |
IPSOutputStream |
MemStrategy.getOutputStream(IAllocationContext context) |
IPSOutputStream |
MemoryManager.getOutputStream(IAllocationContext context) |
long |
MemStore.write(ByteBuffer data,
IAllocationContext context) |
long |
AllocationContext.write(ByteBuffer data,
IAllocationContext context) |
long |
MemStrategy.write(ByteBuffer data,
IAllocationContext context)
FIXME There are two unit tests for the
MemStore which are failing
due to this method not being implemented. |
long |
MemoryManager.write(ByteBuffer data,
IAllocationContext context) |
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.