seq scan only when function not in subquery (bug?) - Mailing list pgsql-hackers

From Brett McCormick
Subject seq scan only when function not in subquery (bug?)
Date
Msg-id 199806152344.QAA17839@web0.speakeasy.org
Whole thread Raw
List pgsql-hackers
sas=> explain update user set usrid = 'aaaaaaaa' where usrseqid=usrseqid('zlb');

NOTICE:  QUERY PLAN:

Seq Scan on user  (cost=344.07 size=658 width=154)

EXPLAIN
sas=> explain update user set usrid = 'aaaaaaaa' where usrseqid=(select usrseqid('zlb'));
NOTICE:  QUERY PLAN:

Index Scan on user  (cost=1.05 size=1 width=154)
  InitPlan
    ->  Result  (cost=0.00 size=0 width=0)

EXPLAIN
sas=>


as you can see, it uses the index when the RHS of the comparison in the where
clause is a subquery, but a sequential scan when it isn't.  is this a bug?

pgsql-hackers by date:

Previous
From: dg@illustra.com (David Gould)
Date:
Subject: Re: [HACKERS] S_LOCK reduced contention
Next
From: Vadim Mikheev
Date:
Subject: Re: [HACKERS] seq scan only when function not in subquery (bug?)