On 9/18/06, Tom Lane <[EMAIL PROTECTED]> wrote:
Hmm ... I was thinking it didn't matter, but on closer look, the
int4->oid cast is implicit while the oid->int4 one is only assignment.
So you'd need to write a cast to pass an OID if we declare the functions
as taking int4.  But you'll need a cast anyway if you want to pass a
single OID to the int8-taking version (that's an assignment cast too).

The downside of declaring the functions to take OID is that people might
think they could *only* use OIDs, which isn't so, they can use any
int4-sized key they feel like.

hm. this is really a byproduct of oid being the catchall unsigned int4
type since it has the most built in casts.  i agree 100% though on the
oid perception however, i don't like userland oids at all, until such
time as an 8 bit one comes out.  i would say leave as int4 unless you
were willing to sql typedef the oid to some other name.

merlin

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to