IndexTuple Structure - Mailing list pgsql-hackers

From Gokulakannan Somasundaram
Subject IndexTuple Structure
Date
Msg-id 9362e74e0710090329x6e8e706ex3f0eedd94088e841@mail.gmail.com
Whole thread Raw
Responses Re: IndexTuple Structure
List pgsql-hackers
Hi,<br />     When i saw the IndexTuple structure, i saw that 13 bits are allocated to store the size of the Values
Listof the IndexTuple Structure. Also the IID(ItemId Identifier) in the Page header stores the complete size of the
IndexTuple.Can't we derive the size of the IndexTuple from the IID->len? <br />      I think we will be able to save
1byte per IndexTuple, if we can implement this from t_info. <br /><br />But will this really be a benefit, if we reduce
this,considering the effect of MAX_ALIGN?<br />I did a small analysis, Currently IndexTuple has a ItemId (6 Bytes) +
t_info(2Bytes) . So usually it is 8 Bytes. In this case it doesn't matter whether the t_info occupies 1 byte/2 bytes.
<br/>But when Null Bitmap is included and if it is less than one byte(which it is in most of the cases), then
IndexInfoFindDataOffsetwill return 12 bytes now (9 bytes + 3 bytes for maxalign).<br />If we make this improvement, it
willcontinue to be 8 bytes(saving of 4 bytes per IndexTuple) <br /><br />Please put forth your comments..<br /><br
/><br/>Thanks,<br />Gokul.<br /> 

pgsql-hackers by date:

Previous
From: "Trevor Talbot"
Date:
Subject: Re: Timezone database changes
Next
From: "Florian G. Pflug"
Date:
Subject: Re: Including Snapshot Info with Indexes