On Wed, Jan 4, 2023 at 1:53 AM Peter Geoghegan <p...@bowt.ie> wrote: > I think that we should definitely have a comment directly over > TransactionIdDidAbort(). Though I wouldn't mind reorganizing these > other comments, or making the comment over TransactionIdDidAbort() > mostly just point to the other comments.
Yeah, I think it would be good to have a comment there. As Andres says, it is almost always wrong to use this function, and we should make that more visible. Possibly we should even rename the function, like TransactionIdKnownToHaveAborted(). But that having been said, I'm kind of astonished that you didn't know about this already. The freezing behavior is in general extremely hard to get right, and I guess I feel if you don't understand how the underlying functions work, including things like performance considerations and which functions return fully reliable results, I do not think you should be committing your own patches in this area. There is probably a lot of potential benefit in improving the way this stuff works, but there is also a heck of a lot of danger of creating subtle data corrupting bugs that could easily take years to find. -- Robert Haas EDB: http://www.enterprisedb.com