Glitches in heapam.c xlog redo routines

Started by Tom Laneabout 24 years ago2 messages
#1Tom Lane
tgl@sss.pgh.pa.us

These things look like bugs to me:

heap_xlog_clean doesn't update the page's LSN and SUI.

heap_xlog_insert and heap_xlog_update leave random bits in the
inserted/updated tuple's t_ctid. heap_xlog_update leaves random
bits in the updated tuple's t_cmax in the "move" case.

I am not sure about what sort of visible fault these omissions could
produce; perhaps none. But they look like dangerous things IMHO.
Comments?

regards, tom lane

#2Hiroshi Inoue
Inoue@tpf.co.jp
In reply to: Tom Lane (#1)
Re: Glitches in heapam.c xlog redo routines

Tom Lane wrote:

These things look like bugs to me:

heap_xlog_clean doesn't update the page's LSN and SUI.

heap_xlog_insert and heap_xlog_update leave random bits in the
inserted/updated tuple's t_ctid. heap_xlog_update leaves random
bits in the updated tuple's t_cmax in the "move" case.

As far as I see, t_cmax isn't used anywhere once a tuple
was committed.

I am not sure about what sort of visible fault these omissions could
produce; perhaps none. But they look like dangerous things IMHO.
Comments?

I'm not sure about the heap_xlog_clean case. Updating
LSN and SUI seems better to me.

regards,
Hiroshi Inoue