Proposal for Null Bitmap Optimization(for Trailing NULLs)

From: "Gokulakannan Somasundaram" <gokul007(at)gmail(dot)com>
To: "pgsql-hackers list" <pgsql-hackers(at)postgresql(dot)org>
Subject: Proposal for Null Bitmap Optimization(for Trailing NULLs)
Date: 2007-12-17 07:40:48
Message-ID: 9362e74e0712162340j294c37e7q69d0c52b17acb614@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Hi,
Currently we check for the existence of NULL values in the tuple and we
set the has_null flag. If the has_null flag is present, the tuple will be
storing a null bitmap. What i propose is

a) By modifying the functions, heap_form_tuple and heap_fill_tuple, we can
check whether all the nulls are trailing nulls. If all the nulls are
trailing nulls, then we will not set the has_null flag and we will not have
the null bitmap with the tuple.

b) While selecting the tuple, we will check whether the tuple offset equals
/ exceeds the length of the tuple and then mark the remaining attributes of
the tuple as null. To be exact, we need to modify the slot_deform_tuple in
order to achieve the same.

This may not give huge performance benefits, but as you may know, it will
help is reducing the disk footprint.

Expecting your comments..

--
Thanks,
Gokul.
CertoSQL Project,
Allied Solution Group.
(www.alliedgroups.com)

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Gokulakannan Somasundaram 2007-12-17 07:47:21 Requesting clarification on Vacuuming/Freezing behaviour
Previous Message NikhilS 2007-12-17 07:35:35 Re: VLDB Features

Browse pgsql-patches by date

  From Date Subject
Next Message Gokulakannan Somasundaram 2007-12-17 08:02:54 Re: Proposal for Null Bitmap Optimization(for Trailing NULLs)
Previous Message Peter Eisentraut 2007-12-16 13:16:09 Re: Auto create (top level) directory for create tablespace