RENAME>, use
+ linkend="plpgsql-declaration-alias">ALIAS>,
+ which can now alias any variable, not just dollar sign
+ parameter names (such as $1>).
Remove support for platforms that don't have a working 64-bit
- integer data types (Tom Lane)
+ integer data type (Tom Lane)
- It is believed all supported platforms have working 64-bit integer
- data types.
+ It is believed all still-supported platforms have working 64-bit
+ integer data types.
Changes
- Version 9.0 has an unprecedented number of new major features,
+ Version 9.0 has an unprecedented number of new major features,
and over 200 enhancements, improvements, new commands,
new functions, and other changes.
Performance
- Version 9.0 also contains several performance and optimizer enhancements to
- improve specific uses of PostgreSQL and remedy certain poor-performing cases.
+ Version 9.0 also contains several performance and optimizer enhancements
+ to improve specific uses of PostgreSQL and remedy certain poor-performing
+ cases.
Outer joins where the inner side is unique and not referenced in
- the query are unnecessary and are therefore now removed. This will
+ the query are unnecessary and are therefore now removed. This will
accelerate many automatically generated queries, such as those created
by object-relational mappers.
Monitoring
- With increased use of PostgreSQL in high-end production systems,
+ With increased use of PostgreSQL in high-end production systems,
users need increased monitoring. PostgresSQL 9.0 continues to add
more ways to monitor PostgreSQL applications.
- This allows DBAs to characterize database traffic
+ This allows DBAs to characterize database traffic
and troubleshoot problems by source application.
in the new pg_db_role_setting> system table. A new
psql> \drds> command shows these settings.
Backwards-compatible system views do not show this information.
- The primary use of this feature is setting schema
+ The primary use of this feature is setting schema
search_path.
- For drivers which support this feature, this saves an entire
+ For drivers that support this feature, this saves an entire
round-trip to the client, allowing result counts and pagination
to be calculated without a second COUNT query.
TABLE CONSTRAINT ... EXCLUDE> clause. While
uniqueness checks could be specified using this syntax,
the real value of this feature is in using complex
- operators that do not have built-in constraints.
+ operators that do not have built-in constraints.
The primary use of exclusion constraints is to allow defining
non-overlapping uniqueness, such as for time periods, arrays
- or ranges of values. This supports data integrity at the
+ or ranges of values. This supports data integrity at the
table level for calendaring, time-management, and scientific
applications.
LISTEN/NOTIFY may now be used as a full-featured, high-performance
- event queue system for PostgreSQL, with transactional support
+ event queue system for PostgreSQL, with transactional support
and guaranteed delivery.
- The new output formats will support the development of new tools
+ The new output formats will support the development of new tools
for analysis of EXPLAIN output.
- The previous method was usually slower and caused index bloat.
+ The previous method was usually slower and caused index bloat.
Note that the new method may use more disk space during VACUUM
FULL.
- This feature supports GiST indexing of point operations on polygons,
+ This feature supports GiST indexing of point operations on polygons,
circles, and other points, such as "point is in polygon". Previously
- indexing only worked for bounding boxes. This should make many
+ indexing only worked for bounding boxes. This should make many
PostGIS queries faster.
- Install server-side language PL/pgSQL by default (Bruce Momjian)
+ Install PL/pgSQL by default (Bruce Momjian)
- Allow PL/pgSQL to handle row types with dropped columns (Pavel Stehule)
+ Improve PL/pgSQL's ability to handle row types with dropped columns
+ (Pavel Stehule)
- Allow IN> parameters to be assigned values within
+ Allow input parameters to be assigned values within
PL/pgSQL functions (Steve Prentice)
+
+ Formerly, input parameters were treated as being declared
+ CONST>. This restriction has been removed to simplify
+ porting of functions from other DBMSes that do not impose the
+ equivalent restriction. An input parameter now acts like a local
+ variable initialized to the passed-in value.
+
- Have PL/pgSQL use the main lexer, rather than a custom version (Tom Lane)
+ Make PL/pgSQL use the main lexer, rather than its own version
+ (Tom Lane)
-
-
-
- >
-
-
- PL/pgSQL Cursors>
- >
+ This ensures accurate tracking of the main system's behavior for details
+ such as string escaping.
+ >
+ >
- Add count and ALL> options to MOVE
+ Add count> and ALL> options to MOVE
FORWARD>/BACKWARD> in PL/pgSQL (Pavel Stehule)
- Add PL/pgSQL's OPEN cursor FOR EXECUTE> to use parameters
- (Pavel Stehule, Itagaki Takahiro)
+ Allow PL/pgSQL's OPEN cursor> FOR EXECUTE> to
+ use parameters (Pavel Stehule, Itagaki Takahiro)
- Enable the server lexer to be reentrant (Tom Lane)
+ Enable the server's lexer to be reentrant (Tom Lane)
- This filter dictionary removes accents from tokens, and
- makes full-text searches over multiple languages much
- easier.
+ This filter dictionary removes accents from letters, which
+ makes full-text searches over multiple languages much easier.