Re: Performance-improvement idea: shortcircuit unique-index checks - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Performance-improvement idea: shortcircuit unique-index checks
Date
Msg-id 200102192152.QAA03952@candle.pha.pa.us
Whole thread Raw
In response to Re: Performance-improvement idea: shortcircuit unique-index checks  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Seems a better solution would be to put a 'deleted' bit in the index so
> > we would have to visit those heap tuples only once for a committed
> > status.  Similar to what we do with heap tuples so we don't have to
> > visit pg_log repeatedly.
> 
> That's only a partial solution, since the index is still going to have
> to visit the row's existing tuple (which is, by definition, not yet
> committed dead).  My point is that the index scanning done for
> uniqueness checks can be eliminated *entirely* for one pretty-common
> case.

I see.

> 
> A deleted bit in index entries might be useful too, but I think it
> attacks a different set of cases.

Yes.  Let me add some TODO items:
* Add deleted bit to index tuples to reduce heap access   * Prevent index uniqueness checks when UPDATE does not modify
column

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


pgsql-hackers by date:

Previous
From: Stephan Szabo
Date:
Subject: Re: Performance-improvement idea: shortcircuit unique-index checks
Next
From: Larry Rosenman
Date:
Subject: Re: PHP 4.0.4pl1 / Beta 5