Re: pageinspect: Hash index support
Ashutosh Sharma <ashu.coek88@gmail.com>
From: Ashutosh Sharma <ashu.coek88@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Mithun Cy <mithun.cy@enterprisedb.com>, Jesper Pedersen <jesper.pedersen@redhat.com>,
Amit Kapila <amit.kapila16@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>,
Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, Michael Paquier <michael.paquier@gmail.com>,
Jeff Janes <jeff.janes@gmail.com>, Alvaro Herrera <alvherre@2ndquadrant.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2017-02-02T11:29:04Z
Lists: pgsql-hackers
Attachments
- 0001-Add-support-for-hash-index-in-pageinspect-contrib-mo_v10.patch (invalid/octet-stream) patch v10-0001
> > + ptr = (char *) itup + IndexInfoFindDataOffset(itup->t_info); > + Assert(ptr <= uargs->page + BLCKSZ); > > I think this should be promoted to an ereport(); these functions can > accept an arbitrary bytea. I think we had added 'ptr' variable initially just to dump hash code in hexadecimal format but now since we have removed that logic from current code, I think it is no more required and I have therefore removed it from the current patch. Below is the code that used it initially. It got changed as per your comment - [1] > > + if (opaque->hasho_flag & LH_BUCKET_PAGE) > + stat->hasho_prevblkno = InvalidBlockNumber; > + else > + stat->hasho_prevblkno = opaque->hasho_prevblkno; > > I think we should return the raw value here. Mithun's patch to cache > the metapage hasn't gone in yet, but even if it does, let's assume > anyone using contrib/pageinspect wants to see the data that's > physically present, not our gloss on it. okay, agreed. I have corrected this in the attached v10 patch. > > Other than that, I don't think I have any other comments on this. The > tests that got added look a little verbose to me (do we really need to > check pages 1-4 separately in each case when they're all hash pages? > if hash_bitmap_info rejects one, surely it will reject the others) but > I'm not going to fight too hard if Peter wants it that way. > I think it's OK to check hash_bitmap_info() or any other functions with different page types at least once. [1]- https://www.postgresql.org/message-id/CA%2BTgmoZUjrVy52TUU3b_Q5L6jcrt7w5R4qFwMXdeCuKQBmYWqQ%40mail.gmail.com -- With Regards, Ashutosh Sharma EnterpriseDB:http://www.enterprisedb.com
Commits
-
Fix incorrect typecast.
- b4316928d57b 10.0 landed
-
In pageinspect/hashfuncs.c, avoid crashes on alignment-picky machines.
- 14e9b18fed28 10.0 landed
-
pageinspect: Support hash indexes.
- 08bf6e529587 10.0 landed
-
Add uuid to the set of types supported by contrib/btree_gist.
- 11da83a0e70d 10.0 cited
-
Allow CREATE EXTENSION to follow extension update paths.
- 40b449ae84dc 10.0 cited