Received: from candle.pha.pa.us (216-55-132-35.dsl.san-diego.abac.net [216.55.132.35]) by postgresql.org (Postfix) with ESMTP id 9391847586D for ; Mon, 15 Jul 2002 10:43:08 -0400 (EDT) Received: (from pgman@localhost) by candle.pha.pa.us (8.11.6/8.10.1) id g6FEh6E28810; Mon, 15 Jul 2002 10:43:06 -0400 (EDT) From: Bruce Momjian Message-Id: <200207151443.g6FEh6E28810@candle.pha.pa.us> Subject: Re: line datatype In-Reply-To: To: Tim Hart Date: Mon, 15 Jul 2002 10:43:06 -0400 (EDT) Cc: pgsql-sql@postgresql.org, Thomas Lockhart X-Mailer: ELM [version 2.4ME+ PL99 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Archive-Number: 200207/215 X-Sequence-Number: 8593 Tim Hart wrote: > Probably the most succinct explanation would be to copy & paste from the > terminal... > > tjhart=> create table a_line( foo line ); > CREATE > tjhart=> insert into a_line ( foo ) values( '(0,0), (1,1)' ); > ERROR: line not yet implemented > tjhart=> select version(); > version > --------------------------------------------------------------------- > PostgreSQL 7.2.1 on powerpc-apple-darwin5.3, compiled by GCC 2.95.2 > (1 row) > > > The documentation (datatype-geometric.html) indicates both a 'line' type > and an 'lseg' type in the summary table at the top of the page. The same > code above using the type 'lseg' in place of 'line' works just fine. > > Why can I create a table with a column of type 'line' if I can't insert > into it? Well, that's a very good question. I see you have to compile PostgreSQL with ENABLE_LINE_TYPE defined in pg_config.h.in and rerun configure. I see this commit from August 16, 1998: revision 1.35 date: 1998/08/16 04:06:55; author: thomas; state: Exp; lines: +7 -6 Disable not-ready-to-use support code for the line data type. Bracket things with #ifdef ENABLE_LINE_TYPE. The line data type has always been used internally to support other types, but I/O routines have never been defined for it. psql \dT clearly shows line and lseg: line | geometric line '(pt1,pt2)' lseg | geometric line segment '(pt1,pt2)' so I think we have both a documentation problem, psql problem, and code problem. Let's see what Thomas says. For the short term, I would use lseg because it looks the same. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026