|
| 1 | +Postgres95 1.02 Thu Aug 1 18:00:00 EDT 1996 |
| 2 | +------------------------------------------------------------- |
| 3 | + |
| 4 | +Source code maintainenance and development |
| 5 | + * worldwide team of volunteers |
| 6 | + * the source tree now in CVS at ftp.ki.net |
| 7 | + * developers mailing list - pg95-dev@ki.net |
| 8 | + |
| 9 | +Enhancements |
| 10 | + * psql (and underlying libpq library) now has many more options for |
| 11 | + formatting output, including HTML |
| 12 | + * pg_dump now output the schema and/or the data, with many fixes to |
| 13 | + enhance completeness. |
| 14 | + * psql used in place of monitor in administration shell scripts. |
| 15 | + monitor to be depreciated in next release. |
| 16 | + * date/time functions enhanced |
| 17 | + * NULL insert/update/comparison fixed/enhanced |
| 18 | + * TCL/TK lib and shell fixed to work with both tck7.4/tk4.0 and tcl7.5/tk4.1 |
| 19 | + |
| 20 | +Bug Fixes (almost too numerous to mention) |
| 21 | + * indexes |
| 22 | + * storage management |
| 23 | + * check for NULL pointer before dereferencing |
| 24 | + * Makefile fixes |
| 25 | + |
| 26 | +New Ports |
| 27 | + * added SolarisX86 port |
| 28 | + * added BSDI 2.1 port |
| 29 | + * added DGUX port |
| 30 | + |
| 31 | +Contributors (appologies to any missed) |
| 32 | + * Kurt J. Lidl <lidl@va.pubnix.com> |
| 33 | + (missed in first run, but no less important) |
| 34 | + * Erich Stamberger <eberger@gewi.kfunigraz.ac.at> |
| 35 | + * Jason Wright <jason@shiloh.vnet.net> |
| 36 | + * Cees de Groot <C.deGroot@inter.NL.net> |
| 37 | + * ernst.molitor@uni-bonn.de |
| 38 | + * michael.siebenborn@ae3.Hypo.DE (Michael Siebenborn (6929)) |
| 39 | + * Brian E. Gallew <geek+@cmu.edu> |
| 40 | + * Vadim B. Mikheev <vadim@sable.krasnoyarsk.su> |
| 41 | + * Adam Sussman <myddryn@vidya.com> |
| 42 | + * Chris Dunlop <chris@onthe.net.au> |
| 43 | + * Marc G. Fournier <scrappy@ki.net> |
| 44 | + * Dan McGuirk <mcguirk@indirect.com> |
| 45 | + * Dr_George_D_Detlefsen <drgeorge@ilt.com> |
| 46 | + * Erich Stamberger <eberger@gewi.kfunigraz.ac.at> |
| 47 | + * Massimo Dal Zotto <dz@cs.unitn.it> |
| 48 | + * Randy Kunkee <kunkee@Starbase.NeoSoft.COM> |
| 49 | + * Rick Weldon <rick@wisetech.com> |
| 50 | + * Thomas van Reimersdahl <reimersd@dali.techinfo.rwth-aachen.de> |
| 51 | + * david bennett <dave@bensoft.com> |
| 52 | + * ernst.molitor@uni-bonn.de |
| 53 | + * Julian Assange <proff@suburbia.net> |
| 54 | + * Bruce Momjian <maillist@candle.pha.pa.us> |
| 55 | + * Paul "Shag" Walmsley <ccshag@cclabs.missouri.edu> |
| 56 | + * "Alistair G. Crooks" <azcb0@sde.uts.amdahl.com> |
| 57 | + |
| 58 | +Postgres95 1.01 Fri Feb 23 18:20:36 PST 1996 |
| 59 | +------------------------------------------------------------- |
| 60 | +Incompatibilities: |
| 61 | + * 1.01 is backwards compatible with 1.0 database provided the user |
| 62 | + follow the steps outlined in the MIGRATION_from_1.0_to_1.01 file. |
| 63 | + If those steps are not taken, 1.01 is not compatible with 1.0 database. |
| 64 | + |
| 65 | +Enhancements: |
| 66 | + * added PQdisplayTuples() to libpq and changed monitor and psql to use it |
| 67 | + * added NeXT port (requires SysVIPC implementation) |
| 68 | + * added CAST .. AS ... syntax |
| 69 | + * added ASC and DESC keywords |
| 70 | + * added 'internal' as a possible language for CREATE FUNCTION |
| 71 | + internal functions are C functions which have been statically linked |
| 72 | + into the postgres backend. |
| 73 | + * a new type "name" has been added for system identifiers (table names, |
| 74 | + attribute names, etc.) This replaces the old char16 type. The |
| 75 | + of name is set by the NAMEDATALEN #define in src/Makefile.global |
| 76 | + * a readable reference manual that describes the query language. |
| 77 | + * added host-based access control. A configuration file ($PGDATA/pg_hba) |
| 78 | + is used to hold the configuration data. If host-based access control |
| 79 | + is not desired, comment out HBA=1 in src/Makefile.global. |
| 80 | + * changed regex handling to be uniform use of Henry Spencer's regex code |
| 81 | + regardless of platform. The regex code is included in the distribution |
| 82 | + * added functions and operators for case-insensitive regular expressions. |
| 83 | + The operators are ~* and !~*. |
| 84 | + * pg_dump uses COPY instead of SELECT loop for better performance |
| 85 | + |
| 86 | +Bug fixes: |
| 87 | + * fixed an optimizer bug that was causing core dumps when |
| 88 | + functions calls were used in comparisons in the WHERE clause |
| 89 | + * changed all uses of getuid to geteuid so that effective uids are used |
| 90 | + * psql now returns non-zero status on errors when using -c |
| 91 | + * applied public patches 1-14 |
| 92 | + |
| 93 | +Postgres95 1.0 Tue Sep 5 11:24:11 PDT 1995 |
| 94 | +------------------------------------------------------------- |
| 95 | + |
| 96 | +Copyright change: |
| 97 | + * The copyright of Postgres 1.0 has been loosened to be freely modifiable |
| 98 | + and modifiable for any purpose. Please read the COPYRIGHT file. |
| 99 | + Thanks to Professor Michael Stonebraker for making this possible. |
| 100 | + |
| 101 | +Incompatibilities: |
| 102 | + * date formats have to be MM-DD-YYYY (or DD-MM-YYYY if you're using |
| 103 | + EUROPEAN STYLE). This follows SQL-92 specs. |
| 104 | + * "delimiters" is now a keyword |
| 105 | + |
| 106 | +Enhancements: |
| 107 | + * sql LIKE syntax has been added |
| 108 | + * copy command now takes an optional USING DELIMITER specification. |
| 109 | + delimiters can be any single-character string. |
| 110 | + * IRIX 5.3 port has been added. |
| 111 | + Thanks to Paul Walmsley (ccshag@everest.cclabs.missouri.edu) and others. |
| 112 | + * updated pg_dump to work with new libpq |
| 113 | + * \d has been added psql |
| 114 | + Thanks to Keith Parks (emkxp01@mtcc.demon.co.uk) |
| 115 | + * regexp performance for architectures that use POSIX regex has been |
| 116 | + improved due to caching of precompiled patterns. |
| 117 | + Thanks to Alistair Crooks (agc@uts.amdahl.com) |
| 118 | + * a new version of libpq++ |
| 119 | + Thanks to William Wanders (wwanders@sci.kun.nl) |
| 120 | + |
| 121 | +Bug fixes: |
| 122 | + * arbitrary userids can be specified in the createuser script |
| 123 | + * \c to connect to other databases in psql now works. |
| 124 | + * bad pg_proc entry for float4inc() is fixed |
| 125 | + * users with usecreatedb field set can now create databases without |
| 126 | + having to be usesuper |
| 127 | + * remove access control entries when the entry no longer has any |
| 128 | + permissions |
| 129 | + * fixed non-portable datetimes implementation |
| 130 | + * added kerberos flags to the src/backend/Makefile |
| 131 | + * libpq now works with kerberos |
| 132 | + * typographic errors in the user manual have been corrected. |
| 133 | + * btrees with multiple index never worked, now we tell you they don't |
| 134 | + work when you try to use them |
| 135 | + |
| 136 | + |
| 137 | +Postgres95 Beta 0.03 Fri Jul 21 14:49:31 PDT 1995 |
| 138 | +------------------------------------------------------ |
| 139 | +Incompatible changes: |
| 140 | + * BETA-0.3 IS INCOMPATIBLE WITH DATABASES CREATED WITH PREVIOUS VERSIONS |
| 141 | + (due to system catalog changes and indexing structure changes). |
| 142 | + * double-quote (") is deprecated as a quoting character for string literals; |
| 143 | + you need to convert them to single quotes ('). |
| 144 | + * name of aggregates (eg. int4sum) are renamed in accordance with the |
| 145 | + SQL standard (eg. sum). |
| 146 | + * CHANGE ACL syntax is replaced by GRANT/REVOKE syntax. |
| 147 | + * float literals (eg. 3.14) are now of type float4 (instead of float8 in |
| 148 | + previous releases); you might have to do typecasting if you depend on it |
| 149 | + being of type float8. If you neglect to do the typecasting and you assign |
| 150 | + a float literal to a field of type float8, you may get incorrect values |
| 151 | + stored! |
| 152 | + * LIBPQ has been totally revamped so that frontend applications |
| 153 | + can connect to multiple backends |
| 154 | + * the usesysid field in pg_user has been changed from int2 to int4 to |
| 155 | + allow wider range of Unix user ids. |
| 156 | + * the netbsd/freebsd/bsd o/s ports have been consolidated into a |
| 157 | + single BSD44_derived port. (thanks to Alistair Crooks) |
| 158 | + |
| 159 | +SQL standard-compliance (the following details changes that makes postgres95 |
| 160 | +more compliant to the SQL-92 standard): |
| 161 | + * the following SQL types are now built-in: smallint, int(eger), float, real, |
| 162 | + char(N), varchar(N), date and time. |
| 163 | + |
| 164 | + The following are aliases to existing postgres types: |
| 165 | + smallint -> int2 |
| 166 | + integer, int -> int4 |
| 167 | + float, real -> float4 |
| 168 | + char(N) and varchar(N) are implemented as truncated text types. In |
| 169 | + addition, char(N) does blank-padding. |
| 170 | + * single-quote (') is used for quoting string literals; '' (in addition to |
| 171 | + \') is supported as means of inserting a single quote in a string |
| 172 | + * SQL standard aggregate names (MAX, MIN, AVG, SUM, COUNT) are used |
| 173 | + (Also, aggregates can now be overloaded, i.e. you can define your |
| 174 | + own MAX aggregate to take in a user-defined type.) |
| 175 | + * CHANGE ACL removed. GRANT/REVOKE syntax added. |
| 176 | + - Privileges can be given to a group using the "GROUP" keyword. |
| 177 | + For example: |
| 178 | + GRANT SELECT ON foobar TO GROUP my_group; |
| 179 | + The keyword 'PUBLIC' is also supported to mean all users. |
| 180 | + |
| 181 | + Privileges can only be granted or revoked to one user or group |
| 182 | + at a time. |
| 183 | + |
| 184 | + "WITH GRANT OPTION" is not supported. Only class owners can change |
| 185 | + access control |
| 186 | + - The default access control is to to grant users readonly access. |
| 187 | + You must explicitly grant insert/update access to users. To change |
| 188 | + this, modify the line in |
| 189 | + src/backend/utils/acl.h |
| 190 | + that defines ACL_WORLD_DEFAULT |
| 191 | + |
| 192 | +Bug fixes: |
| 193 | + * the bug where aggregates of empty tables were not run has been fixed. Now, |
| 194 | + aggregates run on empty tables will return the initial conditions of the |
| 195 | + aggregates. Thus, COUNT of an empty table will now properly return 0. |
| 196 | + MAX/MIN of an empty table will return a tuple of value NULL. |
| 197 | + * allow the use of \; inside the monitor |
| 198 | + * the LISTEN/NOTIFY asynchronous notification mechanism now work |
| 199 | + * NOTIFY in rule action bodies now work |
| 200 | + * hash indices work, and access methods in general should perform better. |
| 201 | + creation of large btree indices should be much faster. (thanks to Paul |
| 202 | + Aoki) |
| 203 | + |
| 204 | +Other changes and enhancements: |
| 205 | + * addition of an EXPLAIN statement used for explaining the query execution |
| 206 | + plan (eg. "EXPLAIN SELECT * FROM EMP" prints out the execution plan for |
| 207 | + the query). |
| 208 | + * WARN and NOTICE messages no longer have timestamps on them. To turn on |
| 209 | + timestamps of error messages, uncomment the line in |
| 210 | + src/backend/utils/elog.h: |
| 211 | + /* define ELOG_TIMESTAMPS */ |
| 212 | + * On an access control violation, the message |
| 213 | + "Either no such class or insufficient privilege" |
| 214 | + will be given. This is the same message that is returned when |
| 215 | + a class is not found. This dissuades non-privileged users from |
| 216 | + guessing the existence of privileged classes. |
| 217 | + * some additional system catalog changes have been made that are not |
| 218 | + visible to the user. |
| 219 | + |
| 220 | +libpgtcl changes: |
| 221 | + * The -oid option has been added to the "pg_result" tcl command. |
| 222 | + pg_result -oid returns oid of the last tuple inserted. If the |
| 223 | + last command was not an INSERT, then pg_result -oid returns "". |
| 224 | + * the large object interface is available as pg_lo* tcl commands: |
| 225 | + pg_lo_open, pg_lo_close, pg_lo_creat, etc. |
| 226 | + |
| 227 | +Portability enhancements and New Ports: |
| 228 | + * flex/lex problems have been cleared up. Now, you should be able to use |
| 229 | + flex instead of lex on any platforms. We no longer make assumptions of |
| 230 | + what lexer you use based on the platform you use. |
| 231 | + * The Linux-ELF port is now supported. Various configuration have been |
| 232 | + tested: The following configuration is known to work: |
| 233 | + kernel 1.2.10, gcc 2.6.3, libc 4.7.2, flex 2.5.2, bison 1.24 |
| 234 | + with everything in ELF format, |
| 235 | + |
| 236 | +New utilities: |
| 237 | + * ipcclean added to the distribution |
| 238 | + ipcclean usually does not need to be run, but if your backend crashes |
| 239 | + and leaves shared memory segments hanging around, ipcclean will |
| 240 | + clean them up for you. |
| 241 | + |
| 242 | +New documentation: |
| 243 | + * the user manual has been revised and libpq documentation added. |
| 244 | + |
| 245 | +Postgres95 Beta 0.02 (Thu May 25 16:54:46 PDT 1995) |
| 246 | +------------------------------------------------------ |
| 247 | +Incompatible changes: |
| 248 | + * The SQL statement for creating a database is 'CREATE DATABASE' instead |
| 249 | + of 'CREATEDB'. Similarly, dropping a database is 'DROP DATABASE' instead |
| 250 | + of 'DESTROYDB'. However, the names of the executables 'createdb' and |
| 251 | + 'destroydb' remain the same. |
| 252 | + |
| 253 | +New tools: |
| 254 | + * pgperl - a Perl (4.036) interface to Postgres95 |
| 255 | + * pg_dump - a utility for dumping out a postgres database into a |
| 256 | + script file containing query commands. The script files are in a ASCII |
| 257 | + format and can be used to reconstruct the database, even on other |
| 258 | + machines and other architectures. (Also good for converting |
| 259 | + a Postgres 4.2 database to Postgres95 database.) |
| 260 | + |
| 261 | +The following ports have been incorporated into postgres95-beta-0.02: |
| 262 | + * the NetBSD port by Alistair Crooks |
| 263 | + * the AIX port by Mike Tung |
| 264 | + * the Windows NT port by Jon Forrest (more stuff but not done yet) |
| 265 | + * the Linux ELF port by Brian Gallew |
| 266 | + |
| 267 | +The following bugs have been fixed in postgres95-beta-0.02: |
| 268 | + * new lines not escaped in COPY OUT and problem with COPY OUT when first |
| 269 | + attribute is a '.' |
| 270 | + * cannot type return to use the default user id in createuser |
| 271 | + * SELECT DISTINCT on big tables crashes |
| 272 | + * Linux installation problems |
| 273 | + * monitor doesn't allow use of 'localhost' as PGHOST |
| 274 | + * psql core dumps when doing \c or \l |
| 275 | + * the "pgtclsh" target missing from src/bin/pgtclsh/Makefile |
| 276 | + * libpgtcl has a hard-wired default port number |
| 277 | + * SELECT DISTINCT INTO TABLE hangs |
| 278 | + * CREATE TYPE doesn't accept 'variable' as the internallength |
| 279 | + * wrong result using more than 1 aggregate in a SELECT |
| 280 | + |
| 281 | +Postgres95 Beta 0.01 (Mon May 1 19:03:10 PDT 1995) |
| 282 | +------------------------------------------------------ |
| 283 | +Initial release. |
0 commit comments