1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
10 HREF="mailto:pgsql-docs@postgresql.org"><LINK
12 TITLE="PostgreSQL 7.4.1 Documentation"
13 HREF="index.html"><LINK
16 HREF="release.html"><LINK
19 HREF="release-7-1-1.html"><LINK
22 HREF="release-7-0-3.html"><LINK
25 HREF="stylesheet.css"><META
27 CONTENT="2003-12-22T03:48:47"></HEAD
33 SUMMARY="Header navigation table"
43 >PostgreSQL 7.4.1 Documentation</TH
51 HREF="release-7-1-1.html"
67 >Appendix E. Release Notes</TD
81 HREF="release-7-0-3.html"
109 > This release focuses on removing limitations that have existed in the
110 PostgreSQL code for many years.
113 > Major changes in this release:
121 >Write-ahead Log (WAL)</DT
124 >To maintain database consistency in case
125 of an operating system crash, previous releases of PostgreSQL have
126 forced all data modifications to disk before each transaction commit.
127 With WAL, only one log file must be flushed to disk, greatly improving
128 performance. If you have been using -F in previous releases to disable
129 disk flushes, you may want to consider discontinuing its use.
136 > TOAST - Previous releases had a compiled-in row length limit,
137 typically 8k - 32k. This limit made storage of long text fields
138 difficult. With TOAST, long rows of any length can be stored with good
146 >We now support outer joins. The UNION/NOT IN
147 workaround for outer joins is no longer required. We use the SQL92
152 >Function Manager</DT
155 >The previous C function manager did not
156 handle null values properly, nor did it support 64-bit <ACRONYM
160 function manager does. You can continue using your old custom
161 functions, but you may want to rewrite them in the future to use the new
162 function manager call interface.
169 >A large number of complex queries that were
170 unsupported in previous releases now work. Many combinations of views,
171 aggregates, UNION, LIMIT, cursors, subqueries, and inherited tables
172 now work properly. Inherited tables are now accessed by default.
173 Subqueries in FROM are now supported.
186 >E.17.1. Migration to version 7.1</A
189 > A dump/restore using pg_dump is required for those wishing to migrate
190 data from any previous release.
203 CLASS="PROGRAMLISTING"
206 Many multibyte/Unicode/locale fixes (Tatsuo and others)
207 More reliable ALTER TABLE RENAME (Tom)
208 Kerberos V fixes (David Wragg)
209 Fix for INSERT INTO...SELECT where targetlist has subqueries (Tom)
210 Prompt username/password on standard error (Bruce)
211 Large objects inv_read/inv_write fixes (Tom)
212 Fixes for to_char(), to_date(), to_ascii(), and to_timestamp() (Karel,
214 Prevent query expressions from leaking memory (Tom)
215 Allow UPDATE of arrays elements (Tom)
216 Wake up lock waiters during cancel (Hiroshi)
217 Fix rare cursor crash when using hash join (Tom)
218 Fix for DROP TABLE/INDEX in rolled-back transaction (Hiroshi)
219 Fix psql crash from \l+ if MULTIBYTE enabled (Peter E)
220 Fix truncation of rule names during CREATE VIEW (Ross Reedstrom)
221 Fix PL/perl (Alex Kapranoff)
222 Disallow LOCK on views (Mark Hollomon)
223 Disallow INSERT/UPDATE/DELETE on views (Mark Hollomon)
224 Disallow DROP RULE, CREATE INDEX, TRUNCATE on views (Mark Hollomon)
225 Allow PL/pgSQL accept non-ASCII identifiers (Tatsuo)
226 Allow views to proper handle GROUP BY, aggregates, DISTINCT (Tom)
227 Fix rare failure with TRUNCATE command (Tom)
228 Allow UNION/INTERSECT/EXCEPT to be used with ALL, subqueries, views,
229 DISTINCT, ORDER BY, SELECT...INTO (Tom)
230 Fix parser failures during aborted transactions (Tom)
231 Allow temporary relations to properly clean up indexes (Bruce)
232 Fix VACUUM problem with moving rows in same page (Tom)
233 Modify pg_dump to better handle user-defined items in template1 (Philip)
234 Allow LIMIT in VIEW (Tom)
235 Require cursor FETCH to honor LIMIT (Tom)
236 Allow PRIMARY/FOREIGN Key definitions on inherited columns (Stephan)
237 Allow ORDER BY, LIMIT in subqueries (Tom)
238 Allow UNION in CREATE RULE (Tom)
239 Make ALTER/DROP TABLE rollback-able (Vadim, Tom)
240 Store initdb collation in pg_control so collation cannot be changed (Tom)
241 Fix INSERT...SELECT with rules (Tom)
242 Fix FOR UPDATE inside views and subselects (Tom)
243 Fix OVERLAPS operators conform to SQL92 spec regarding NULLs (Tom)
244 Fix lpad() and rpad() to handle length less than input string (Tom)
245 Fix use of NOTIFY in some rules (Tom)
246 Overhaul btree code (Tom)
247 Fix NOT NULL use in Pl/pgSQL variables (Tom)
248 Overhaul GIST code (Oleg)
249 Fix CLUSTER to preserve constraints and column default (Tom)
250 Improved deadlock detection handling (Tom)
251 Allow multiple SERIAL columns in a table (Tom)
252 Prevent occasional index corruption (Vadim)
256 Add OUTER JOINs (Tom)
257 Function manager overhaul (Tom)
258 Allow ALTER TABLE RENAME on indexes (Tom)
259 Improve CLUSTER (Tom)
260 Improve ps status display for more platforms (Peter E, Marc)
261 Improve CREATE FUNCTION failure message (Ross)
262 JDBC improvements (Peter, Travis Bauer, Christopher Cain, William Webber,
264 Grand Unified Configuration scheme/GUC. Many options can now be set in
265 data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
266 Improved handling of file descriptor cache (Tom)
267 New warning code about auto-created table alias entries (Bruce)
268 Overhaul initdb process (Tom, Peter E)
269 Overhaul of inherited tables; inherited tables now accessed by default;
270 new ONLY key word prevents it (Chris Bitmead, Tom)
271 ODBC cleanups/improvements (Nick Gorham, Stephan Szabo, Zoltan Kovacs,
273 Allow renaming of temp tables (Tom)
274 Overhaul memory manager contexts (Tom)
275 pg_dumpall uses CREATE USER or CREATE GROUP rather using COPY (Peter E)
276 Overhaul pg_dump (Philip Warner)
277 Allow pg_hba.conf secondary password file to specify only username (Peter E)
278 Allow TEMPORARY or TEMP key word when creating temporary tables (Bruce)
279 New memory leak checker (Karel)
280 New SET SESSION CHARACTERISTICS (Thomas)
281 Allow nested block comments (Thomas)
282 Add WITHOUT TIME ZONE type qualifier (Thomas)
283 New ALTER TABLE ADD CONSTRAINT (Stephan)
284 Use NUMERIC accumulators for INTEGER aggregates (Tom)
285 Overhaul aggregate code (Tom)
286 New VARIANCE and STDDEV() aggregates
287 Improve dependency ordering of pg_dump (Philip)
288 New pg_restore command (Philip)
289 New pg_dump tar output option (Philip)
290 New pg_dump of large objects (Philip)
291 New ESCAPE option to LIKE (Thomas)
292 New case-insensitive LIKE - ILIKE (Thomas)
293 Allow functional indexes to use binary-compatible type (Tom)
294 Allow SQL functions to be used in more contexts (Tom)
295 New pg_config utility (Peter E)
296 New PL/pgSQL EXECUTE command which allows dynamic SQL and utility statements
298 New PL/pgSQL GET DIAGNOSTICS statement for SPI value access (Jan)
299 New quote_identifiers() and quote_literal() functions (Jan)
300 New ALTER TABLE table OWNER TO user command (Mark Hollomon)
301 Allow subselects in FROM, i.e. FROM (SELECT ...) [AS] alias (Tom)
302 Update PyGreSQL to version 3.1 (D'Arcy)
303 Store tables as files named by OID (Vadim)
304 New SQL function setval(seq,val,bool) for use in pg_dump (Philip)
305 Require DROP VIEW to remove views, no DROP TABLE (Mark)
306 Allow DROP VIEW view1, view2 (Mark)
307 Allow multiple objects in DROP INDEX, DROP RULE, and DROP TYPE (Tom)
308 Allow automatic conversion to/from Unicode (Tatsuo, Eiji)
309 New /contrib/pgcrypto hashing functions (Marko Kreen)
310 New pg_dumpall --globals-only option (Peter E)
311 New CHECKPOINT command for WAL which creates new WAL log file (Vadim)
312 New AT TIME ZONE syntax (Thomas)
313 Allow location of Unix domain socket to be configurable (David J. MacKenzie)
314 Allow postmaster to listen on a specific IP address (David J. MacKenzie)
315 Allow socket path name to be specified in hostname by using leading slash
317 Allow CREATE DATABASE to specify template database (Tom)
318 New utility to convert MySQL schema dumps to SQL92 and PostgreSQL (Thomas)
319 New /contrib/rserv replication toolkit (Vadim)
320 New file format for COPY BINARY (Tom)
321 New /contrib/oid2name to map numeric files to table names (B Palmer)
322 New "idle in transaction" ps status message (Marc)
323 Update to pgaccess 0.98.7 (Constantin Teodorescu)
324 pg_ctl now defaults to -w (wait) on shutdown, new -l (log) option
325 Add rudimentary dependency checking to pg_dump (Philip)
329 Fix INET/CIDR type ordering and add new functions (Tom)
330 Make OID behave as an unsigned type (Tom)
331 Allow BIGINT as synonym for INT8 (Peter E)
332 New int2 and int8 comparison operators (Tom)
333 New BIT and BIT VARYING types (Adriaan Joubert, Tom, Peter E)
334 CHAR() no longer faster than VARCHAR() because of TOAST (Tom)
335 New GIST seg/cube examples (Gene Selkov)
336 Improved round(numeric) handling (Tom)
337 Fix CIDR output formatting (Tom)
338 New CIDR abbrev() function (Tom)
342 Write-Ahead Log (WAL) to provide crash recovery with less performance
344 ANALYZE stage of VACUUM no longer exclusively locks table (Bruce)
345 Reduced file seeks (Denis Perchine)
346 Improve BTREE code for duplicate keys (Tom)
347 Store all large objects in a single table (Denis Perchine, Tom)
348 Improve memory allocation performance (Karel, Tom)
352 New function manager call conventions (Tom)
353 SGI portability fixes (David Kaelbling)
354 New configure --enable-syslog option (Peter E)
355 New BSDI README (Bruce)
356 configure script moved to top level, not /src (Peter E)
357 Makefile/configuration/compilation overhaul (Peter E)
358 New configure --with-python option (Peter E)
359 Solaris cleanups (Peter E)
360 Overhaul /contrib Makefiles (Karel)
361 New OpenSSL configuration option (Magnus, Peter E)
364 New heap_open(), heap_openr() API (Tom)
365 Remove colon and semi-colon operators (Thomas)
366 New pg_class.relkind value for views (Mark Hollomon)
367 Rename ichar() to chr() (Karel)
368 New documentation for btrim(), ascii(), chr(), repeat() (Karel)
369 Fixes for NT/Cygwin (Pete Forman)
370 AIX port fixes (Andreas)
371 New BeOS port (David Reid, Cyril Velter)
372 Add proofreader's changes to docs (Addison-Wesley, Bruce)
373 New Alpha spinlock code (Adriaan Joubert, Compaq)
374 UnixWare port overhaul (Peter E)
375 New Darwin/MacOS X port (Peter Bierman, Bruce Hartzler)
376 New FreeBSD Alpha port (Alfred)
377 Overhaul shared memory segments (Tom)
378 Add IBM S/390 support (Neale Ferguson)
379 Moved macmanuf to /contrib (Larry Rosenman)
380 Syslog improvements (Larry Rosenman)
381 New template0 database that contains no user additions (Tom)
382 New /contrib/cube and /contrib/seg GIST sample code (Gene Selkov)
383 Allow NetBSD's libedit instead of readline (Peter)
384 Improved assembly language source code format (Bruce)
385 New contrib/pg_logger
386 New --template option to createdb
387 New contrib/pg_control utility (Oliver)
388 New FreeBSD tools ipc_check, start-scripts/freebsd
399 SUMMARY="Footer navigation table"
410 HREF="release-7-1-1.html"
428 HREF="release-7-0-3.html"