Scan by TID (was RE: [HACKERS] How to add a new build-in operator)

From: "Hiroshi Inoue" <Inoue(at)tpf(dot)co(dot)jp>
To: "Thomas Lockhart" <lockhart(at)alumni(dot)caltech(dot)edu>, "Bruce Momjian" <maillist(at)candle(dot)pha(dot)pa(dot)us>
Cc: "pgsql-hackers" <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Scan by TID (was RE: [HACKERS] How to add a new build-in operator)
Date: 1999-10-07 09:56:52
Message-ID: 000b01bf10aa$4816c600$2801007e@cadzone.tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> > I'm planning to implement a new type of scan,scan by TID.
> > It's on TODO * Allow WHERE restriction on ctid.
> > First,I want to define an equal operator between TID.
>
> Certainly, or perhaps it would be better to recycle an OID from
> farther down? We have some open values, and if you only need a few it
> would work well.
>
> You probably already know this, but just in case,
>
> cd src/include/catalog
> ./unused_oids
>

I didn't know it.
Thanks.
I would use OIDs for '=' operator between TIDs as follows.
387 for = (tid, tid)
1292 for tideq(tid, tid)

Unfortunately,TIDs are changed by UPDATE operations.
So we would need some functions in order to get the latest
TID of a specified tuple such as
currtid(relationid/name, tid) which returns tid.
I would provide functions for both relid and relname and
use 1293-1294 for OIDs of these functions.

Comments ?
If there's no objection,I would commit them to the current tree.

Moreover,we would need to know TIDs of inserted tuples.
What is a reasonable way to do so ?
1. Add TID to return_info of INSERT commands.
2. Provide a function to get TID of the last inserted tuple
of the session(backend).
...

Any ideas ?

Regards.

Hiroshi Inoue
Inoue(at)tpf(dot)co(dot)jp

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jan Wieck 1999-10-07 10:00:22 Re: [HACKERS] union and LIMIT problem
Previous Message Zakkr 1999-10-07 09:54:42 password in pg_shadow