TODO list check

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: PostgreSQL Development <pgsql-hackers(at)postgresql(dot)org>
Subject: TODO list check
Date: 2000-01-27 22:28:44
Message-ID: Pine.LNX.4.21.0001272100510.356-100000@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

My last run-through before the apocalypse ...

* Disallow inherited columns with the same name as new columns

Either this was just not marked off, or there is some misconception about
how things should work. E.g.,
create table a (x int);
create table b (x text) inherits (a);
will fail, for obvious reasons.

create table a (x int);
create table b (x int) inherits (a);
will not fail, but will create a table b with *one* column x which is the
one inherited from a. This might be confusing in this context, but what
about

create table a (x int);
create table b (y text) inherits (a);
create table c (z text) inherits (a);
create table d (q time) inherits (b, c);

In this case you must allow this "column merging" to happen, otherwise
this whole scheme of inheriting would be impossible. So either the above
item seems done or we prohibit multiple inheritance.

* Do not allow bpchar column creation without length

peter=> create table foo (a bpchar);
CREATE
peter=> \d foo
Table "foo"
Attribute | Type | Extra
-----------+---------+-------
a | char(1) |

Looks good to me (and is standard compliant).

* Update table SET table.value = 3 fails(SQL standard says this is OK)

We agreed that this was definitely not okay by any standard we know of.
Please remove it.

* SELECT ... UNION ... ORDER BY fails when sort expr not in result list

Looks good to me:

peter=> select * from test1;
a | b
---+----
1 | 11
2 | 22
(2 rows)

peter=> select * from test2;
a | b
---+----
3 | 33
4 | 44
(2 rows)

peter=> select a from test1 union select a from test2 order by b;
a
---
1
2
3
4
(4 rows)

Perhaps be more specific?

* SELECT ... UNION ... GROUP BY fails if column types disagree

Shouldn't it?

* Allow user to define char1 column

Both of
create table test (a char);
create table test (a char(1));
seem to work.

* Add support for & operator

To do what? I can only see this specified in embedded SQL. More specific
here as well?

* Make Absolutetime/Relativetime int4 because time_t can be int8 on some
ports

This is done.

* Make type equivalency apply to aggregates

This is done.

* -Add ALTER TABLE DROP/ALTER COLUMN feature

Ain't gonna happen. (Okay, the ALTER COLUMN part is, but not the rest.)

* Add PL/Perl(Mark Hollomon)

I understand this is done as well. Someone might want to incorporate this
into the build process, as well as add it into createlang.

* Pre-generate lex and yacc output so not required for install

Done.

--
Peter Eisentraut Sernanders väg 10:115
peter_e(at)gmx(dot)net 75262 Uppsala
http://yi.org/peter-e/ Sweden

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Kristofer Munn 2000-01-27 23:03:05 Orphaned files in the database...
Previous Message Peter Eisentraut 2000-01-27 22:28:24 Re: [HACKERS] Inheritance, referential integrity and other constraints