Обсуждение: Re: [GENERAL] Postgres 7.2 - Updating rows in cursor problem

Поиск
Список
Период
Сортировка

Re: [GENERAL] Postgres 7.2 - Updating rows in cursor problem

От
Hiroshi Inoue
Дата:
Bruce Momjian wrote:
> 
> > > More specifically, the problem is that plpgsql's FOR-over-a-select now
> > > depends on a SPI cursor, and both SPI cursors and regular cursors are
> > > broken in this regard.  Observe the following misbehavior with a plain
> > > cursor:
> >
> > This is a known issue. We should implement INSENSITIVE cursors
> > to avoid this behavior. The keyword INSENSITIVE is there but isn't
> > used long. I plan to implement this feature as the first step toward
> > cross transaction cursors. Saving the xid and commandid in the
> > portal or snapshot and restoring them at fetch(move) time would
> > solve it.
> 
> If I read the CVS logs correctly, I think Tom just fixed it.

Oh I see it now.
I'm not sure if it's good that all cursurs are INSENSITIVE.
Now PostgreSQL is the same as Oracle at the point. Though
there's even a SENSITIVE keyword in SQL statndard, INSENSITIVE
may be what MVCC requires.

regards,
Hiroshi Inoue


Re: [GENERAL] Postgres 7.2 - Updating rows in cursor problem

От
Tom Lane
Дата:
Hiroshi Inoue <Inoue@tpf.co.jp> writes:
> I'm not sure if it's good that all cursurs are INSENSITIVE.

Perhaps not, but I think implementing a reasonable non-insensitive
behavior under MVCC will be difficult.  Do you see a way to do it?
        regards, tom lane