Open 7.1 items

Started by Bruce Momjianalmost 25 years ago14 messages
#1Bruce Momjian
pgman@candle.pha.pa.us

Attached is a list of open source code and documentation items for 7.1.
If people can just confirm completed items, I will remove them right
away. The current version of this file can be seen at:

ftp://candle.pha.pa.us/pub/postgresql/open_items

---------------------------------------------------------------------------

P O S T G R E S Q L

7 . 1 O P E N I T E M S

Source Code Changes
-------------------
LAZY VACUUM (Vadim)
ODBC not disconnecting properly?
Merge MySQL/PgSQL translation scripts
Fix ipcclean on Linux
unixODBC

Documentation Changes
---------------------
Fix PL/perl (Alex Kapranoff)
Add OUTER JOINs (Tom)
Function manager overhaul (Tom)
JDBC improvements (Peter, Travis Bauer, Christopher Cain, William Webber,
Gunnar)
Grand Unified Configuration scheme/GUC. Many options can now be set in
data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
Overhaul initdb process (Tom, Peter E)
Overhaul of inherited tables; inherited tables now accessed by default;
new ONLY keyword prevents it (Chris Bitmead, Tom)
ODBC cleanups/improvements (Nick Gorham, Stephan Szabo, Zoltan Kovacs,
Michael Fork)
Overhaul pg_dump (Philip Warner)
New pg_dump tar output option (Philip)
New pg_dump of large objects (Philip)
New pg_restore command (Philip)
Allow pg_hba.conf secondary password file to specify only username (Peter E)
New SET SESSION CHARACTERISTICS (Thomas)
Add WITHOUT TIME ZONE type qualifier (Thomas)
New ALTER TABLE ADD CONSTRAINT (Stephan)
New VARIANCE and STDDEV() aggregates
New ESCAPE option to LIKE (Thomas)
New case-insensitive LIKE - ILIKE (Thomas)
Allow SQL functions to be used in more contexts (Tom)
New pg_config utility (Peter E)
New PL/pgSQL EXECUTE command which allows dynamic SQL and utility statements
(Jan)
New PL/pgSQL GET DIAGNOSTICS statement for SPI value access (Jan)
New quote_identifiers() and quote_literal() functions (Jan)
New ALTER TABLE table OWNER TO user command (Mark Hollomon)
Allow subselects in FROM, i.e. FROM (SELECT ...) [AS] alias (Tom)
Store tables as files named by OID (Vadim)
New SQL function setval(seq,val,bool) for use in pg_dump (Philip)
New pg_service.conf file (Mario Weilguni)
New pg_dumpall --globals-only option (Peter E)
New CHECKPOINT command for WAL which creates new WAL log file (Vadim)
New AT TIME ZONE syntax (Thomas)
Allow location of Unix domain socket to be configurable (David J. MacKenzie)
Allow postmaster to listen on a specific IP address (David J. MacKenzie)
Allow socket path name to be specified in hostname by using leading slash
(David J. MacKenzie)
Allow CREATE DATABASE to specify template database (Tom)
New pg_dump --globals-only option (Peter E)
New /contrib/rserv replication toolkit (Vadim)
New file format for COPY BINARY (Tom)
New /contrib/oid2name to map numeric files to table names (B Palmer)
Allow BIGINT as synonym for INT8 (Peter E)
New BIT and BIT VARYING types (Adriaan Joubert, Tom, Peter E)
Fix CIDR output formatting (Tom)
New CIDR abbrev() function (Tom)
Write-Ahead Log (WAL) to provide crash recovery with less performance
overhead (Vadim)
Store all large objects in a single table (Denis Perchine, Tom)
New function manager call conventions (Tom)
New configure --enable-syslog option (Peter E)
configure script moved to top level, not /src (Peter E)
New configure --with-python option (Peter E)
New OpenSSL configuration option (Magnus, Peter E)
Remove colon and semi-colon operators (Thomas)
New pg_class.relkind value for views (Mark Hollomon)
Rename ichar() to chr() (Karel)
Moved macmanuf to /contrib (Larry Rosenman)
New template0 database that contains no user additions (Tom)
Allow *BSD's libedit instead of readline (Peter)

-- 
  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
#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#1)
Re: [HACKERS] Open 7.1 items

Bruce Momjian <pgman@candle.pha.pa.us> writes:

Attached is a list of open source code and documentation items for 7.1.

I've got two major TODO items that are not in your list, but should be:

* visibility of joined columns in JOIN clauses (Thomas thinks code is
wrong, I'm not sure yet)
* separate client- and server-side includes, make optional install target to
install all of src/include

The question of what to do about spinlock timeouts on buffers seems to be
a critical issue, too.

regards, tom lane

#3Peter Eisentraut
peter_e@gmx.net
In reply to: Bruce Momjian (#1)
Re: Open 7.1 items

Bruce Momjian writes:

Source Code Changes
-------------------

Fix ipcclean on Linux

It's fixed. Or what is the problem?

unixODBC

This would be a new feature. I'm having some private conversation with
the unixODBC maintainer about how to handle this. We'll work on it for
7.2.

Documentation Changes
---------------------
Fix PL/perl (Alex Kapranoff)

Not sure how to handle this other than backpatching to 7.0 that it doesn't
work. ;-) (i.e.: done)

Add OUTER JOINs (Tom)

Documented

Function manager overhaul (Tom)

Looks documented enough to me.

Grand Unified Configuration scheme/GUC. Many options can now be set in
data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
Overhaul initdb process (Tom, Peter E)
Overhaul of inherited tables; inherited tables now accessed by default;
new ONLY keyword prevents it (Chris Bitmead, Tom)

done, done, done

(although I don't recall me "overhauling" initdb)

Allow pg_hba.conf secondary password file to specify only username (Peter E)
New SET SESSION CHARACTERISTICS (Thomas)
Add WITHOUT TIME ZONE type qualifier (Thomas)

done, done, done

New VARIANCE and STDDEV() aggregates
New ESCAPE option to LIKE (Thomas)
New case-insensitive LIKE - ILIKE (Thomas)

done, done, done

Allow SQL functions to be used in more contexts (Tom)

That probably doesn't need documentation.

New pg_config utility (Peter E)
New PL/pgSQL EXECUTE command which allows dynamic SQL and utility statements
(Jan)

New quote_identifiers() and quote_literal() functions (Jan)

done, done, done

New ALTER TABLE table OWNER TO user command (Mark Hollomon)
Allow subselects in FROM, i.e. FROM (SELECT ...) [AS] alias (Tom)

done, done

New pg_service.conf file (Mario Weilguni)

As per previous agreement, this will not be an official feature in 7.1.
Needs further review.

New pg_dumpall --globals-only option (Peter E)
New CHECKPOINT command for WAL which creates new WAL log file (Vadim)
New AT TIME ZONE syntax (Thomas)
Allow location of Unix domain socket to be configurable (David J. MacKenzie)
Allow postmaster to listen on a specific IP address (David J. MacKenzie)
Allow socket path name to be specified in hostname by using leading slash
(David J. MacKenzie)
Allow CREATE DATABASE to specify template database (Tom)
New pg_dump --globals-only option (Peter E)

Check all those.

Allow BIGINT as synonym for INT8 (Peter E)
New BIT and BIT VARYING types (Adriaan Joubert, Tom, Peter E)
Fix CIDR output formatting (Tom)
New CIDR abbrev() function (Tom)
Write-Ahead Log (WAL) to provide crash recovery with less performance
overhead (Vadim)

Check

New function manager call conventions (Tom)

Hmm, I've seen this before...

New configure --enable-syslog option (Peter E)
configure script moved to top level, not /src (Peter E)
New configure --with-python option (Peter E)
New OpenSSL configuration option (Magnus, Peter E)
Remove colon and semi-colon operators (Thomas)

All good.

Rename ichar() to chr() (Karel)

chr() is documented.

Allow *BSD's libedit instead of readline (Peter)

*BSD should be "NetBSD". Not documented, yet.

--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/

#4Denis Perchine
dyp@perchine.com
In reply to: Bruce Momjian (#1)
Re: Open 7.1 items

Store all large objects in a single table (Denis Perchine, Tom)

Hmmm... If you would point me to the document where changes should be done, I
will do them.

--
Sincerely Yours,
Denis Perchine

----------------------------------
E-Mail: dyp@perchine.com
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------

#5Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Peter Eisentraut (#3)
Re: Open 7.1 items

Bruce Momjian writes:

Source Code Changes
-------------------

Fix ipcclean on Linux

It's fixed. Or what is the problem?

The issue was that the ipcs code did not work on Linux. In fact,
reference to variable $ipcs_pid doesn't even work because it is not
defined. I believe you stated you would get that working.

unixODBC

This would be a new feature. I'm having some private conversation with
the unixODBC maintainer about how to handle this. We'll work on it for
7.2.

Item removed.

Documentation Changes
---------------------
Fix PL/perl (Alex Kapranoff)

Not sure how to handle this other than backpatching to 7.0 that it doesn't
work. ;-) (i.e.: done)

That is all I needed to know. Item removed.

Add OUTER JOINs (Tom)

Documented

Removed.

Function manager overhaul (Tom)

Looks documented enough to me.

Removed.

Grand Unified Configuration scheme/GUC. Many options can now be set in
data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
Overhaul initdb process (Tom, Peter E)
Overhaul of inherited tables; inherited tables now accessed by default;
new ONLY keyword prevents it (Chris Bitmead, Tom)

done, done, done

(although I don't recall me "overhauling" initdb)

Removed. Overhaul as in clean up how it works.

Allow pg_hba.conf secondary password file to specify only username (Peter E)
New SET SESSION CHARACTERISTICS (Thomas)
Add WITHOUT TIME ZONE type qualifier (Thomas)

done, done, done

New VARIANCE and STDDEV() aggregates
New ESCAPE option to LIKE (Thomas)
New case-insensitive LIKE - ILIKE (Thomas)

done, done, done

All removed.

Allow SQL functions to be used in more contexts (Tom)

That probably doesn't need documentation.

Not sure if we mention that only non-SQL functions can be used in
certain contexts, while they can now be used. What contexts did we add.
I believe it was functional indexes. Item removed.

New pg_config utility (Peter E)
New PL/pgSQL EXECUTE command which allows dynamic SQL and utility statements
(Jan)

New quote_identifiers() and quote_literal() functions (Jan)

done, done, done

New ALTER TABLE table OWNER TO user command (Mark Hollomon)
Allow subselects in FROM, i.e. FROM (SELECT ...) [AS] alias (Tom)

done, done

All removed.

New pg_service.conf file (Mario Weilguni)

As per previous agreement, this will not be an official feature in 7.1.
Needs further review.

Removed from HISTORY & release.sgml.

New pg_dumpall --globals-only option (Peter E)
New CHECKPOINT command for WAL which creates new WAL log file (Vadim)
New AT TIME ZONE syntax (Thomas)
Allow location of Unix domain socket to be configurable (David J. MacKenzie)
Allow postmaster to listen on a specific IP address (David J. MacKenzie)
Allow socket path name to be specified in hostname by using leading slash
(David J. MacKenzie)
Allow CREATE DATABASE to specify template database (Tom)
New pg_dump --globals-only option (Peter E)

Check all those.

Allow BIGINT as synonym for INT8 (Peter E)
New BIT and BIT VARYING types (Adriaan Joubert, Tom, Peter E)
Fix CIDR output formatting (Tom)
New CIDR abbrev() function (Tom)
Write-Ahead Log (WAL) to provide crash recovery with less performance
overhead (Vadim)

Check

All removed.

New function manager call conventions (Tom)

Hmm, I've seen this before...

Just asking if we need to addition documentation for the change.

New configure --enable-syslog option (Peter E)
configure script moved to top level, not /src (Peter E)
New configure --with-python option (Peter E)
New OpenSSL configuration option (Magnus, Peter E)
Remove colon and semi-colon operators (Thomas)

All good.

Rename ichar() to chr() (Karel)

chr() is documented.

All removed.

Allow *BSD's libedit instead of readline (Peter)

*BSD should be "NetBSD". Not documented, yet.

Updated HISTORY & release.sgml.

-- 
  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
#6Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Denis Perchine (#4)
Re: Open 7.1 items

I have no idea. If we mention the existance of separate large object
files, they it has to be updated. If we don't mention it, then we can
remove the item.

[ Charset ISO-8859-1 unsupported, converting... ]

Store all large objects in a single table (Denis Perchine, Tom)

Hmmm... If you would point me to the document where changes should be done, I
will do them.

--
Sincerely Yours,
Denis Perchine

----------------------------------
E-Mail: dyp@perchine.com
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------

-- 
  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
#7Denis Perchine
dyp@perchine.com
In reply to: Bruce Momjian (#6)
1 attachment(s)
Re: [HACKERS] Open 7.1 items

On Saturday 10 February 2001 00:15, Bruce Momjian wrote:

I have no idea. If we mention the existance of separate large object
files, they it has to be updated. If we don't mention it, then we can
remove the item.

OK. Here it is. Note, that they are some changes in docs/TODO. I remove
thing which are not actual anymore. I am not sure that this is all, and that
my English is perfect. But I did a grep for docs dir, and this is only place
where I found implementation details.

Store all large objects in a single table (Denis Perchine, Tom)

Hmmm... If you would point me to the document where changes should be
done, I will do them.

--
Sincerely Yours,
Denis Perchine

----------------------------------
E-Mail: dyp@perchine.com
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------

Attachments:

doc.lo.patchtext/plain; charset=iso-8859-1; name=doc.lo.patchDownload
Index: TODO
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/doc/TODO,v
retrieving revision 1.377
diff -u -r1.377 TODO
--- TODO	2001/02/09 17:37:49	1.377
+++ TODO	2001/02/09 18:40:25
@@ -91,9 +91,6 @@
 * -Allow compression of large fields or a compressed field type
 * -Large objects
 	o -Fix large object mapping scheme, own typeid or reltype (Peter)
-	o -Not to stuff everything as files in a single directory, hash dirs
-	o -Allow large object vacuuming
-	o -Tables that start with xinv confused to be large objects
 * Add IPv6 capability to INET/CIDR types
 * -Fix improper masking of some inet/cidr types 
 * Add conversion function from text to inet
Index: src/sgml/lobj.sgml
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/doc/src/sgml/lobj.sgml,v
retrieving revision 1.15
diff -u -r1.15 lobj.sgml
--- src/sgml/lobj.sgml	2001/01/20 00:05:54	1.15
+++ src/sgml/lobj.sgml	2001/02/09 18:40:25
@@ -39,6 +39,8 @@
     Inversion large objects. (We will use  Inversion  and  large
     objects  interchangeably to mean the same thing in this
     section.)
+    Since <productname>PostgreSQL 7.1</productname> all large objects are placed in
+    one system table called pg_largeobject.
    </para>
   </sect1>
 
@@ -50,7 +52,9 @@
     objects  up  into  "chunks"  and  stores  the chunks in
     tuples in the database.  A B-tree index guarantees fast
     searches for the correct chunk number when doing random
-    access reads and writes.
+    access reads and writes. Having all large objects in one
+    table insures transaction safety for creating, and removing
+    of large objects.
    </para>
   </sect1>
 
#8Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Denis Perchine (#7)
Re: Re: [HACKERS] Open 7.1 items

[ Charset ISO-8859-1 unsupported, converting... ]

On Saturday 10 February 2001 00:15, Bruce Momjian wrote:

I have no idea. If we mention the existance of separate large object
files, they it has to be updated. If we don't mention it, then we can
remove the item.

OK. Here it is. Note, that they are some changes in docs/TODO. I remove
thing which are not actual anymore. I am not sure that this is all, and that
my English is perfect. But I did a grep for docs dir, and this is only place
where I found implementation details.

Items marked with '-' are removed when 7.1 is released.

I have applied the first part of your SGML change. I did not do the
second part because the large object single-file method was not added
for reliability only, but also for performance because we used to have a
file for every large object.

Store all large objects in a single table (Denis Perchine, Tom)

Hmmm... If you would point me to the document where changes should be
done, I will do them.

--
Sincerely Yours,
Denis Perchine

----------------------------------
E-Mail: dyp@perchine.com
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------

[ Attachment, skipping... ]

-- 
  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
#9Philip Warner
pjw@rhyme.com.au
In reply to: Bruce Momjian (#1)
Re: [HACKERS] Open 7.1 items

At 12:26 9/02/01 -0500, Bruce Momjian wrote:

Overhaul pg_dump (Philip Warner)
New pg_dump tar output option (Philip)
New pg_dump of large objects (Philip)
New pg_restore command (Philip)

The SGML docs for these have been there for a while - is there something
else I need to do?

----------------------------------------------------------------
Philip Warner | __---_____
Albatross Consulting Pty. Ltd. |----/ - \
(A.B.N. 75 008 659 498) | /(@) ______---_
Tel: (+61) 0500 83 82 81 | _________ \
Fax: (+61) 0500 83 82 82 | ___________ |
Http://www.rhyme.com.au | / \|
| --________--
PGP key available upon request, | /
and from pgp5.ai.mit.edu:11371 |/

#10Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Philip Warner (#9)
Re: [HACKERS] Open 7.1 items

At 12:26 9/02/01 -0500, Bruce Momjian wrote:

Overhaul pg_dump (Philip Warner)
New pg_dump tar output option (Philip)
New pg_dump of large objects (Philip)
New pg_restore command (Philip)

The SGML docs for these have been there for a while - is there something
else I need to do?

No, I just needed to know it was done. Removed.

-- 
  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
#11Tom Lane
tgl@sss.pgh.pa.us
In reply to: Peter Eisentraut (#3)
Re: [HACKERS] Re: Open 7.1 items

Bruce Momjian writes:

Allow location of Unix domain socket to be configurable (David J. MacKenzie)
Allow postmaster to listen on a specific IP address (David J. MacKenzie)
Allow socket path name to be specified in hostname by using leading slash
(David J. MacKenzie)
Allow CREATE DATABASE to specify template database (Tom)

The four items listed are all documented to at least some extent (ie,
I find them each in at least one place in the SGML docs). Whether they
are documented adequately is another question...

Fix CIDR output formatting (Tom)
New CIDR abbrev() function (Tom)

Those are documented.

regards, tom lane

#12Tom Lane
tgl@sss.pgh.pa.us
In reply to: Bruce Momjian (#1)
Re: [HACKERS] Open 7.1 items

separate client- and server-side includes, make optional install
target to install all of src/include

This is done now, at least as far as the source tree goes (dunno
how Lamar plans to handle it in the RPMs).

New file format for COPY BINARY (Tom)

Already documented, see COPY reference page.

New function manager call conventions (Tom)

This is probably adequately documented for now: xfunc.sgml gives an
overview and refers to src/backend/utils/fmgr/README for more details.
At some point it'd be nice to transform that README into SGML doco,
but I doubt I'll get to it before 7.1 goes out.

New template0 database that contains no user additions (Tom)

The CREATE DATABASE reference page discusses template0. Do we need to
discuss it anywhere else?

regards, tom lane

#13Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Tom Lane (#12)
Re: Re: [HACKERS] Open 7.1 items

Items removed. Thanks.

separate client- and server-side includes, make optional install
target to install all of src/include

This is done now, at least as far as the source tree goes (dunno
how Lamar plans to handle it in the RPMs).

New file format for COPY BINARY (Tom)

Already documented, see COPY reference page.

New function manager call conventions (Tom)

This is probably adequately documented for now: xfunc.sgml gives an
overview and refers to src/backend/utils/fmgr/README for more details.
At some point it'd be nice to transform that README into SGML doco,
but I doubt I'll get to it before 7.1 goes out.

New template0 database that contains no user additions (Tom)

The CREATE DATABASE reference page discusses template0. Do we need to
discuss it anywhere else?

regards, tom lane

-- 
  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
#14Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Tom Lane (#11)
Re: [HACKERS] Re: Open 7.1 items

Bruce Momjian writes:

Allow location of Unix domain socket to be configurable (David J. MacKenzie)
Allow postmaster to listen on a specific IP address (David J. MacKenzie)
Allow socket path name to be specified in hostname by using leading slash
(David J. MacKenzie)
Allow CREATE DATABASE to specify template database (Tom)

The four items listed are all documented to at least some extent (ie,
I find them each in at least one place in the SGML docs). Whether they
are documented adequately is another question...

I believe these are done. I did them when I applied the Uunet patches.
If I missed a spot, someone please let me know.

Items removed.

-- 
  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