return the current active block (insert high water mark) for an object.
Advanced: allow multiple active blocks for concurrent usage.
return the next unused block for an object, which would be one beyond
the current block in the current extent if possible, or else it
allocates a new extent.
Advanced: allow multiple next blocks for concurrent users. Maintain multiple freelists. Use this call as an opportunity to probe extent headers to update the segment header.
|firstblock, nextblock||iterate over the set of *used* blocks for an object. Ignores unused blocks in last extent|
|countblock||count of all blocks associated with the object. Includes allocated, *unused* blocks, plus empty blocks (i.e. blocks with no rows).|
|hasblock||check if block is associated with an object|
|freetable||return all of an objects blocks to the freelist|
|flush||write the contents of block zero to disk. Need to handle case of extent lists spread over multiple blocks.|
need to coalesce adjacent free extents maintain multiple free lists for performance better indexing scheme - maybe a btree
Jeffrey I. Cohen, email@example.com
Copyright (c) 2006, 2007 Jeffrey I Cohen. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Address bug reports and comments to: firstname.lastname@example.org
|perl v5.20.3||GENEZZO::SPACEMAN::SMEXTENT (3)||2007-07-28|