In a nutshell, headless means nor more but no less than all BATs must have dense oid heads (that thus do not have to be - but maybe - materialized). As before inserts into a bat are just at the end (append) with automatic increment on the head oid. Other physical changes are only in-place updates of tail values identified by their head oid, aka. physical position relative to the beginning of the bat (read: tail heap). Deletes are only logical on SQL level.

S.

Greatings from Brussels via private gsm roaming thanks to lack of Wi-Fi @ European commission ....


On March 14, 2014 1:14:28 PM CET, Fabian Groffen <fabian@monetdb.org> wrote:
Hi devs,

Is there any documentation for headless? Not that it seems completely
pointless, but how exactly is it supposed to work? I'm looking for
documentation that explains why, but preferably also old situation and
how it should be converted into new situation kind of examples. Things
like: can I simply insert into a void-headed BAT to automatically create
a BAT with gaps if I e.g. insert 1, 5 and 7. Can I do a selection on
the head (which should be a simple offset jump) to easily retrieve its
tail, and how does the subselect interface exactly work. There appears
to be not even comments on this piece of code.

Regards from Fuerteventura,
Fabian



developers-list mailing list
developers-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/developers-list

--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.