X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by svr1.postgresql.org (Postfix) with ESMTP id D61E0D8A8C for ; Tue, 6 Sep 2005 17:24:38 -0300 (ADT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 72544-07 for ; Tue, 6 Sep 2005 20:24:33 +0000 (GMT) Received: from redivi.com (redivi.com [64.207.133.54]) by svr1.postgresql.org (Postfix) with ESMTP id 07224D89BC for ; Tue, 6 Sep 2005 17:24:30 -0300 (ADT) Received: from [72.1.150.252] (helo=[192.168.0.21]) by redivi.com with esmtpsa (TLSv1:RC4-SHA:128) (Exim 4.43) id 1ECjzT-0000Tj-KD; Tue, 06 Sep 2005 13:24:25 -0700 In-Reply-To: <36e6829205090612575b954f38@mail.gmail.com> References: <20050906135057.GA24136@granicus.if.org> <20050906144930.GA27641@mark.mielke.cc> <200509061002.43803.josh@agliodbs.com> <36e6829205090612575b954f38@mail.gmail.com> Mime-Version: 1.0 (Apple Message framework v734) Message-Id: <3F60E55D-B558-4929-B614-C230EACFF473@redivi.com> Cc: josh@agliodbs.com, pgsql-hackers@postgresql.org, mark@mark.mielke.cc, nathan wagner From: Bob Ippolito Date: Tue, 6 Sep 2005 13:24:18 -0700 To: jonah.harris@gmail.com X-Mailer: Apple Mail (2.734) X-SA-Exim-Connect-IP: 72.1.150.252 X-SA-Exim-Mail-From: bob@redivi.com Content-Type: multipart/alternative; boundary=Apple-Mail-3--445313403 Subject: Re: uuid type for postgres X-SA-Exim-Version: 4.1+cvs (built Mon, 23 Aug 2004 08:44:05 -0700) X-SA-Exim-Scanned: Yes (on redivi.com) X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, hits=0.057 required=5 tests=[HTML_30_40=0.056, HTML_MESSAGE=0.001] X-Spam-Level: X-Archive-Number: 200509/271 X-Sequence-Number: 72668 --Apple-Mail-3--445313403 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Sep 6, 2005, at 12:57 PM, Jonah H. Harris wrote: > On 9/6/05, Josh Berkus wrote: > Mark, > > > I suggest that UUID be recommended in place of SERIAL for certain > > classes of applications, and that it therefore belongs in the core. > > UUID and SERIAL can be used together (although, once you have a > UUID, > > it may not be useful to also have a SERIAL). > > I think that, if you want to push a refactored UUID type for > PostgreSQL > 8.2, that you'd better separate your database design arguments from > your > inclusion arguments. > > For example, you might get my agreement that it would be useful to > have a > UUID as a core type; you would *never* get my agreement to > recommend using > UUID to newbies. I have seen *far* too many abuses of UUIDs in > really > bad database design. People who use them should be experienced > enough to > know what they're doing. > > I agree with Josh on the UUID type, it gets abused far too often > and (IMHO) isn't widely enough used to belong in the core. > Couldn't you just fix the problem in pguuid rather than write a > whole new type? > This sounds like a strawman argument. People abuse a lot of types to do a lot of things they shouldn't be doing, adding types to the core isn't really going to change that much one way or the other. If the documentation gives the user a good idea of when to use UUID and when not, I think it would be a good addition. Worst case, it could become part of contrib, so at least it ships with PostgreSQL with the same license. The GPL license of pguuid is a show-stopper for some (and seems like a silly choice for what it is and who it's for). -bob --Apple-Mail-3--445313403 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=ISO-8859-1
On Sep 6, 2005, at = 12:57 PM, Jonah H. Harris wrote:

On 9/6/05, Josh = Berkus <josh@agliodbs.com> = wrote:
Mark,

> I suggest that UUID be recommended in place of = SERIAL for certain
> classes of applications, and that it = therefore belongs in the core.
> UUID and SERIAL can be used = together (although, once you have a UUID,
> it may not be useful = to also have a SERIAL).

I think that, if you want to push a = refactored UUID type for PostgreSQL
8.2, that you'd better separate = your database design arguments from your
inclusion arguments. =

For example, you might get my agreement that it would be useful = to have a
UUID as a core type; you would *never* get my agreement to = recommend using
UUID to newbies.=A0=A0 I have seen *far* too many = abuses of UUIDs in really
bad database design.=A0=A0 People who use = them should be experienced enough to
know what they're = doing.

I agree with Josh on the UUID type, it gets abused far too = often and (IMHO) isn't widely enough used to belong in the core.=A0 = Couldn't you just fix the problem in pguuid rather than write a whole = new type?


This sounds like = a strawman argument.=A0 People abuse a lot of types to do a lot of = things they shouldn't be doing, adding types to the core isn't really = going to change that much one way or the other.

If the documentation gives = the user a good idea of when to use UUID and when not, I think it would = be a good addition.=A0 Worst case, it could become part of contrib, so = at least it ships with PostgreSQL with the same license.=A0 The GPL = license of pguuid is a show-stopper for some (and seems like a silly = choice for what it is and who it's = for).

-bob

= --Apple-Mail-3--445313403--