Re: Proposal for Null Bitmap Optimization(for Trailing NULLs)

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Gokulakannan Somasundaram <gokul007(at)gmail(dot)com>
Cc: pgsql-hackers list <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Proposal for Null Bitmap Optimization(for Trailing NULLs)
Date: 2008-03-18 18:41:24
Message-ID: 200803181841.m2IIfO914285@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches


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 the
extra tests in heap_form_tuple. If that can be shown to be negligible
then it's probably worth doing .... though I don't like any part of the
actually submitted patch ;-). All this should need is a bit more logic
in 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(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://postgres.enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2008-03-18 18:45:17 Re: Better error message for select_common_type()
Previous Message Peter Eisentraut 2008-03-18 18:23:40 Re: Re: [COMMITTERS] pgsql: Don't need -Wno-error anymore, because flex is no longer

Browse pgsql-patches by date

  From Date Subject
Next Message Alvaro Herrera 2008-03-18 19:19:40 Moving snapshot code around
Previous Message Josh Berkus 2008-03-18 15:43:45 Re: [0/4] Proposal of SE-PostgreSQL patches