Received: from localhost (unknown [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id 42B10634E71; Thu, 2 Apr 2009 15:37:44 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 56290-02; Thu, 2 Apr 2009 15:37:36 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from wf-out-1314.google.com (wf-out-1314.google.com [209.85.200.171]) by mail.postgresql.org (Postfix) with ESMTP id 80E19634228; Thu, 2 Apr 2009 15:37:38 -0300 (ADT) Received: by wf-out-1314.google.com with SMTP id 29so711059wff.28 for ; Thu, 02 Apr 2009 11:37:37 -0700 (PDT) Received: by 10.142.104.19 with SMTP id b19mr72068wfc.38.1238697457137; Thu, 02 Apr 2009 11:37:37 -0700 (PDT) Received: from ?10.10.30.141? (204.11.227.33.static.etheric.net [204.11.227.33]) by mx.google.com with ESMTPS id 27sm1934216wfa.30.2009.04.02.11.37.35 (version=SSLv3 cipher=RC4-MD5); Thu, 02 Apr 2009 11:37:36 -0700 (PDT) Subject: Re: [HACKERS] Mentors needed urgently for SoC & PostgreSQL Student Internships From: Jeff Davis To: Heikki Linnakangas Cc: Josh Berkus , "David E. Wheeler" , lembark@wrkhors.com, pgsql-hackers@postgresql.org, pgsql-www@postgresql.org In-Reply-To: <49D501C2.8060208@enterprisedb.com> References: <49CA7A4D.8040206@agliodbs.com> <86CCDB96-2919-4437-952C-43DE4F125EC1@kineticode.com> <49D4C9B0.1060309@wrkhors.com> <5BAA6B5F-67DB-499B-ACB7-ABA1AC52976D@kineticode.com> <49D4FB25.8060400@agliodbs.com> <49D501C2.8060208@enterprisedb.com> Content-Type: text/plain Date: Thu, 02 Apr 2009 11:37:33 -0700 Message-Id: <1238697453.29661.13.camel@dell.linuxdev.us.dell.com> Mime-Version: 1.0 X-Mailer: Evolution 2.22.3.1 Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=1.647 tagged_above=0 required=5 tests=AWL=-0.478, DNS_FROM_RFC_BOGUSMX=2.125 X-Spam-Level: * X-Archive-Number: 200904/5 X-Sequence-Number: 16872 On Thu, 2009-04-02 at 21:19 +0300, Heikki Linnakangas wrote: > The data type itself is quite trivial. It's all the operators that are > more difficult to implement, and also immensely useful. That part is > still incomplete. Can you please let me know what you find lacking (note: the SVN repo is the most current one)? I've implemented a pretty standard set of operators, and a GiST opclass to make things like overlaps, etc., indexable. I have not yet implemented temporal join. > I'd recommend a book called Temporal Data and the > Relational Model by C.J. Date, Hugh Darwen and Nikos Lorentzos for > anyone interested in this topic. That book gives a guideline on how the > data type and operators should behave. Agreed! That is a _very_ good book, and it's what I based my PERIOD type on (I used to call it t_interval because I agree with Date that's a better word -- but the conflict with SQL was too great so I changed it). > I'd love to see that implemented. I volunteer to mentor if someone wants > to tackle it. A big open question is whether we do new syntax, and if so, what. A lot of the literature for temporal types out there (from people basing their suggestions on SQL, like Snodgrass, et al., not C.J. Date) suggests syntax extensions which seem pretty specialized and unnecessary to me, but perhaps convenient. The only thing I really think needs better syntax is a constructor that can easily represent [ ), [ ], ( ), ( ] -- i.e. inclusive/exclusive. Right now I have 4 functions to do that, but it's awkward and overly verbose. In a related topic, an index that can implement a non-overlapping constraint is important to temporal databases. I have done some implementation work on this already, based on my proposal here: http://archives.postgresql.org//pgsql-hackers/2008-06/msg00404.php and I have adjusted my design to address some of the concerns Tom brings up here: http://archives.postgresql.org//pgsql-hackers/2008-06/msg00427.php I already have some code written, so if anyone else is thinking of working on this please contact me first. I will post my progress in the next couple weeks. Regards, Jeff Davis