Thread: htup and bufpage API clean up

htup and bufpage API clean up

From
Zdenek Kotala
Date:
Attached patch contains code cleanup in htup.h nad bufpage.[ch]. This patch is
part of pg upgrade project. Idea of this patch is to remove any direct access to
PageHeader and HeapTupleHeader. I already sent more complex patch including
mutli page version control last commitfest. This patch does not contain multi
page version control. I will send it separately.

Main changes in bufpage:
------------------------
- Remove PageGetItem/PageGetItemId. It has been replaced by PageGetHeapTuple and
PageGetIndexTuple
- Most macros are converted to functions. It will be necessary for following patch.


Main changes in htup:
---------------------
- htup.c is created
- Most macros HeapTupleHeader* are removed
- Add complete set of HeapTuple* functions
- Macros for "DatumTupleHeader" still remain, because they are use in PL

Other changes are related to the new API.

Several patches in a patch queue uses old API. It will require consolidation.

    Zdenek


--
Zdenek Kotala              Sun Microsystems
Prague, Czech Republic     http://sun.com/postgresql


Attachment

Re: htup and bufpage API clean up

From
Zdenek Kotala
Date:
I'm sorry for spaming, but I forgot include new files into a diff :(.

    Zdenek



Zdenek Kotala napsal(a):
> Attached patch contains code cleanup in htup.h nad bufpage.[ch]. This
> patch is part of pg upgrade project. Idea of this patch is to remove any
> direct access to PageHeader and HeapTupleHeader. I already sent more
> complex patch including mutli page version control last commitfest. This
> patch does not contain multi page version control. I will send it
> separately.
>
> Main changes in bufpage:
> ------------------------
> - Remove PageGetItem/PageGetItemId. It has been replaced by
> PageGetHeapTuple and PageGetIndexTuple
> - Most macros are converted to functions. It will be necessary for
> following patch.
>
>
> Main changes in htup:
> ---------------------
> - htup.c is created
> - Most macros HeapTupleHeader* are removed
> - Add complete set of HeapTuple* functions
> - Macros for "DatumTupleHeader" still remain, because they are use in PL
>
> Other changes are related to the new API.
>
> Several patches in a patch queue uses old API. It will require
> consolidation.
>
>     Zdenek
>
>
>
> ------------------------------------------------------------------------
>
>


--
Zdenek Kotala              Sun Microsystems
Prague, Czech Republic     http://sun.com/postgresql


Attachment