Re: hstores in pl/python
От | Dmitriy Igrishin |
---|---|
Тема | Re: hstores in pl/python |
Дата | |
Msg-id | AANLkTi=HmtWuJyutNu6W4E_ATE7QHmQyWk2Fp=oTO-+-@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: hstores in pl/python (Florian Pflug <fgp@phlo.org>) |
Ответы |
Re: hstores in pl/python
Re: hstores in pl/python |
Список | pgsql-hackers |
2010/12/15 Florian Pflug <fgp@phlo.org>
On Dec15, 2010, at 18:33 , Dmitriy Igrishin wrote:Because there are only 2^32 OIDs, so if people start picking them at
> 2010/12/15 Florian Pflug <fgp@phlo.org>
> On Dec15, 2010, at 16:18 , Dmitriy Igrishin wrote:
> >> 2010/12/15 Florian Pflug <fgp@phlo.org>
> >> On Dec15, 2010, at 02:14 , James William Pye wrote:
> >> > On Dec 13, 2010, at 6:16 PM, Tom Lane wrote:
> >> >> how do you identify which type OID is really hstore?
> >> >
> >> > How about an identification field on pg_type?
> >> >
> >> > CREATE TYPE hstore ..., IDENTIFIER 'org.postgresql.hstore';
> >> > -- Where the "identifier" is an arbitrary string.
> >>
> >> I've wanted something like this a few times when dealing
> >> with custom types within a client. A future protocol version
> >> might even transmit these identifiers instead a the type's OID,
> >> thereby removing the dependency on OID from clients entirely.
> >
> > In some another tread I've proposed CREATE TYPE ... WITH OID...
> Yeah, and I believe type identifiers are probably what you were
> really looking for ;-)
> Indeed, but why OID cannot serve as identifier in this case ? Why to
> encode the code ? :-)
random, sooner or later there will be collisions.
Yes, but range of PostgreSQL's OIDs can be reserved. One or even ten
millions, e.g. can be enough.
millions, e.g. can be enough.
Yeah, that'd be the idea. If everyone uses reversed DNS-style names, and
> Type identifiers would solve
> this, by providing an easy and unambiguous way to find specific types.
> Agree with 1st assertion but disagree with 2nd. If I understand correctly,
> "identifier" is a second name for type (object), but Java-styled, right ?
> It probably does solve the problem if there are will be convention that
> types org.postgresql.* are reserved.
everyone picks a name belonging to a DNS zone under his control, there
cannot be any collisions. At least for java packages, this seems to work
pretty nicely.None of these solutions scale well.
> But why not reserve name of type
> "hstore" and prevent the user to create type with this reserved name ?
> All this tells me one thing - to avoid conflicts of naming of specific types
> it is necessary to make them built-in.
Well, If there are will be identifiers for each type, e.g. org.postgresql.integer, why
they need to be built-in ? For "historical reasons" ? :-)
Let them also be in contribs...
they need to be built-in ? For "historical reasons" ? :-)
Let them also be in contribs...
best regards,
Florian Pflug
--
// Dmitriy.
В списке pgsql-hackers по дате отправления: