stasis-aries-wal/src/lladd/page/header.h
Sears Russell 811bc5c710 Implemented a freespace manager that should safely allocate space, even in the face of crashes, and can reclaim unused space (unless an application opens more than one simultaneous transaction that performs allocations)
Fixed some blob bugs (by adding extra fdatasync() calls).

Began factoring out the page management code so that it is an extenstion, and a less integral part of lladd.
2004-08-21 00:03:30 +00:00

11 lines
468 B
C

void headerPageInitialize(Page * p);
void freePageInitialize(Page * freepage, Page *headerpage);
#define headerFreepage_ptr(page) ints_from_end((page), 1)
#define headerFreepagelist_ptr(page) ints_from_end((page), 2)
/** @todo allow for effecient freeing of blocks of multiple pages, and
implement worst-fit page reclamation (as a special case, use
best-fit for single page allocations.) */
#define nextfreepage_ptr(page) ints_from_end((page), 1)