Added to TODO:
* Consider not storing a NULL bitmap on disk if all the NULLs are trailing
http://archives.postgresql.org/pgsql-hackers/2007-12/msg00624.php
http://archives.postgresql.org/pgsql-patches/2007-12/msg00109.php
Tom's comments are:
What this lacks is some performance testing to measure the cost of theextra tests in heap_form_tuple. If that can be
shownto be negligiblethen it's probably worth doing .... though I don't like any part of theactually submitted patch
;-).All this should need is a bit more logicin heap_form_tuple and heap_formtuple.
---------------------------------------------------------------------------
Gokulakannan Somasundaram wrote:
> 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)
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://postgres.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +