On Tue, May 3, 2016 at 10:45 AM, Bruce Momjian <br...@momjian.us> wrote: > On Mon, May 2, 2016 at 04:02:35PM -0500, Kevin Grittner wrote: >> On Sun, May 1, 2016 at 1:43 AM, Amit Kapila <amit.kapil...@gmail.com> wrote: >> > On Sun, May 1, 2016 at 12:05 PM, Amit Kapila <amit.kapil...@gmail.com> >> > wrote: >> >> >> >> Currently we do the test for old snapshot (TestForOldSnapshot) for hash >> >> indexes while scanning them. Does this test makes any sense for hash >> >> indexes considering LSN on hash index will always be zero (as hash indexes >> >> are not WAL-logged)? It seems to me that PageLSN check in >> >> TestForOldSnapshot() will always return false which means that the error >> >> "snapshot too old" won't be generated for hash indexes. >> >> >> >> Am I missing something here, if not, then I think we need a way to >> >> prohibit pruning for hash indexes based on old_snapshot_threshold? >> > >> > What I mean to say here is prohibit pruning the relation which has hash >> > index based on old_snapshot_threshold. >> >> Good spot; added to the open issues page. > > Uh, I have no idea how this would be fixed if the PageLSN is zero. Do > you?
Yes, I see three ways, the most obvious of which is what Amit suggested -- don't do early vacuum on a table which has a hash index. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers