Обсуждение: Wrong comment in tuptable.h

Поиск
Список
Период
Сортировка

Wrong comment in tuptable.h

От
Jeff Davis
Дата:

  /*
   * Return a copy of heap tuple representing the contents of the slot.
The
   * copy needs to be palloc'd in the current memory context. The slot
   * itself is expected to remain unaffected. It is *not* expected to
have
   * meaningful "system columns" in the copy. The copy is not be
"owned" by
   * the slot i.e. the caller has to take responsibility to free memory
   * consumed by the slot.
   */
  HeapTuple (*copy_heap_tuple) (TupleTableSlot *slot);

But acquire_sample_rows() calls ExecCopySlotHeapTuple(), and then
subsequently sorts the rows by TID. Is acquire_sample_rows() doing
something it shouldn't, or is the comment mistaken?

Regards,
    Jeff Davis





Re: Wrong comment in tuptable.h

От
Andres Freund
Дата:
Hi,

On 2020-12-26 18:00:49 -0800, Jeff Davis wrote:
>   /*
>    * Return a copy of heap tuple representing the contents of the slot.
> The
>    * copy needs to be palloc'd in the current memory context. The slot
>    * itself is expected to remain unaffected. It is *not* expected to
> have
>    * meaningful "system columns" in the copy. The copy is not be
> "owned" by
>    * the slot i.e. the caller has to take responsibility to free memory
>    * consumed by the slot.
>    */
>   HeapTuple (*copy_heap_tuple) (TupleTableSlot *slot);
> 
> But acquire_sample_rows() calls ExecCopySlotHeapTuple(), and then
> subsequently sorts the rows by TID. Is acquire_sample_rows() doing
> something it shouldn't, or is the comment mistaken?

I think the comment is too vague and thinking of system columns as
xmin/xmax/cmin/cmax.

Greetings,

Andres Freund