Re: GIN improvements part 1: additional information
| От | Peter Eisentraut |
|---|---|
| Тема | Re: GIN improvements part 1: additional information |
| Дата | |
| Msg-id | 1381453766.5264.11.camel@vanquo.pezone.net обсуждение |
| Ответ на | Re: GIN improvements part 1: additional information (Heikki Linnakangas <hlinnakangas@vmware.com>) |
| Список | pgsql-hackers |
You linked to this email from the commitfest entry, but there is no
patch here. You probably meant a different email. Check please.
On Tue, 2013-10-08 at 21:48 +0300, Heikki Linnakangas wrote:
> On 04.10.2013 14:13, Alexander Korotkov wrote:
> > On Fri, Oct 4, 2013 at 12:28 PM, Heikki Linnakangas<hlinnakangas@vmware.com
> >> wrote:
> >
> >> In the attached patch, I in fact already did that for data leaf pages, but
> >> didn't change the format of non-leaf pages yet. If we want to support
> >> pg_upgrade, we might want to refrain from changing the non-leaf format.
> >
> > In GinDataLeafPageGetPostingList* you use sizeof(ItemPointerData) without
> > MAXALIGN. Is it an error or you especially use 2 extra bytes on leaf page?
>
> I didn't even think of it. Now that I do think of it, I don't see a
> reason to use MAXALIGN there. PostingItems only require 2-byte
> alignment. It's a bit fragile and underdocumented though. It probably
> would be good to have a struct to represent that layout. Something like:
>
> struct
> {
> ItemPointerData rightBound;
> PostingItem postingItems[1]; /* variable length array */
> } PostingItemPageContent;
>
> And use that struct in the macros.
>
> Then again, we do currently use MAXALIGN there, so if we want to avoid
> changing the on-disk format, we have to keep it...
>
> - Heikki
>
>
В списке pgsql-hackers по дате отправления: