[HACKERS] Proposal for Byte savings in VarBit structure

2010-03-21 Thread Gokulakannan Somasundaram
Hi,
   I was looking at the VarBit data structure and found out that instead of
storing the number of bits in four bytes, we can save the number of bits
that are valid in the last byte. Since we already store the number of bytes
in Varlena Header, we can calculate the number of valid bits by doing the
small math. ( (No. of bytes-1) * 8  + valid bits in the last byte).
  This would save atleast 8 bytes for someone, who is using the varbit data
type using less than 24 bits.

  Waiting for comments.

Thanks,
Gokul.


Re: [HACKERS] Proposal for Byte savings in VarBit structure

2010-03-21 Thread Tom Lane
Gokulakannan Somasundaram gokul...@gmail.com writes:
I was looking at the VarBit data structure and found out that instead of
 storing the number of bits in four bytes, we can save the number of bits
 that are valid in the last byte. Since we already store the number of bytes
 in Varlena Header, we can calculate the number of valid bits by doing the
 small math. ( (No. of bytes-1) * 8  + valid bits in the last byte).
   This would save atleast 8 bytes for someone, who is using the varbit data
 type using less than 24 bits.

This might be worth considering in a release cycle where we were going
to break on-disk data compatibility for some other reason.  But I can
hardly imagine wanting to do it by itself.  Marginal space savings for
the bit types just isn't that exciting.

Maybe we should start a special section of TODO for things we might do
next time we break data compatibility.

regards, tom lane

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] Proposal for Byte savings in VarBit structure

2010-03-21 Thread Gokulakannan Somasundaram
 This might be worth considering in a release cycle where we were going
 to break on-disk data compatibility for some other reason.  But I can
 hardly imagine wanting to do it by itself.  Marginal space savings for
 the bit types just isn't that exciting.

 Maybe we should start a special section of TODO for things we might do
 next time we break data compatibility.


Thanks Tom. So when we say breaking data compatibility, we mean the next
release where we will recommend pg_dump/restore right?

Thanks,
Gokul.