HISTORY 49.1 KB
Newer Older
B
Bruce Momjian 已提交
1
PostgreSQL 6.4               Sat Oct 24 00:41:35 EDT 1998
2 3 4
=========================================================

A dump/restore is required for those wishing to migrate data from
B
Bruce Momjian 已提交
5 6
previous releases of PostgreSQL.  You may also use the new pg_upgrade
utility to avoid a dump/reload.
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Bug Fixes
---------
Fix for a tiny memory leak in PQsetdb/PQfinish(Bryan)
Remove char2-16 data types, use char/varchar(Darren)
Pqfn not handles a NOTICE message(Anders)
Short-term locks now retry locking at random times(David)
Fix up "ISO-style" timespan decoding and encoding(Thomas)
Fix problem with table drop after rollback of transaction(Vadim)
Change error message and remove non-functional update message(Vadim)
Fix for COPY array checking
Fix for SELECT 1 UNION SELECT NULL
Fix for buffer leaks in large object calls(Pascal)
Change owner from oid to int4 type(Bruce)
Fix a bug in the oracle compatibility functions btrim() ltrim() and rtrim()
Fix for usernames longer than eight characters(Tom)
Fix for shared invalidation cache overflow(Massimo)
Prevent file descriptor leaks in failed COPY's(Bruce)
B
Bruce Momjian 已提交
25
Fix problem with username/passwords over 8 characters(Tom)
26 27 28

Enhancements
------------
B
Bruce Momjian 已提交
29
Upgrade ecpg and ecpglib,see src/interfaces/ecpc/ChangeLog(Michael)
30
Show the index used in an explain(Zeugswetter)
B
Bruce Momjian 已提交
31
Multi-byte awareness of many data types and functions, via configure(Tatsuo)
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
New configure --with-mb option(Tatsuo)
New initdb --pgencoding option(Tatsuo)
New createdb -E multibyte option(Tatsuo)
Select version(); now returns PostgreSQL version(Jeroen)
Libpq now allows asynchronous clients(Tom)
Allow cancel from client of backend query(Tom)
Psql now cancels query with Control-C(Tom)
Define "tz_hour" and "tz_minute" arguments to date_part()(Thomas)
Add routines to convert between varchar and bpchar(Thomas)
Add routines to allow sizing of varchar and bpchar into target columns(Thomas)
Add bit flags to support timezonehour and minute in data retrieval(Thomas)
Allow more variations on valid floating point numbers (e.g. ".1", "1e6")(Thomas)
Fixes for unary minus parsing with leading spaces(Thomas)
Implement TIMEZONE_HOUR, TIMEZONE_MINUTE per SQL92 specs(Thomas)
Check for and properly ignore FOREIGN KEY column constraints(Thomas)
Define USER as synonym for CURRENT_USER per SQL92 specs(Thomas)
Enable HAVING clause but no fixes elsewhere yet.
Make "char" type a synonym for "char(1)" (actually implemented as bpchar)(Thomas)
Save string type if specified for DEFAULT clause handling(Thomas)
Coerce operations involving different data types(Thomas)
Allow some index use for columns of different types(Thomas)
Add capabilities for automatic type conversion(Thomas)
Cleanups for large objects, so file is truncated on open(Peter)
Readline cleanups(Tom)
Allow psql  \f \ to make spaces as delimiter(Bruce)
Pass pg_attribute.atttypmod to the frontend for column field lengths(Tom,Bruce)
Msql compatibility library in /contrib(Aldrin)
Remove the requirement that ORDER/GROUP BY clause identifiers be 
included in the target list(David)
Convert columns to match columns in UNION clauses(Thomas)
Remove fork()/exec() and only do fork()(Bruce)
Jdbc cleanups(Peter)
Show backend status on ps command line(only works on some platforms)(Bruce)
Pg_hba.conf now has a sameuser option in the database field
Make lo_unlink take oid param, not int4
New DISABLE_COMPLEX_MACRO for compilers that can't handle our macros(Bruce)
Libpgtcl now gets async notifies from libpq(Tom)
B
Bruce Momjian 已提交
69
libpgtcl cleanups(Tom)
70 71 72 73 74 75 76 77 78 79
New locale patch, see docs/README/locale(Oleg)
Fix for pg_dump so CONSTRAINT and CHECK syntax is correct(ccb)
New contrib/lo code for large object orphan removal(Peter)
New psql command "SET CLIENT_ENCODING TO 'encoding'" for multi-bytes
feature, see /doc/README.mb(Tatsuo)
/contrib/noupdate code to revoke update permission on a column
Libpq can now be compiled on win32(Magnus)
Add PQsetdbLogin() in libpq
Two styles we agreed upon for database descriptors(Thomas)
New 8-byte integer type, checked by configure for OS support(Thomas)
B
Bruce Momjian 已提交
80
Better support for quited table/column names(Thomas)
81
Surround table and column names with double-quotes(Thomas) in generated 
B
Bruce Momjian 已提交
82
	sql code to preserve case (SQL92 syntax)(Thomas)
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
New libpqrequestCancel(Tom)
PQreset() now works with passwords(Tom)
Handle case of GROUP BY target list column number out of range(David)
Allow UNION in subselects
Add auto-size to screen to \d? commands(Bruce)
Use UNION to show all \d? results in one query(Bruce)
Add \d? field search feature(Bruce)
Pg_dump issues fewer \connect requests(Tom)
Document pg_dump -z flag in manual page(Tom)
Add HAVING clause with full support for subselects and unions(Stephan)
Full text indexing routines in contrib/fulltextindex(Marteen)
Transaction ids now stored in shared memory(Vadim)
New PGCLIENTENCODING when issuing COPY command(Tatsuo)
Support for SQL92 syntax "SET NAMES"(Tatsuo)
Support for LATIN2-5(Tatsuo)
Add UNICODE regression test case(Tatsuo)
Lock manager cleanup, new locking modes for LLL(Vadim)
Allow index use with OR clauses(Bruce)
Allows "SELECT NULL ORDER BY 1;"
Explain VERBOSE prints the plan, and now pretty-prints the plan to
the postmaster log file(Bruce)
Add Indices display to \d command(Bruce)
Allow GROUP BY on functions(David)
New pg_class.relkind for large objects(Bruce)
New way to send libpq NOTICE messages to a different location(Tom)
New \w write command to psql(Bruce)
New /contrib/findoidjoins scans oid columns to find join relationships(Bruce)
Allow binary-compatible indices to be considered when checking for valid
indices for restriction clauses containing a constant(Thomas)
New ISBN/ISSN code in /contrib/isbn_issn
Allow NOT LIKE, IN, NOT IN, BETWEEN, and NOT BETWEEN constraint(Thomas)
New rewrite system fixes many problems with rules and views(Jan)
	* Rules on relations work
	* Event qualifications on insert/update/delete work
	* New OLD variable to reference CURRENT, CURRENT will be remove in future
	* Update rules can reference NEW and OLD in rule qualifications/actions
	* Insert/update/delete rules on views work
	* Multiple rule actions are now supported, surrounded by parentheses
	* Regular users can create views/rules on tables they have RULE permits
	* Rules and views inherit the permissions on the creator
	* No rules at the column level
	* No UPDATE NEW/OLD rules
B
Bruce Momjian 已提交
125
	* New pg_tables, pg_indexes, pg_rules and pg_views system views
126 127
	* Only a single action on SELECT rules
	* Total rewrite overhaul, perhaps for 6.5
B
Bruce Momjian 已提交
128 129 130 131
	* handle subselects
	* handle aggregates on views
	* handle insert into select from view works
	* 
132 133 134 135 136 137 138 139 140 141 142 143

System indexes are now multi-key(Bruce)
Oidint2, oidint4, and oidname types are removed(Bruce)
Use system cache for more system table lookups(Bruce)
New backend programming language PL/pgSQL in backend/pl(Jan)
New SERIAL data type, auto-creates sequence/index(Thomas)
Enable assert checking without a recompile(Massimo)
User lock enhancements(Massimo)
New setval() command to set sequence value(Massimo)
Auto-remove unix socket file on startup if no postmaster running(Massimo)
Conditional trace package(Massimo)
New UNLISTEN command(Massimo)
B
Bruce Momjian 已提交
144
Psql and libpq now compile under win32 using win32.mak(Magnus)
145 146
Lo_read no longer stores trailing NULL(Bruce)
Identifiers are now truncated to 31 characters internally(Bruce)
B
Bruce Momjian 已提交
147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164
Createuser options now availble on the command line
PL/pgSQL backend programming language(Jan)
Code for 64-bit integer supported added, configure tested, int8 type(Thomas)
Prevent file descriptor leaf from failed COPY(Bruce)
New pg_upgrade command(Bruce)
Updated /contrib directories(Massimo)
New CREATE TABLE DEFAULT VALUES statement available(Thomas)
New INSERT INTO TABLE DEFAULT VALUES statement available(Thomas)
New DECLARE and FETCH feature(Thomas)
libpq's internal structures now not exported(Tom)
Allow up to 8 key indexes(Bruce)
Remove ARCHIVE keyword, that is no longer used(Thomas)
pg_dump -n flag to supress quotes around indentifiers
disable system columns for views(Jan)
net INET and CIDR types for network addresses(TomH, Paul)
no more double quotes in psql output
pg_dump now dumps views(Terry)
new SET QUERY_LIMIT(Tatsuo,Jan)
165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183

Source Tree Changes
-------------------
/contrib cleanup(Jun)
Inline some small functions called for every row(Bruce)
Alpha/linux fixes
Hp/UX cleanups(Tom)
Multi-byte regression tests(Soonmyung.)
Remove --disabled options from configure
Define PGDOC to use POSTGRESDIR by default
Make regression optional
Remove extra braces code to pgindent(Bruce)
Add bsdi shared library support(Bruce)
New --without-CXX support configure option(Brook)
New FAQ_CVS
Update backend flowchart in tools/backend(Bruce)
Change atttypmod from int16 to int32(Bruce, Tom)
Getrusage() fix for platforms that do not have it(Tom)
Add PGUSER to libpq man page
B
Bruce Momjian 已提交
184
NS32K platform fixes(Phil Nelson, John Buller)
185 186 187 188
Sco 7/UnixWare 2.x fixes(Billy,others)
Sparc/Solaris 2.5 fixes(Ryan)
Pgbuiltin.3 is obsolete, move to doc files(Thomas)
Even more documention(Thomas)
B
Bruce Momjian 已提交
189 190 191 192 193 194 195
Nextstep support(Jacek)
Aix support(David)
pginterface manual page(Bruce)
shared libraries all have version numbers
merged all OS-specific shared library defines into one file
smarter TCL/TK configuration checking(Billy)
smarter perl configuration(Brook)
196 197 198



B
Bruce Momjian 已提交
199
PostgreSQL 6.3.2             Tue Apr  7 16:53:16 EDT 1998
200
=========================================================
B
Bruce Momjian 已提交
201 202 203 204 205 206 207 208 209 210 211 212

A dump/restore is NOT required for those running 6.3.1.  A 
'make distclean', 'make', and 'make install' is all that is required.
This last step should be performed while the postmaster is not running.
You should re-link any custom applications that use PostgreSQL libraries.

Changes
-------
configure detection improvements for tcl/tk(Brook Milligan, Alvin)
Manual page improvements(Bruce)
BETWEEN and LIKE fix(Thomas)
fix for psql \connect used by pg_dump(Oliver Elphick)
213
New odbc driver
B
Bruce Momjian 已提交
214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229
pgaccess, version 0.86
qsort removed, now uses libc version, cleanups(Jeroen)
fix for buffer over-runs detected(Maurice Gittens)
fix for buffer overrun in libpgtcl(Randy Kunkee)
fix for UNION with DISTINCT or ORDER BY(Bruce)
gettimeofday configure check(Doug Winterburn)
Fix "indexes not used" bug(Vadim)
docs additions(Thomas)
Fix for backend memory leak(Bruce)
libreadline cleanup(Erwan MAS)
Remove DISTDIR(Bruce)
Makefile dependency cleanup(Jeroen van Vianen)
ASSERT fixes(Bruce)



B
Bruce Momjian 已提交
230
PostgreSQL 6.3.1             Mon Mar 23 10:21:52 EST 1998
231
=========================================================
B
Bruce Momjian 已提交
232

B
Bruce Momjian 已提交
233 234 235 236
A dump/restore is NOT required for those running 6.3.  A 
'make distclean', 'make', and 'make install' is all that is required.
This last step should be performed while the postmaster is not running.
You should re-link any custom applications that use PostgreSQL libraries.
B
Bruce Momjian 已提交
237 238 239 240 241 242 243

Changes
-------
ecpg cleanup/fixes, now version 1.1(Michael Meskes)
pg_user cleanup(Bruce)
large object fix for pg_dump and tclsh(alvin@camberlo.demon.co.uk)
LIKE fix for multiple adjacent underscores
B
Bruce Momjian 已提交
244
LIKE/BETWEEN fix for having function call as target(Thomas)
B
Bruce Momjian 已提交
245 246 247 248 249 250 251
fix for redefining builtin functions(Thomas)
ultrix4 cleanup
upgrade to pg_access 0.83
updated CLUSTER manual page
multi-byte character set support, see doc/README.mb(Tatsuo)
configure --with-pgport fix
pg_ident fix
B
Bruce Momjian 已提交
252
big-endian fix for backend communications(Kataoka)
B
Bruce Momjian 已提交
253
SUBSTR() and substring() fix(Jan)
B
Bruce Momjian 已提交
254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270
several jdbc fixes(Peter)
libpgtcl improvements, see libptcl/README(Randy Kunkee)
Fix for "Datasize = 0" error(Vadim)
Prevent \do from wrapping(Bruce)
Remove duplicate Russian character set entries
Sunos4 cleanup
Allow optional TABLE keyword in LOCK and SELECT INTO(Thomas)
CREATE SEQUENCE options to allow a negative integer(Thomas)
Add "PASSWORD" as an allowed column identifier(Thomas)
Add checks for UNION target fields(Bruce)
Fix Alpha port(Dwayne Bailey)
Fix for text arrays containing quotes(Doug Gibson)
Solaris compile fix(Albert Chin-A-Young)
Better identify tcl and tk libs and includes(Bruce)



B
Bruce Momjian 已提交
271
PostgreSQL 6.3               Sun Mar  1 14:57:30 EST 1998
272
=========================================================
B
Bruce Momjian 已提交
273 274 275 276

A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.

B
Bruce Momjian 已提交
277 278 279
* The migration/6.2.1_to_6.3 file contains a detailed description 
* of the feature changes in this release, and is recommended reading.

B
Bruce Momjian 已提交
280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311
Bug Fixes
---------
Fix binary cursors broken by MOVE implementation(Vadim)
Fix for tcl library crash(Jan)
Fix for array handling, from Gerhard Hintermayer
Fix acl error, and remove duplicate pqtrace(Bruce)
Fix psql \e for empty file(Bruce)
Fix for textcat on varchar() fields(Bruce)
Fix for DBT Sendproc (Zeugswetter Andres)
Fix vacuum analyze syntax problem(Bruce)
Fix for international identifiers(Tatsuo)
Fix aggregates on inherited tables(Bruce)
Fix substr() for out-of-bounds data
Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2)(Bruce)
Fix notty output to show status result.  -q option still turns it off(Bruce)
Fix for count(*), aggs with views and multiple tables and sum(3)(Bruce)
Fix cluster(Bruce)
Fix for PQtrace start/stop several times(Bruce)
Fix a variety of locking problems like newer lock waiters getting
	lock before older waiters, and having readlock people not share
	locks if a writer is waiting for a lock, and waiting writers not
	getting priority over waiting readers(Bruce)
Fix crashes in psql when executing queries from external files(James)
Fix problem with multiple order by columns, with the first one having
	NULL values(Jeroen)
Use correct hash table support functions for float8 and int4(Thomas)
Re-enable JOIN= option in CREATE OPERATOR statement (Thomas)
Change precedence for boolean operators to match expected behavior(Thomas)
Generate elog(ERROR) on over-large integer(Bruce)
Allow multiple-argument functions in constraint clauses(Thomas)
Check boolean input literals for 'true','false','yes','no','1','0'
	and throw elog(ERROR) if unrecognized(Thomas)
B
Bruce Momjian 已提交
312
Major large objects fix
B
Bruce Momjian 已提交
313 314
Fix for GROUP BY showing duplicates(Vadim)
Fix for index scans in MergeJion(Vadim)
B
Bruce Momjian 已提交
315 316 317

Enhancements
------------
B
Bruce Momjian 已提交
318 319 320
Subselects with EXISTS, IN, ALL, ANY keywords (Vadim, Bruce, Thomas)
New User Manual(Thomas, others)
Speedup by inlining some frequently-called functions
B
Bruce Momjian 已提交
321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395
Real deadlock detection, no more timeouts(Bruce)
Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, 
	CURRENT_USER(Thomas)
Modify constraint syntax to be SQL92-compliant(Thomas)
Implement SQL92 PRIMARY KEY and UNIQUE clauses using indices(Thomas)
Recognize SQL92 syntax for FOREIGN KEY. Throw elog notice(Thomas)
Allow NOT NULL UNIQUE constraint clause (each allowed separately before)(Thomas)
Allow Postgres-style casting ("::") of non-constants(Thomas)
Add support for SQL3 TRUE and FALSE boolean constants(Thomas)
Support SQL92 syntax for IS TRUE/IS FALSE/IS NOT TRUE/IS NOT FALSE(Thomas)
Allow shorter strings for boolean literals (e.g. "t", "tr", "tru")(Thomas)
Allow SQL92 delimited identifiers(Thomas)
Implement SQL92 binary and hexadecimal string decoding (b'10' and x'1F')(Thomas)
Support SQL92 syntax for type coercion of literal strings
	(e.g. "DATETIME 'now'")(Thomas)
Add conversions for int2, int4, and OID types to and from text(Thomas)
Use shared lock when building indices(Vadim)
Free memory allocated for an user query inside transaction block after
	this query is done, was turned off in <= 6.2.1(Vadim)
New SQL statement CREATE PROCEDURAL LANGUAGE(Jan)
New PostgreSQL Procedural Language (PL) backend interface(Jan)
Rename pg_dump -H option to -h(Bruce)
Add Java support for passwords, European dates(Peter)
Use indices for LIKE and ~, !~ operations(Bruce)
Add hash functions for datetime and timespan(Thomas)
Time Travel removed(Vadim, Bruce)
Add paging for \d and \z, and fix \i(Bruce)
Add Unix domain socket support to backend and to frontend library(Goran)
Implement CREATE DATABASE/WITH LOCATION and initlocation utility(Thomas)
Allow more SQL92 and/or Postgres reserved words as column identifiers(Thomas)
Augment support for SQL92 SET TIME ZONE...(Thomas)
SET/SHOW/RESET TIME ZONE uses TZ backend environment variable(Thomas)
Implement SET keyword = DEFAULT and SET TIME ZONE DEFAULT(Thomas)
Enable SET TIME ZONE using TZ environment variable(Thomas)
Add PGDATESTYLE environment variable to frontend and backend initialization(Thomas)
Add PGTZ, PGCOSTHEAP, PGCOSTINDEX, PGRPLANS, PGGEQO
	frontend library initialization environment variables(Thomas)
Regression tests time zone automatically set with "setenv PGTZ PST8PDT"(Thomas)
Add pg_description table for info on tables, columns, operators, types, and
	aggregates(Bruce)
Increase 16 char limit on system table/index names to 32 characters(Bruce)
Rename system indices(Bruce)
Add 'GERMAN' option to SET DATESTYLE(Thomas)
Define an "ISO-style" timespan output format with "hh:mm:ss" fields(Thomas)
Allow fractional values for delta times (e.g. '2.5 days')(Thomas)
Validate numeric input more carefully for delta times(Thomas)
Implement day of year as possible input to date_part()(Thomas)
Define timespan_finite() and text_timespan() functions(Thomas)
Remove archive stuff(Bruce)
Allow for a pg_password authentication database that is separate from
	the system password file(Todd)
Dump ACLs, GRANT, REVOKE permissions(Matt)
Define text, varchar, and bpchar string length functions(Thomas)
Fix Query handling for inheritance, and cost computations(Bruce)
Implement CREATE TABLE/AS SELECT (alternative to SELECT/INTO)(Thomas)
Allow NOT, IS NULL, IS NOT NULL in constraints(Thomas)
Implement UNIONs for SELECT(Bruce)
Add UNION, GROUP, DISTINCT to INSERT(Bruce)
varchar() stores only necessary bytes on disk(Bruce)
Fix for BLOBs(Peter)
Mega-Patch for JDBC...see README_6.3 for list of changes(Peter)
Remove unused "option" from PQconnectdb()
New LOCK command and lock manual page describing deadlocks(Bruce)
Add new psql \da, \dd, \df, \do, \dS, and \dT commands(Bruce)
Enhance psql \z to show sequences(Bruce)
Show NOT NULL and DEFAULT in psql \d table(Bruce)
New psql .psqlrc file startup(Andrew)
Modify sample startup script in contrib/linux to show syslog(Thomas)
New types for IP and MAC addresses in contrib/ip_and_mac(TomH)
Unix system time conversions with date/time types in contrib/unixdate(Thomas)
Update of contrib stuff(Massimo)
Add Unix socket support to DBD::Pg(Goran)
New python interface (PyGreSQL 2.0)(D'Arcy)
New frontend/backend protocol has a version number, network byte order(Phil)
Security features in pg_hba.conf enhanced and documented, many cleanups(Phil)
B
Bruce Momjian 已提交
396 397 398 399 400 401 402 403 404 405
CHAR() now faster access than VARCHAR() or TEXT
ecpg embedded SQL preprocessor
Reduce system column overhead(Vadmin)
Remove pg_time table(Vadim)
Add pg_type attribute to identify types that need length (bpchar, varchar)
Add report of offending line when COPY command fails
Allow VIEW permissions to be set separately from the underlying tables. 
	For security, use GRANT/REVOKE on views as appropriate(Jan)
Tables now have no default GRANT SELECT TO PUBLIC.  You must
	explicitly grant such permissions.
B
Bruce Momjian 已提交
406
Clean up tutorial examples(Darren)
B
Bruce Momjian 已提交
407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442

Source Tree Changes
-------------------
Add new html development tools, and flow chart in /tools/backend
Fix for SCO compiles
Stratus computer port "Gillies, Robert" <GilliesR@Nichols.com>
Added support for shlib for BSD44_derived & i386_solaris
Make configure more automated(Brook)
Add script to check regression test results
Break parser functions into smaller files, group together(Bruce)
Rename heap_create to heap_create_and_catalog, rename heap_creatr
	to heap_create()(Bruce)
Sparc/Linux patch for locking(TomS)
Remove PORTNAME and reorganize port-specific stuff(Marc)
Add optimizer README file(Bruce)
Remove some recursion in optimizer and clean up some code there(Bruce)
Fix for NetBSD locking(Henry)
Fix for libptcl make(Tatsuo)
AIX patch(Darren)
Change IS TRUE, IS FALSE, ... to expressions using "=" rather than
	function calls to istrue() or isfalse() to allow optimization(Thomas)
Various fixes NetBSD/Sparc related(TomH)
Alpha linux locking(Travis,Ryan)
Change elog(WARN) to elog(ERROR)(Bruce)
FAQ for FreeBSD(Marc)
Bring in the PostODBC source tree as part of our standard distribution(Marc)
A minor patch for HP/UX 10 vs 9(Stan)
New pg_attribute.atttypmod for type-specific info like varchar length(Bruce)
Unixware patches(Billy)
New i386 'lock' for spin lock asm(Billy)
Support for multiplexed backends is removed
Start an OpenBSD port
Start an AUX port
Start a Cygnus port
Add string functions to regression suite(Thomas)
Expand a few function names formerly truncated to 16 characters(Thomas)
B
Bruce Momjian 已提交
443
Remove un-needed malloc() calls and replace with palloc()(Bruce)
B
Bruce Momjian 已提交
444 445


B
Bruce Momjian 已提交
446

B
Bruce Momjian 已提交
447
PostgreSQL 6.2.1                 Fri Oct 17 00:01:27 EDT 1997
448
=========================================================
B
Bruce Momjian 已提交
449

B
Bruce Momjian 已提交
450 451 452
This release does NOT require a dump/restore for those running 6.2, but
there is an SQL query in /migration/6.2_to_6.2.1 that should be run. See
that file for more information.
B
Bruce Momjian 已提交
453 454 455 456 457 458 459

Changes in this release
-----------------------
Allow TIME and TYPE column names(Thomas)
Allow larger range of true/false as boolean values(Thomas)
Support output of "now" and "current"(Thomas)
Handle DEFAULT with INSERT of NULL properly(Vadim)
V
Vadim B. Mikheev 已提交
460
Fix for relation reference counts problem in buffer manager(Vadim)
B
Bruce Momjian 已提交
461
Allow strings to span lines, like ANSI(Thomas)
V
Vadim B. Mikheev 已提交
462
Fix for backward cursor with ORDER BY(Vadim)
B
Bruce Momjian 已提交
463
Fix avg(cash) computation(Thomas)
V
Vadim B. Mikheev 已提交
464 465 466
Fix for specifying a column twice in ORDER/GROUP BY(Vadim)
Documented new libpq function to return affected rows, PQcmdTuples(Bruce)
Trigger function for inserting user names for INSERT/UPDATE(Brook Milligan)
B
Bruce Momjian 已提交
467 468


B
Bruce Momjian 已提交
469

V
Vadim B. Mikheev 已提交
470
PostgreSQL 6.2               Thu Oct 02 12:53:46 EDT 1997
471
=========================================================
472 473 474 475 476 477

A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.

Bug Fixes
---------
B
Bruce Momjian 已提交
478
Fix problems with pg_dump for inheritance, sequences, archive tables(Bruce)
479
Fix compile errors on overflow due to shifts, unsigned, and bad prototypes
480 481 482
	 from Solaris(Diab Jerius)
Fix bugs in geometric line arithmetic (bad intersection calculations)(Thomas)
Check for geometric intersections at endpoints to avoid rounding ugliness(Thomas)
483 484 485 486
Catch non-functional delete attempts(Vadim)
Change time function names to be more consistent(Michael Reifenberg)
Check for zero divides(Michael Reifenberg)
Fix very old bug which made tuples changed/inserted by a commnd
487 488
	visible to the command itself (so we had multiple update of 
	updated tuples, etc)(Vadim)
489 490
Fix for SELECT null, 'fail' FROM pg_am (Patrick)
SELECT NULL as EMPTY_FIELD now allowed(Patrick)
B
Bruce Momjian 已提交
491
Remove un-needed signal stuff from contrib/pginterface
B
Bruce Momjian 已提交
492 493 494 495 496 497
Fix OR (where x <> 1 or x isnull didn't return tuples with x NULL) (Vadim)
Fix time_cmp function (Vadim)
Fix handling of functions with non-attribute first argument in 
	WHERE clauses (Vadim)
Fix GROUP BY when order of entries is different from order
	in target list (Vadim)
V
Vadim B. Mikheev 已提交
498
Fix pg_dump for aggregates without sfunc1 (Vadim)
499 500 501

Enhancements
------------
502 503 504 505 506 507
Default genetic optimizer GEQO parameter is now 8(Bruce)
Allow use parameters in target list having aggregates in functions(Vadim)
Added JDBC driver as an interface(Adrian & Peter)
pg_password utility
Return number of tuples inserted/affected by INSERT/UPDATE/DELETE etc.(Vadim)
Triggers implemented with CREATE TRIGGER (SQL3)(Vadim)
V
Vadim B. Mikheev 已提交
508
SPI (Server Programming Interface) allows execution of queries inside 
B
Bruce Momjian 已提交
509
	C-functions (Vadim)
510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525
NOT NULL implemented (SQL92)(Robson Paniago de Miranda)
Include reserved words for string handling, outer joins, and unions(Thomas)
Implement extended comments ("/* ... */") using exclusive states(Thomas)
Add "//" single-line comments(Bruce)
Remove some restrictions on characters in operator names(Thomas)
DEFAULT and CONSTRAINT for tables implemented (SQL92)(Vadim & Thomas)
Add text concatenation operator and function (SQL92)(Thomas)
Support WITH TIME ZONE syntax (SQL92)(Thomas)
Support INTERVAL <unit> TO <unit> syntax (SQL92)(Thomas)
Define types DOUBLE PRECISION, INTERVAL, CHARACTER,
	and CHARACTER VARYING (SQL92)(Thomas)
Define type FLOAT(p) and rudimentary DECIMAL(p,s), NUMERIC(p,s) (SQL92)(Thomas)
Define EXTRACT(), POSITION(), SUBSTRING(), and TRIM() (SQL92)(Thomas)
Define CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP (SQL92)(Thomas)
Add syntax and warnings for UNION, HAVING, INNER and OUTER JOIN (SQL92)(Thomas)
Add more reserved words, mostly for SQL92 compliance(Thomas)
526 527 528 529
Allow hh:mm:ss time entry for timespan/reltime types(Thomas)
Add center() routines for lseg, path, polygon(Thomas)
Add distance() routines for circle-polygon, polygon-polygon(Thomas)
Check explicitly for points and polygons contained within polygons
530
	using an axis-crossing algorithm(Thomas)
531
Add routine to convert circle-box(Thomas)
B
Bruce Momjian 已提交
532
Merge conflicting operators for different geometric data types(Thomas)
533
Replace distance operator "<===>" with "<->"(Thomas)
534
Replace "above" operator "!^" with ">^" and "below" operator "!|" with "<^"(Thomas)
535 536
Add routines for text trimming on both ends, substring, and string position(Thomas)
Added conversion routines circle(box) and poly(circle)(Thomas)
B
Bruce Momjian 已提交
537
Allow internal sorts to be stored in memory rather than in files(Bruce & Vadim)
538 539
Allow functions and operators on internally-identical types to succeed(Bruce)
Speed up backend startup after profiling analysis(Bruce)
540 541 542
Inline frequently called functions for performance(Bruce)
Reduce open() calls(Bruce)
psql:  Add PAGER for \h and \?,\C fix
543 544
Fix for psql pager when no tty(Bruce)
New entab utility(Bruce)
B
Bruce Momjian 已提交
545 546
General trigger functions for referential integrity (Vadim)
General trigger functions for time travel (Vadim)
V
Vadim B. Mikheev 已提交
547
General trigger functions for AUTOINCREMENT/IDENTITY feature (Vadim)
B
Bruce Momjian 已提交
548
MOVE implementation (Vadim)
549 550 551 552 553 554

Source Tree Changes
-------------------
HPUX 10 patches (Vladimir Turin)
Added SCO support, (Daniel Harris)
mkLinux patches (Tatsuo Ishii)
555
Change geometric box terminology from "length" to "width"(Thomas)
B
Bruce Momjian 已提交
556
Deprecate temporary unstored slope fields in geometric code(Thomas)
557 558 559 560 561 562
Remove restart instructions from INSTALL(Bruce)
Look in /usr/ucb first for install(Bruce)
Fix c++ copy example code(Thomas)
Add -o to psql manual page(Bruce)
Prevent relname unallocated string length from being copied into database(Bruce)
Cleanup for NAMEDATALEN use(Bruce)
563
Fix pg_proc names over 15 chars in output(Bruce)
564 565 566 567 568 569
Add strNcpy() function(Bruce)
remove some (void) casts that are unnecessary(Bruce)
new interfaces directory(Marc)
Replace fopen() calls with calls to fd.c functions(Bruce)
Make functions static where possible(Bruce)
enclose unused functions in #ifdef NOT_USED(Bruce)
570
Remove call to difftime() in timestamp support to fix SunOS(Bruce & Thomas)
571 572 573
Changes for Digital Unix
Portability fix for pg_dumpall(Bruce)
Rename pg_attribute.attnvals to attdisbursion(Bruce)
574 575 576 577 578 579
"intro/unix" manual page now "pgintro"(Bruce)
"built-in" manual page now "pgbuiltin"(Bruce)
"drop" manual page now "drop_table"(Bruce)
Add "create_trigger", "drop_trigger" manual pages(Thomas)
Add constraints regression test(Vadim & Thomas)
Add comments syntax regression test(Thomas)
580 581 582
Add PGINDENT and support program(Bruce)
Massive commit to run PGINDENT on all *.c and *.h files(Bruce)
Files moved to /src/tools directory(Bruce)
V
Vadim B. Mikheev 已提交
583
SPI and Trigger programming guides (Vadim & D'Arcy)
584 585


B
Bruce Momjian 已提交
586

587 588
PostgreSQL 6.1.1             Mon Jul 22 18:04:49 EDT 1997
=========================================================
B
Bruce Momjian 已提交
589

590
This release does NOT require a dump/restore for those running 6.1.
B
Bruce Momjian 已提交
591 592 593 594 595 596

Changes in this release
-----------------------
fix for SET with options (Thomas)
allow pg_dump/pg_dumpall to preserve ownership of all tables/objects(Bruce)
new psql \connect option allows changing usernames without chaning databases
B
Bruce Momjian 已提交
597
fix for initdb --debug option(Yoshihiko Ichikawa))
B
Bruce Momjian 已提交
598 599
lextest cleanup(Bruce)
hash fixes(Vadim)
B
Bruce Momjian 已提交
600 601 602 603
fix date/time month boundary arithmetic(Thomas)
fix timezone daylight handling for some ports(Thomas, Bruce, Tatsuo)
timestamp overhauled to use standard functions(Thomas)
other code cleanup in date/time routines(Thomas)
B
Bruce Momjian 已提交
604 605 606 607 608 609 610 611 612
psql's \d now case-insensitive(Bruce)
psql's backslash commands can now have trailing semicolon(Bruce)
fix memory leak in psql when using \g(Bruce)
major fix for endian handling of communication to server(Thomas, Tatsuo)
Fix for Solaris assembler and include files(Yoshihiko Ichikawa)
allow underscores in usernames(Bruce)
pg_dumpall now returns proper status, portability fix(Bruce)


B
Bruce Momjian 已提交
613

614 615
PostgreSQL 6.1               Sun Jun  8 14:41:13 EDT 1997
=========================================================
616

617 618 619 620 621 622 623 624 625 626 627 628 629
A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.

Bug Fixes
---------
packet length checking in library routines
lock manager priority patch
check for under/over flow of float8(Bruce)
multi-table join fix(Vadim)
SIGPIPE crash fix(Darren)
large object fixes(Sven)
allow btree indexes to handle NULLs(Vadim)
timezone fixes(D'Arcy)
B
Bruce Momjian 已提交
630
select SUM(x) can return NULL on no rows(Thomas)
631 632 633 634 635 636 637
internal optimizer, executor bug fixes(Vadim)
fix problem where inner loop in < or <= has no rows(Vadim)
prevent re-commuting join index clauses(Vadim)
fix join clauses for multiple tables(Vadim)
fix hash, hashjoin for arrays(Vadim)
fix btree for abstime type(Vadim)
large object fixes(Raymond)
B
Bruce Momjian 已提交
638 639 640 641 642 643 644 645 646 647 648
fix buffer leak in hash indices (Vadim)
fix rtree for use in inner scan (Vadim)
fix gist for use in inner scan, cleanups (Vadim, Andrea)
avoid unnecessary local buffers allocation (Vadim, Massimo)
fix local buffers leak in transaction aborts (Vadim)
fix file manager memmory leaks, cleanups (Vadim, Massimo)
fix storage manager memmory leaks (Vadim)
fix btree duplicates handling (Vadim)
fix deleted tuples re-incarnation caused by vacuum (Vadim)
fix SELECT varchar()/char() INTO TABLE made zero-length fields(Bruce)
many psql, pg_dump, and libpq memory leaks fixed using Purify (Igor)
649 650 651

Enhancements
------------
652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669
attribute optimization statistics(Bruce)
much faster new btree bulk load code(Paul)
BTREE UNIQUE added to bulk load code(Vadim) 
new lock debug code(Massimo)
massive changes to libpg++(Leo)
new GEQO optimizer speeds table multi-table optimization(Martin)
new WARN message for non-unique insert into unique key(Marc)
update x=-3, no spaces, now valid(Bruce)
remove case-sensitive identifier handling(Bruce,Thomas,Dan)
debug backend now pretty-prints tree(Darren)
new Oracle character functions(Edmund)
new plaintext password functions(Dan)
no such class or insufficient privilege changed to distinct messages(Dan)
new ANSI timestamp function(Dan)
new ANSI Time and Date types (Thomas)
move large chunks of data in backend(Martin)
multi-column btree indexes(Vadim)
new SET var TO value command(Martin)
B
Bruce Momjian 已提交
670
update transaction status on reads(Dan)
671 672 673 674 675 676
new locale settings for character types(Oleg)
new SEQUENCE serial number generator(Vadim)
GROUP BY function now possible(Vadim)
re-organize regression test(Thomas,Marc)
new optimizer operation weights(Vadim)
new psql \z grant/permit option(Marc)
B
Bruce Momjian 已提交
677
new MONEY data type(D'Arcy,Thomas)
678 679 680 681
tcp socket communication speed improved(Vadim)
new VACUUM option for attribute statistics, and for certain columns (Vadim)
many geometric type improvements(Thomas,Keith)
additional regression tests(Thomas)
B
Bruce Momjian 已提交
682
new datestyle variable(Thomas,Vadim,Martin)
683 684 685 686
more comparison operators for sorting types(Thomas)
new conversion functions(Thomas)
new more compact btree format(Vadim)
allow pg_dumpall to preserve database ownership(Bruce)
B
Bruce Momjian 已提交
687 688 689 690 691 692 693 694 695
new SET GEQO=# and R_PLANS variable(Vadim)
old (!GEQO) optimizer can use right-sided plans (Vadim)
typechecking improvement in SQL parser(Bruce)
new SET, SHOW, RESET commands(Thomas,Vadim)
new \connect database USER option
new destroydb -i option (Igor)
new \dt and \di psql commands (Darren)
SELECT "\n" now escapes newline (A. Duursma)
new geometry conversion functions from old format (Thomas)
696

697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712
Source tree changes
-------------------
new configuration script(Marc)
readline configuration option added(Marc)
OS-specific configuration options removed(Marc)
new OS-specific template files(Marc)
no more need to edit Makefile.global(Marc)
re-arrange include files(Marc)
nextstep patches (Gregor Hoffleit)
removed WIN32-specific code(Bruce)
removed postmaster -e option, now only postgres -e option (Bruce)
merge duplicate library code in front/backends(Martin)
now works with eBones, international Kerberos(Jun)
more shared library support
c++ include file cleanup(Bruce)
warn about buggy flex(Bruce)
B
Bruce Momjian 已提交
713
DG-UX, Ultrix, Irix, AIX portability fixes
B
Bruce Momjian 已提交
714 715 716



717 718
PostgreSQL 6.0               Wed Jan 29 00:19:54 EST 1997
=========================================================
B
Bruce Momjian 已提交
719 720 721 722

A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.

B
Bruce Momjian 已提交
723 724
Bug Fixes
---------
B
Bruce Momjian 已提交
725
ALTER TABLE bug - running postgress process needs to re-read table definition
B
Bruce Momjian 已提交
726 727 728
Allow vacuum to be run on one table or entire database(Bruce)
Array fixes
Fix array over-runs of memory writes(Kurt)
B
Bruce Momjian 已提交
729
Fix elusive btree range/non-range bug(Dan)
B
Bruce Momjian 已提交
730 731 732 733 734 735
Fix for hash indexes on some types like time and date
Fix for pg_log size explosion
Fix permissions on lo_export()(Bruce)
Fix unitialized reads of memory(Kurt)
Fixed ALTER TABLE ... char(3) bug(Bruce)
Fixed a few small memory leaks
B
Bruce Momjian 已提交
736
Fixed EXPLAIN handling of options and changed full_path option name
B
Bruce Momjian 已提交
737 738 739 740 741 742 743 744 745 746 747 748 749
Fixed output of group acl permissions
Memory leaks (hunt and destroy with tools like Purify(Kurt)
Minor improvements to rules system
NOTIFY fixes
New asserts for run-checking
Overhauled parser/analyze code to properly report errors and increase speed
Pg_dump -d now handles NULL's properly(Bruce)
Prevent SELECT NULL from crashing server (Bruce)
Properly report errors when INSERT ... SELECT columns did not match
Properly report errors when insert column names were not correct
Psql \g filename now works(Bruce)
Psql fixed problem with multiple statements on one line with multiple outputs
Removed duplicate system oid's
B
Bruce Momjian 已提交
750
SELECT * INTO TABLE . GROUP/ORDER BY gives unlink error if table exists(Bruce)
B
Bruce Momjian 已提交
751 752 753 754 755 756
Several fixes for queries that crashed the backend
Starting quote in insert string errors(Bruce)
Submiting an empty query now returns empty status, not just " " query(Bruce)

Enhancements
------------
B
Bruce Momjian 已提交
757
Add EXPLAIN manual page(Bruce)
B
Bruce Momjian 已提交
758
Add UNIQUE index capability(Dan)
B
Bruce Momjian 已提交
759
Add hostname/user level access control rather than just hostname and user
B
Bruce Momjian 已提交
760 761 762 763 764 765
Add synonym of != for <>(Bruce)
Allow "select oid,* from table"
Allow BY,ORDER BY to specify columns by number, or by non-alias table.column(Bruce)
Allow COPY from the frontend(Bryan)
Allow GROUP BY to use alias column name(Bruce)
Allow actual compression, not just reuse on the same page(Vadim)
B
Bruce Momjian 已提交
766
Allow installation-configuration option to auto-add all local users(Bryan)
B
Bruce Momjian 已提交
767 768 769
Allow libpq to distinguish between text value '' and null(Bruce)
Allow non-postgres users with createdb privs to destroydb's
Allow restriction on who can create C functions(Bryan)
B
Bruce Momjian 已提交
770
Allow restriction on who can do backend COPY(Bryan)
B
Bruce Momjian 已提交
771
Can shrink tables, pg_time and pg_log(Vadim & Erich)
B
Bruce Momjian 已提交
772
Change debug level 2 to print queries only, changed debug heading layout(Bruce)
B
Bruce Momjian 已提交
773
Change default decimal constant representation from float4 to float8(Bruce)
774
European date format now set when postmaster is started
B
Bruce Momjian 已提交
775 776 777 778 779 780 781 782 783 784 785
Execute lowercase function names if not found with exact case
Fixes for aggregate/GROUP processing, allow 'select sum(func(x),sum(x+y) from z'
Gist now included in the distrubution(Marc)
Idend authentication of local users(Bryan)
Implement BETWEEN qualifier(Bruce)
Implement IN qualifier(Bruce)
Libpq has PQgetisnull()(Bruce)
Libpq++ improvements
New options to initdb(Bryan)
Pg_dump allow dump of oid's(Bruce)
Pg_dump create indexes after tables are loaded for speed(Bruce)
786
Pg_dumpall dumps all databases, and the user table
B
Bruce Momjian 已提交
787 788 789 790 791 792 793 794 795
Pginterface additions for NULL values(Bruce)
Prevent postmaster from being run as root
Psql \h and \? is now readable(Bruce)
Psql allow backslashed, semicolons anywhere on the line(Bruce)
Psql changed command prompt for lines in query or in quotes(Bruce)
Psql char(3) now displays as (bp)char in \d output(Bruce)
Psql return code now more accurate(Bryan?)
Psql updated help syntax(Bruce)
Re-visit and fix vacuum(Vadim)
B
Bruce Momjian 已提交
796 797
Reduce size of regression diffs, remove timezone name difference(Bruce)
Remove compile-time parameters to enable binary distributions(Bryan)
B
Bruce Momjian 已提交
798 799 800
Reverse meaning of HBA masks(Bryan)
Secure Authentication of local users(Bryan)
Speed up vacuum(Vadim)
801
Vacuum now had VERBOSE option(Bruce)
B
Bruce Momjian 已提交
802 803 804 805 806 807 808 809 810

Source tree changes
-------------------
All functions now have prototypes that are compared against the calls
Allow asserts to be disabled easly from Makefile.global(Bruce)
Change oid constants used in code to #define names
Decoupled sparc and solaris defines(Kurt)
Gcc -Wall compiles cleanly with warnings only from unfixable constructs
Major include file reorganization/reduction(Marc)
B
Bruce Momjian 已提交
811
Make now stops on compile failure(Bryan)
B
Bruce Momjian 已提交
812 813 814 815 816
Makefile restructuring(Bryan, Marc)
Merge bsdi_2_1 to bsdi(Bruce)
Monitor program removed
Name change from Postgres95 to PostgreSQL
New config.h file(Marc, Bryan)
B
Bruce Momjian 已提交
817
PG_VERSION now set to 6.0 and used by postmaster
B
Bruce Momjian 已提交
818 819 820 821 822 823 824 825
Portability additions, including Ultrix, DG/UX, AIX, and Solaris
Reduced the number of #define's, centeralized #define's
Remove duplicate OIDS in system tables(Dan)
Remove duplicate system catalog info or report mismatches(Dan)
Removed many os-specific #define's
Restructured object file generation/location(Bryan, Marc)
Restructured port-specific file locations(Bryan, Marc)
Unused/uninialized variables corrected
B
Bruce Momjian 已提交
826 827


B
Bruce Momjian 已提交
828

829
PostgreSQL 1.09                 ???
830
=========================================================
831 832 833 834 835 836

Sorry, we stopped keeping track of changes from 1.02 to 1.09.  Some of
the changes listed in 6.0 were actually included in the 1.02.1 to 1.09
releases.


B
Bruce Momjian 已提交
837

838 839
Postgres95 1.02              Thu Aug  1 18:00:00 EDT 1996
=========================================================
M
Marc G. Fournier 已提交
840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894

Source code maintainenance and development
 * worldwide team of volunteers
 * the source tree now in CVS at ftp.ki.net
 * developers mailing list - pg95-dev@ki.net

Enhancements
 * psql (and underlying libpq library) now has many more options for
   formatting output, including HTML
 * pg_dump now output the schema and/or the data, with many fixes to
   enhance completeness.
 * psql used in place of monitor in administration shell scripts.
   monitor to be depreciated in next release.
 * date/time functions enhanced
 * NULL insert/update/comparison fixed/enhanced
 * TCL/TK lib and shell fixed to work with both tck7.4/tk4.0 and tcl7.5/tk4.1

Bug Fixes (almost too numerous to mention)
 * indexes
 * storage management
 * check for NULL pointer before dereferencing
 * Makefile fixes

New Ports
 * added SolarisX86 port
 * added BSDI 2.1 port
 * added DGUX port

Contributors (appologies to any missed)
 * Kurt J. Lidl <lidl@va.pubnix.com> 
	(missed in first run, but no less important)
 * Erich Stamberger <eberger@gewi.kfunigraz.ac.at>
 * Jason Wright <jason@shiloh.vnet.net>
 * Cees de Groot <C.deGroot@inter.NL.net>
 * ernst.molitor@uni-bonn.de
 * michael.siebenborn@ae3.Hypo.DE (Michael Siebenborn (6929))
 * Brian E. Gallew <geek+@cmu.edu>
 * Vadim B. Mikheev <vadim@sable.krasnoyarsk.su>
 * Adam Sussman <myddryn@vidya.com>
 * Chris Dunlop <chris@onthe.net.au>
 * Marc G. Fournier <scrappy@ki.net>
 * Dan McGuirk <mcguirk@indirect.com>
 * Dr_George_D_Detlefsen <drgeorge@ilt.com>
 * Erich Stamberger <eberger@gewi.kfunigraz.ac.at>
 * Massimo Dal Zotto <dz@cs.unitn.it>
 * Randy Kunkee <kunkee@Starbase.NeoSoft.COM>
 * Rick Weldon <rick@wisetech.com>
 * Thomas van Reimersdahl <reimersd@dali.techinfo.rwth-aachen.de>
 * david bennett <dave@bensoft.com>
 * ernst.molitor@uni-bonn.de
 * Julian Assange <proff@suburbia.net>
 * Bruce Momjian <maillist@candle.pha.pa.us>
 * Paul "Shag" Walmsley <ccshag@cclabs.missouri.edu>
 * "Alistair G. Crooks" <azcb0@sde.uts.amdahl.com>

B
Bruce Momjian 已提交
895 896


897 898
Postgres95 1.01              Fri Feb 23 18:20:36 PST 1996
=========================================================
M
Marc G. Fournier 已提交
899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931
Incompatibilities:
 * 1.01 is backwards compatible with 1.0 database provided the user
   follow the steps outlined in the MIGRATION_from_1.0_to_1.01 file.
   If those steps are not taken, 1.01 is not compatible with 1.0 database.

Enhancements:
 * added PQdisplayTuples() to libpq and changed monitor and psql to use it
 * added NeXT port (requires SysVIPC implementation)
 * added CAST .. AS ... syntax
 * added ASC and DESC keywords
 * added 'internal' as a possible language for CREATE FUNCTION
   internal functions are C functions which have been statically linked
   into the postgres backend.
 * a new type "name" has been added for system identifiers (table names,
   attribute names, etc.)  This replaces the old char16 type.   The
   of name is set by the NAMEDATALEN #define in src/Makefile.global
 * a readable reference manual that describes the query language.
 * added host-based access control.  A configuration file ($PGDATA/pg_hba)
   is used to hold the configuration data.  If host-based access control
   is not desired, comment out HBA=1 in src/Makefile.global.
 * changed regex handling to be uniform use of Henry Spencer's regex code
   regardless of platform.  The regex code is included in the distribution
 * added functions and operators for case-insensitive regular expressions. 
   The operators are ~* and !~*.
 * pg_dump uses COPY instead of SELECT loop for better performance

Bug fixes:
 * fixed an optimizer bug that was causing core dumps when 
   functions calls were used in comparisons in the WHERE clause
 * changed all uses of getuid to geteuid so that effective uids are used
 * psql now returns non-zero status on errors when using -c
 * applied public patches 1-14

B
Bruce Momjian 已提交
932 933


934 935
Postgres95 1.0               Tue Sep  5 11:24:11 PDT 1995
=========================================================
M
Marc G. Fournier 已提交
936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977

Copyright change:
 * The copyright of Postgres 1.0 has been loosened to be freely modifiable
   and modifiable for any purpose.  Please read the COPYRIGHT file.
   Thanks to Professor Michael Stonebraker for making this possible.

Incompatibilities:
 *  date formats have to be MM-DD-YYYY (or DD-MM-YYYY if you're using
   EUROPEAN STYLE).  This follows SQL-92 specs.
 *  "delimiters" is now a keyword

Enhancements:
 *  sql LIKE syntax has been added
 *  copy command now takes an optional USING DELIMITER specification.
   delimiters can be any single-character string. 
 *  IRIX 5.3 port has been added.
   Thanks to Paul Walmsley (ccshag@everest.cclabs.missouri.edu) and others.
 *  updated pg_dump to work with new libpq
 *  \d has been added psql 
   Thanks to Keith Parks (emkxp01@mtcc.demon.co.uk)
 *  regexp performance for architectures that use POSIX regex has been
   improved due to caching of precompiled patterns.
   Thanks to Alistair Crooks (agc@uts.amdahl.com) 
 *  a new version of libpq++
   Thanks to William Wanders (wwanders@sci.kun.nl)

Bug fixes:
 *  arbitrary userids can be specified in the createuser script
 *  \c to connect to other databases in psql now works.
 *  bad pg_proc entry for float4inc() is fixed
 *  users with usecreatedb field set can now create databases without
   having to be usesuper
 *  remove access control entries when the entry no longer has any
   permissions
 *  fixed non-portable datetimes implementation
 *  added kerberos flags to the src/backend/Makefile
 *  libpq now works with kerberos
 *  typographic errors in the user manual have been corrected.
 *  btrees with multiple index never worked, now we tell you they don't
   work when you try to use them


B
Bruce Momjian 已提交
978

979 980
Postgres95 Beta 0.03         Fri Jul 21 14:49:31 PDT 1995
=========================================================
M
Marc G. Fournier 已提交
981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086
Incompatible changes:
 * BETA-0.3 IS INCOMPATIBLE WITH DATABASES CREATED WITH PREVIOUS VERSIONS
   (due to system catalog changes and indexing structure changes).
 * double-quote (") is deprecated as a quoting character for string literals;
   you need to convert them to single quotes (').
 * name of aggregates (eg. int4sum) are renamed in accordance with the
   SQL standard (eg. sum).
 * CHANGE ACL syntax is replaced by GRANT/REVOKE syntax.
 * float literals (eg. 3.14) are now of type float4 (instead of float8 in
   previous releases); you might have to do typecasting if you depend on it
   being of type float8.  If you neglect to do the typecasting and you assign
   a float literal to a field of type float8, you may get incorrect values
   stored!
 * LIBPQ has been totally revamped so that frontend applications
   can connect to multiple backends
 * the usesysid field in pg_user has been changed from int2 to int4 to
   allow wider range of Unix user ids.
 * the netbsd/freebsd/bsd o/s ports have been consolidated into a
   single BSD44_derived port.  (thanks to Alistair Crooks)

SQL standard-compliance (the following details changes that makes postgres95
more compliant to the SQL-92 standard):
 * the following SQL types are now built-in: smallint, int(eger), float, real,
   char(N), varchar(N), date and time.

   The following are aliases to existing postgres types:
		smallint -> int2
		integer, int -> int4
		float, real  -> float4
   char(N) and varchar(N) are implemented as truncated text types. In
   addition, char(N) does blank-padding. 
 * single-quote (') is used for quoting string literals; '' (in addition to
   \') is supported as means of inserting a single quote in a string
 * SQL standard aggregate names (MAX, MIN, AVG, SUM, COUNT) are used
   (Also, aggregates can now be overloaded, i.e. you can define your
   own MAX aggregate to take in a user-defined type.)
 * CHANGE ACL removed. GRANT/REVOKE syntax added.  
   - Privileges can be given to a group using the "GROUP" keyword.
	For example:
		GRANT SELECT ON foobar TO GROUP my_group;
	The keyword 'PUBLIC' is also supported to mean all users.	

	Privileges can only be granted or revoked to one user or group
	at a time.  

	"WITH GRANT OPTION" is not supported.  Only class owners can change
	access control
   - The default access control is to to grant users readonly access.
     You must explicitly grant insert/update access to users.  To change
     this, modify the line in 
		src/backend/utils/acl.h 
     that defines ACL_WORLD_DEFAULT 

Bug fixes:
 * the bug where aggregates of empty tables were not run has been fixed. Now,
   aggregates run on empty tables will return the initial conditions of the
   aggregates. Thus, COUNT of an empty	table will now properly return 0.
   MAX/MIN of an empty table will return a tuple of value NULL. 
 * allow the use of \; inside the monitor
 * the LISTEN/NOTIFY asynchronous notification mechanism now work
 * NOTIFY in rule action bodies now work
 * hash indices work, and access methods in general should perform better.
   creation of large btree indices should be much faster.  (thanks to Paul
   Aoki)

Other changes and enhancements:
 * addition of an EXPLAIN statement used for explaining the query execution
   plan (eg. "EXPLAIN SELECT * FROM EMP" prints out the execution plan for
   the query).
 * WARN and NOTICE messages no longer have timestamps on them. To turn on
   timestamps of error messages, uncomment the line in
   src/backend/utils/elog.h:
	/* define ELOG_TIMESTAMPS */ 
 * On an access control violation, the message
	"Either no such class or insufficient privilege"
   will be given.  This is the same message that is returned when
   a class is not found.  This dissuades non-privileged users from
   guessing the existence of privileged classes.
 * some additional system catalog changes have been made that are not
   visible to the user.

libpgtcl changes:
 * The -oid option has been added to the "pg_result" tcl command.
   pg_result -oid returns oid of the last tuple inserted.   If the
   last command was not an INSERT, then pg_result -oid returns "".
 * the large object interface is available as pg_lo* tcl commands:
   pg_lo_open, pg_lo_close, pg_lo_creat, etc.

Portability enhancements and New Ports:
 * flex/lex problems have been cleared up.  Now, you should be able to use
   flex instead of lex on any platforms.  We no longer make assumptions of
   what lexer you use based on the platform you use. 
 * The Linux-ELF port is now supported.  Various configuration have been 
   tested:  The following configuration is known to work:
	kernel 1.2.10, gcc 2.6.3, libc 4.7.2, flex 2.5.2, bison 1.24
   with everything in ELF format,

New utilities:
 * ipcclean added to the distribution
   ipcclean usually does not need to be run, but if your backend crashes
   and leaves shared memory segments hanging around, ipcclean will
   clean them up for you.

New documentation:
 * the user manual has been revised and libpq documentation added.

B
Bruce Momjian 已提交
1087 1088


1089 1090
Postgres95 Beta 0.02         Thu May 25 16:54:46 PDT 1995
=========================================================
M
Marc G. Fournier 已提交
1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124
Incompatible changes:
 * The SQL statement for creating a database is 'CREATE DATABASE' instead
   of 'CREATEDB'. Similarly, dropping a database is 'DROP DATABASE' instead
   of 'DESTROYDB'. However, the names of the executables 'createdb' and 
   'destroydb' remain the same.
 
New tools:
 * pgperl - a Perl (4.036) interface to Postgres95
 * pg_dump - a utility for dumping out a postgres database into a
	script file containing query commands. The script files are in a ASCII
	format and can be used to reconstruct the database, even on other
	machines and other architectures. (Also good for converting
	a Postgres 4.2 database to Postgres95 database.)

The following ports have been incorporated into postgres95-beta-0.02:
 * the NetBSD port by Alistair Crooks
 * the AIX port by Mike Tung
 * the Windows NT port by Jon Forrest (more stuff but not done yet)
 * the Linux ELF port by Brian Gallew

The following bugs have been fixed in postgres95-beta-0.02:
 * new lines not escaped in COPY OUT and problem with COPY OUT when first
   attribute is a '.' 
 * cannot type return to use the default user id in createuser
 * SELECT DISTINCT on big tables crashes
 * Linux installation problems
 * monitor doesn't allow use of 'localhost' as PGHOST
 * psql core dumps when doing \c or \l
 * the "pgtclsh" target missing from src/bin/pgtclsh/Makefile
 * libpgtcl has a hard-wired default port number
 * SELECT DISTINCT INTO TABLE hangs
 * CREATE TYPE doesn't accept 'variable' as the internallength
 * wrong result using more than 1 aggregate in a SELECT

B
Bruce Momjian 已提交
1125 1126


1127 1128
Postgres95 Beta 0.01          Mon May 1 19:03:10 PDT 1995
=========================================================
M
Marc G. Fournier 已提交
1129
Initial release.