Re: Remove unused fields in ReorderBufferTupleBuf

Поиск
Список
Период
Сортировка
От reid.thompson@crunchydata.com
Тема Re: Remove unused fields in ReorderBufferTupleBuf
Дата
Msg-id 51bdd6e2ee8d876bd30e83520ce0a7a05290feac.camel@crunchydata.com
обсуждение исходный текст
Ответ на Re: Remove unused fields in ReorderBufferTupleBuf  (Aleksander Alekseev <aleksander@timescale.com>)
Ответы Re: Remove unused fields in ReorderBufferTupleBuf
Список pgsql-hackers
On Thu, 2024-01-25 at 16:16 +0300, Aleksander Alekseev wrote:
> Hi,
>
> > > Here is the corrected patch.
> >
> > Thank you for updating the patch! I have some comments:
>
> Thanks for the review.
>
> > -        tuple = (ReorderBufferTupleBuf *)
> > +        tuple = (HeapTuple)
> >                  MemoryContextAlloc(rb->tup_context,
> > -
> > sizeof(ReorderBufferTupleBuf) +
> > +                                                   HEAPTUPLESIZE +
> >                                                     MAXIMUM_ALIGNOF +
> > alloc_len);
> > -        tuple->alloc_tuple_size = alloc_len;
> > -        tuple->tuple.t_data = ReorderBufferTupleBufData(tuple);
> > +        tuple->t_data = (HeapTupleHeader)((char *)tuple + HEAPTUPLESIZE);
> >
> > Why do we need to add MAXIMUM_ALIGNOF? since HEAPTUPLESIZE is the
> > MAXALIGN'd size, it seems we don't need it. heap_form_tuple() does a
> > similar thing but it doesn't add it.
>
> Indeed. I gave it a try and nothing crashed, so it appears that
> MAXIMUM_ALIGNOF is not needed.
>
> > ---
> >                                  xl_parameter_change *xlrec =
> > -                                        (xl_parameter_change *)
> > XLogRecGetData(buf->record);
> > +                                (xl_parameter_change *)
> > XLogRecGetData(buf->record);
> >
> > Unnecessary change.
>
> That's pgindent. Fixed.
>
> > ---
> > -/*
> > - * Free a ReorderBufferTupleBuf.
> > - */
> > -void
> > -ReorderBufferReturnTupleBuf(ReorderBuffer *rb, ReorderBufferTupleBuf *tuple)
> > -{
> > -        pfree(tuple);
> > -}
> > -
> >
> > Why does ReorderBufferReturnTupleBuf need to be moved from
> > reorderbuffer.c to reorderbuffer.h? It seems not related to this
> > refactoring patch so I think we should do it in a separate patch if we
> > really want it. I'm not sure it's necessary, though.
>
> OK, fixed.
>

I walked through v6 and didn't note any issues.

I do want to ask, the patch alters ReorderBufferReturnTupleBuf() and
drops the unused parameter ReorderBuffer *rb. It seems that
ReorderBufferFreeSnap(), ReorderBufferReturnRelids(),
ReorderBufferImmediateInvalidation(), and ReorderBufferRestoreCleanup()
also pass ReorderBuffer *rb but do not use it. Would it be beneficial
to implement a separate patch to remove this parameter from these
functions also?

Thanks,
Reid




В списке pgsql-hackers по дате отправления:

Предыдущее
От: Anthony Roberts
Дата:
Сообщение: Re: [PATCH] Add native windows on arm64 support
Следующее
От: Andrew Dunstan
Дата:
Сообщение: Re: [PATCH] Add native windows on arm64 support