Re: [HACKERS] [PATCH] pageinspect function to decode infomasks
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>,
Masahiko Sawada <sawada.mshk@gmail.com>, Craig Ringer <craig@2ndquadrant.com>,
Ashutosh Sharma <ashu.coek88@gmail.com>, Julien Rouhaud <rjuju123@gmail.com>, Peter Geoghegan <pg@bowt.ie>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>,
Abhijit Menon-Sen <ams@2ndquadrant.com>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, Pavan Deolasee <pavan.deolasee@2ndquadrant.com>
Date: 2019-09-14T05:48:37Z
Lists: pgsql-hackers
On Sat, Sep 14, 2019 at 10:10 AM Michael Paquier <michael@paquier.xyz> wrote: > > On Sat, Sep 14, 2019 at 09:25:31AM +0530, Amit Kapila wrote: > > On Fri, Sep 13, 2019 at 5:31 PM Alvaro Herrera <alvherre@2ndquadrant.com> wrote: > >> A thought I had as I fell asleep last night is to include the derivate > >> flags in a separate output column altogether. So > >> heap_tuple_infomask_flags() could be made to return two columns, one > >> with the straight one-flag-per-bit, and another one with the compound > >> flags. > > > > So, in most cases, the compound column will be empty, but in some > > cases like HEAP_XMIN_FROZEN, HEAP_XMAX_SHR_LOCK, etc. the flag will be > > displayed. I like this idea though it will be a bit of noise in some > > cases but it is neat. Another benefit is that one doesn't need to > > invoke this function twice to see the compound flags. > > Hmmm. Doesn't it become less user-friendly to invoke the function > then? You would need to pass it down to the FROM clause after > fetching the raw page and then parsing its tuple items to have > t_infomask and t_infomask2 passed down as arguments to the new > function. The one-column version has the advantage to be more > consistent with tuple_data_split() after getting all the values parsed > by heap_page_items(). > Won't 'Lateral' clause be helpful here as the patch contains it in one of its tests? -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
Commits
-
Redesign pageinspect function printing infomask bits
- 58b4cb30a5bf 13.0 landed
-
Add to pageinspect function to make t_infomask/t_infomask2 human-readable
- ddbd5d873161 13.0 landed
-
Improve documentation of pageinspect
- 1fb2d78cb946 10.11 landed
- 6472d7ad5d70 11.6 landed
- 08e68825c1d6 12.0 landed
- 292ae8af79b4 13.0 landed
-
Improve pageinspect module
- d6061f83a166 9.6.0 cited