Re: Maybe don't process multi xmax in FreezeMultiXactId() if it is already marked as invalid?

From: Maxim Orlov <orlovmg(at)gmail(dot)com>
To: "Anton A(dot) Melnikov" <a(dot)melnikov(at)postgrespro(dot)ru>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Maybe don't process multi xmax in FreezeMultiXactId() if it is already marked as invalid?
Date: 2024-06-18 14:29:13
Message-ID: CACG=ezbB2q2wYZseBA5mcNKXZwamPRb2dzzqrRtJ37E=K7do2w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi!

Maybe, I'm too bold, but looks like a kinda bug to me. At least, I don't
understand why we do not check the HEAP_XMAX_INVALID flag.
My guess is nobody noticed, that MultiXactIdIsValid call does not check the
mentioned flag in the "first" condition, but it's all my speculation.
Does anyone know if there are reasons to deliberately ignore the HEAP_XMAX
INVALID flag? Or this is just an unfortunate oversight.

PFA, my approach on this issue.

--
Best regards,
Maxim Orlov.

Attachment Content-Type Size
v2-0001-Invalidate-xmax-if-HEAP_XMAX_INVALID-is-set.patch application/octet-stream 772 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Yura Sokolov 2024-06-18 14:31:15 Re: Suggest two small improvements for PITR.
Previous Message Ashutosh Sharma 2024-06-18 14:28:26 Re: Truncation of mapped catalogs (whether local or shared) leads to server crash