- Postico 1 0 9 – A Modern Postgresql Clients
- Postico 1 0 9 – A Modern Postgresql Client Centered
- Postico 1 0 9 – A Modern Postgresql Client Permissions
PG Commander has been discontinued and is no longer supported.
Please have a look at its successor Postico.
This part contains reference information for PostgreSQL client applications and utilities. Not all of these commands are of general utility; some might require special privileges. The common feature of these applications is that they can be run on any host, independent of where the database server. Postico sports a query view inspired by Sequel Pro, the popular MySQL client. But with sophisticated features like multiple query results, Postico goes even beyond its role model. Version 1.0.8: Note: Now requires OS X 10.9 or later. Postico now supports using client certificates for authentication.
March 4, 2016
PG Commander – Version 1.5.9
- Fixed host key checking when connecting to an SSH server.
- Fixed problem when displaying error message.
March 2, 2016
PG Commander – Version 1.5.8
- Update to OpenSSL 1.0.2g
- Update to libbsh2 1.7.0 (adds support for diffie-hellman-group-exchange-sha256)
- Update bundled libpq to version 9.3.11
July 9, 2015
PG Commander – Version 1.5.7
- Update to OpenSSL 1.0.2d – Fixes CVE-2015-1793
June 19, 2015
![Postgresql Postgresql](https://i2.wp.com/www.macbed.com/wp-content/uploads/2016/09/15998.png?resize=256%2C256&ssl=1)
PG Commander – Version 1.5.6
- Fixed a crash when opening a table with an exclusion constraint on a function.
- Fixed a possible crash when loading database contents.
- Updated libpq to 9.3.9
- Updated OpenSSL to 1.0.1o
- Updated libssh2 to 1.6.0
February 17, 2015
PG Commander – Version 1.5.5
- Fixed problems with table filters on Amazon RedShift
- Fixed an issue where rows without primary key could not be saved when they use JSON, XML or geometry types
- Numeric fields are no longer treated as strings
January 26, 2015
PG Commander – Version 1.5.4
- Fixed a hang when clearing a query with many results
- Addressed occasional crashes on OS X 10.10.1 (often occurred when unplugging displays)
November 7, 2014
PG Commander – Version 1.5.3
- Windows now have more descriptive titles
- Fixed an issue when connecting to pre-9.0 servers via SSH (including Redshift)
- Fixed a bug where the text field was not activated when switching focus to the Terminal
October 3, 2014
PG Commander – Version 1.5.2
- Fixed an issue where PG Commander only showed some of the results in the SQL Terminal if downloading them took longer than approximately 50ms.
- Fixed an issue where only the first line of error messages was shown.
September 29, 2014
PG Commander – Version 1.5.1
- Fixed an issue where the table icon grid didn't scroll on OS X 10.8.
- Fixed a display bug when disabling SSH tunneling for a favorite on OS X 10.8
- Fixed broken Copy command in Terminal
September 25, 2014
PG Commander – Version 1.5
- SQL Terminal
- Sort query results by clicking table header
- Execute selection only
- Execute queries again
- Automatic Indentation in query editor
- Tab key increases indentation of selected lines
- Shift-Tab key decreases indentation
- Queries now show execution time
- Added a notification when a query completes while PG Commander is in the background
- Clear individual executed queries
- Queries now remember which file they were loaded from and automatically suggest original name when saving
- Fixed a few annoying display bugs in terminal
- Fixed an issue that would cause PG Commander to crash occasionally when executing a query
- Improved autoscrolling behavior
- Keyboard-interactive SSH authentication
You can now connect via SSH servers that use keyboard-interactive instead of password authentication (eg. OS X). Additionally, PG Commander now supports connecting to servers that require multiple auth methods. - Full Screen Mode
- Database icons are now smaller to waste less space.
- Long favorite names no longer break the UI
- Fixed an issue where connecting to ‘localhost’ sometimes failed.
- Improved support for connection URLs (introduces postgresql+ssh URL scheme for tunneling via SSH)
July 14, 2014
PG Commander – Version 1.4.2
- Addressed an issue where PG Commander would cause the discrete GPU to activate on some MacBooks.
- Deleting Materialized Views now works as expected.
- Added a warning when trying to connect via unix domain sockets.
- Removed support for authentication via client side SSL in the Mac App Store version. This feature was based on an exception to the app sandbox that Apple did not approve. If you need this feature, please email me. If there is sufficient demand, I might be able to implement client side SSL in a way that is compatible with app sandbox.
June 18, 2014
PG Commander – Version 1.4.1
- PG Commander now jumps to page 1 when a filter is applied.
- Fixed a problem where PG Commander executed an incorrect query when the query text field was not in focus.
June 13, 2014
PG Commander – Version 1.4
Get back to work faster! When you open a table, PG Commander now remembers sort order, filters etc. from last time.
- Table View
- Persistent sort order.
- Persistent column widths.
- Rearrange columns.
- Table Filters
- Filters are now persistent: When you open a table, PG Commander remembers the filters you used last time.
- New Operators for text fields: ‘does not contain’, ‘is not exactly’.
- New Operators for numeric fields: ≠, <, >.
- Filtering columns that contain percent signs, underscores and backslashes now works as expected.
- Selecting ‘Custom SQL’ now autofills with the generated SQL of the filter.
- Improved Exporting
- Conveniently export tables from context menu (in database view or in the sidebar)
- Export directly from the table view using the ‘Export…’ command in the File menu. When exporting from the table view with active filters, only filtered rows are exported.
- INTEGER and FLOAT types are now exported without quotes.
- Cancel Queries in SQL Terminal
- Row Editor Additions
- Added an option to insert DEFAULT in Boolean columns.
- FLOAT: Insert special values like Not-A-Number and Infinity.
- DATE: Quickly insert todays date, or tomorrow, or yesterday.
- UUID: Generate a random UUID value
- JSON: Pretty Printing
- Fixed a problem where PG Commander may crash after closing an SSH connection.
- Added support for authenticating with Client SSL certificates located in ~/.postgresql
- The favorites window now closes automatically after establishing a connection.
- Fixed incorrect keyboard shortcuts in the documentation
- Upgraded to OpenSSL 1.0.1h to avoid the most recently published vulnerabilities.
May 7, 2014
PG Commander – Version 1.3.0
- Table Filters
Quickly find rows that contain a string. By default, all columns are searched, but you can restrict the filter to a specific column. Combine multiple filters to quickly perform complex queries, or provide a custom WHERE clause. - Copy Rows as CSV / SQL
Quickly copy rows from a table or from a query result as CSV or as SQL INSERT statements. - New Toolbar Buttons
There are three new buttons by default: a back button, a forward button and a button to quickly open the terminal. Moreover, you can now customize the toolbar (right click) to add an optional up button and a reload button. - Keyboard Shortcuts
- New: ⌘⇧T opens the SQL Terminal
- Changed: ⌘N opens the favorite window
- Changed: ⌘⌥N opens a new window for the current connection
- Materialized Views are now also supported in PG Commander. They show up alongside tables & normal views in a green color.
- Added more Retina icons
- Pictures in bytea fields are now shown in a larger size
- Removed unnecessary plain text warning when connecting to 127.0.0.1.
- Fixed a problem where valid host keys were not accepted when connecting via SSH
Postico 1 0 9 – A Modern Postgresql Clients
April 17, 2014
PG Commander – Version 1.2.3
- Fixed crash on Mac OS 10.8
April 10, 2014
PG Commander – Version 1.2.2
- Updated libpq to version 9.3.4
- Updated OpenSSL to 1.0.1g to address heartbleed bug
February 12, 2014
PG Commander – Version 1.2.1
- Improved Reload Behavior
Previously, PG Commander only reloaded the currently active view when you hit ⌘R. Now PG Commander reloads the currently active view and the sidebar, and it purges cached views. This should make it behave a lot more intuitively. - Fixed a problem with SSH Tunnels on OS X 10.8
- Fixed a problem when connecting to a SSH server for the first time.
February 1, 2014
PG Commander – Version 1.2
- SSH Tunneling
Finally! Connect to PostgreSQL servers behind firewalls with the included SSH tunnel support. Both password authentication and public/private key based authentication to the SSH server are supported. - SSL on by default
Instead of providing a checkbox, PG Commander now requires SSL by default. If the server doesn't support encrypted connections, PG Commander will show a warning. - Show All Databases
You can now show a list of all databases on the server when connecting. - Delete tables & views
Select the table and hit ⌘⌫ or right click on a table to bring up the context menu. - Animations in the favorites window are now smoother.
- Default connection parameters are shown as placeholders.
- Toolbar can now be hidden.
- Scrolling tables horizontally with the trackpad/magic mouse doesn't get stuck anymore.
- Fixed a problem where passwords sometimes weren't saved in the keychain.
- PG Commander is now more robust when the server sends invalid UTF-8.
- Changed keyboard shortcut for new row to ⌘⇧N to avoid conflict with ‘New Window’ shortcut ⌘N.
- Now compatible with Amazon Redshift.
- Showing / hiding the sidebar is now permanent.
- Connection attempts can now be cancelled.
November 3, 2013
PG Commander – Version 1.1.1
- Compatibility with older server versions
PG Commander can now connect to servers running PostgreSQL 8.2 - Added a menu item (and the shortcut ⌘N) for the 'New Window' command.
- Fixed a crash when using the context menu in SQL Terminal.
October 11, 2013
PG Commander – Version 1.1.0
- Query History
The SQL Terminal now remembers executed queries. Use ⌘⎇← and ⌘⎇→ to move backward and forward through recently executed queries. - Load/Save Queries
In SQL Terminal, there are now now buttons to load queries from text files, and to save them. - Encrypted Favorite Export
You can now choose to encrypt the password when exporting favorites. - Improved Undo in SQL Terminal
Executing a query in SQL Terminal no longer clears the undo buffer. This makes it much more convenient to fiddle with complex queries. - Fixed UI Glitches in Terminal
I have improved the layout code to avoid frequent jitters during scrolling. Also, Mavericks responsive scrolling is now disabled because it doesn't work with nested table views. - Authenticated Update Checks
When checking for updates, PG Commander now uses an SSL connection to ensure updates are only published by Egger Apps.
August 21, 2013
PG Commander – Version 1.0.0
- Documentation PG Commander now includes documentation for the most important features.
- Context Menu Right clicking on items in the sidebar now brings up a context menu that allows you to quickly open them in a new window.
July 16, 2013
PG Commander Beta 6 – Version 0.9.6
- Nicknames Favorites in PG Commander can now have nicknames! This allows you to distinguish between multiple databases on the same host. It's also great when your database has a cryptic hostname (like on AWS).
- Automatic Update Checking PG Commander now automatically checks for updates, and shows a subtle notification in the favorites window when a new version is available for download. You can disable automatic update checking in the preferences.
- Connect to high ports A bug in PG Commander made it impossible to connect to port numbers higher than 32767. This is now fixed. (I had mixed up signed and unsigned integers)
- Favorites Window In the wake of adding nicknames and update notifications, I tweaked the design of the favorites window.
June 29, 2013
PG Commander Beta 5
This release is all about the little things.
General
- Keyboard Shortcuts:
- ⌘0 toggle sidebar
- ⌘⎇↓ open selected table/row
- ⌘⎇↑ go up in the hierarchy
- Fixed layout issues when toggling the sidebar.
Row Editor
- Improved behavior of escape/enter key when editing foreign key fields.
- Added undo support when editing rows.
- Added keyboard shortcut Command-Return (⌘⏎) to save and close the row.
SQL Terminal
- Improved visual design to better match the rest of the app.
- Added Clear Display command to clear results of previous queries (⌘L).
- Added undo support in the query text field.
- Added keyboard shortcut Command-Return (⌘⏎) to execute the query.
June 13, 2013
PG Commander Beta 4
This beta fixes an issue where tables could not be viewed when connecting to PostgreSQL 9.0 and earlier.
June 12, 2013
PG Commander Beta 3
I decided to change the name from PG Terminal to PG Commander. I think it fits much better. Besides the name change, this release brings other exciting new things:
- Awesome icon designed by Dave Brasgalla from the Iconfactory.
- Editing Tables with Foreign Keys: When a field has a foreign key constraint, PG Commander now shows the row from the foreign table. You can also directly pick a row from the foreign table from a popover. You can even quickly add a new row to the foreign table!
- There is now a preference setting for the number of rows loaded per page in the table view (default 1000).
- I started with writing the documentation. The first section is “Connecting to a PostgreSQL Server”.
April 18, 2013
PG Terminal Beta 2
In this version I made some improvements to the sidebar:
- Only the current database appears in the sidebar by default. There is now a button to show all databases. This improves usability when connecting to a server with many databases.
- Errors when loading items in the sidebar are now properly reported.
- You can now reload the sidebar (eg. to make newly created tables show up)
Postico 1 0 9 – A Modern Postgresql Client Centered
PG Terminal Beta 1
Initial public version.
This release contains a variety of fixes from 9.0.18. For information about new features in the 9.0 major release, see Section E.24.
Postico 1 0 9 – A Modern Postgresql Client Permissions
E.5.1. Migration to Version 9.0.19
A dump/restore is not required for those running 9.0.X.
However, if you are upgrading from a version earlier than 9.0.18, see Section E.6.
E.5.2. Changes
- Fix buffer overruns in
to_char()
(Bruce Momjian)Whento_char()
processes a numeric formatting template calling for a large number of digits, PostgreSQL would read past the end of a buffer. When processing a crafted timestamp formatting template, PostgreSQL would write past the end of a buffer. Either case could crash the server. We have not ruled out the possibility of attacks that lead to privilege escalation, though they seem unlikely. (CVE-2015-0241) - Fix buffer overrun in replacement
*printf()
functions (Tom Lane)PostgreSQL includes a replacement implementation ofprintf
and related functions. This code will overrun a stack buffer when formatting a floating point number (conversion specifiers e, E, f, F, g or G) with requested precision greater than about 500. This will crash the server, and we have not ruled out the possibility of attacks that lead to privilege escalation. A database user can trigger such a buffer overrun through theto_char()
SQL function. While that is the only affected core PostgreSQL functionality, extension modules that use printf-family functions may be at risk as well.This issue primarily affects PostgreSQL on Windows. PostgreSQL uses the system implementation of these functions where adequate, which it is on other modern platforms. (CVE-2015-0242) - Fix buffer overruns in contrib/pgcrypto (Marko Tiikkaja, Noah Misch)Errors in memory size tracking within the pgcrypto module permitted stack buffer overruns and improper dependence on the contents of uninitialized memory. The buffer overrun cases can crash the server, and we have not ruled out the possibility of attacks that lead to privilege escalation. (CVE-2015-0243)
- Fix possible loss of frontend/backend protocol synchronization after an error (Heikki Linnakangas)If any error occurred while the server was in the middle of reading a protocol message from the client, it could lose synchronization and incorrectly try to interpret part of the message's data as a new protocol message. An attacker able to submit crafted binary data within a command parameter might succeed in injecting his own SQL commands this way. Statement timeout and query cancellation are the most likely sources of errors triggering this scenario. Particularly vulnerable are applications that use a timeout and also submit arbitrary user-crafted data as binary query parameters. Disabling statement timeout will reduce, but not eliminate, the risk of exploit. Our thanks to Emil Lenngren for reporting this issue. (CVE-2015-0244)
- Fix information leak via constraint-violation error messages (Stephen Frost)Some server error messages show the values of columns that violate a constraint, such as a unique constraint. If the user does not have SELECT privilege on all columns of the table, this could mean exposing values that the user should not be able to see. Adjust the code so that values are displayed only when they came from the SQL command or could be selected by the user. (CVE-2014-8161)
- Lock down regression testing's temporary installations on Windows (Noah Misch)Use SSPI authentication to allow connections only from the OS user who launched the test suite. This closes on Windows the same vulnerability previously closed on other platforms, namely that other users might be able to connect to the test postmaster. (CVE-2014-0067)
- Avoid possible data corruption if ALTER DATABASE SET TABLESPACE is used to move a database to a new tablespace and then shortly later move it back to its original tablespace (Tom Lane)
- Avoid corrupting tables when ANALYZE inside a transaction is rolled back (Andres Freund, Tom Lane, Michael Paquier)If the failing transaction had earlier removed the last index, rule, or trigger from the table, the table would be left in a corrupted state with the relevant pg_class flags not set though they should be.
- Fix use-of-already-freed-memory problem in EvalPlanQual processing (Tom Lane)In READ COMMITTED mode, queries that lock or update recently-updated rows could crash as a result of this bug.
- Fix planning of SELECT FOR UPDATE when using a partial index on a child table (Kyotaro Horiguchi)In READ COMMITTED mode, SELECT FOR UPDATE must also recheck the partial index's WHERE condition when rechecking a recently-updated row to see if it still satisfies the query's WHERE condition. This requirement was missed if the index belonged to an inheritance child table, so that it was possible to incorrectly return rows that no longer satisfy the query condition.
- Fix corner case wherein SELECT FOR UPDATE could return a row twice, and possibly miss returning other rows (Tom Lane)In READ COMMITTED mode, a SELECT FOR UPDATE that is scanning an inheritance tree could incorrectly return a row from a prior child table instead of the one it should return from a later child table.
- Reject duplicate column names in the referenced-columns list of a FOREIGN KEY declaration (David Rowley)This restriction is per SQL standard. Wallpaper wizard 2 v2 1 5. Previously we did not reject the case explicitly, but later on the code would fail with bizarre-looking errors.
- Fix bugs in raising a numeric value to a large integral power (Tom Lane)The previous code could get a wrong answer, or consume excessive amounts of time and memory before realizing that the answer must overflow.
- In
numeric_recv()
, truncate away any fractional digits that would be hidden according to the value's dscale field (Tom Lane)A numeric value's display scale (dscale) should never be less than the number of nonzero fractional digits; but apparently there's at least one broken client application that transmits binary numeric values in which that's true. This leads to strange behavior since the extra digits are taken into account by arithmetic operations even though they aren't printed. The least risky fix seems to be to truncate away such 'hidden' digits on receipt, so that the value is indeed what it prints as. - Reject out-of-range numeric timezone specifications (Tom Lane)Simple numeric timezone specifications exceeding +/- 168 hours (one week) would be accepted, but could then cause null-pointer dereference crashes in certain operations. There's no use-case for such large UTC offsets, so reject them.
- Fix bugs in tsquery@>tsquery operator (Heikki Linnakangas)Two different terms would be considered to match if they had the same CRC. Also, if the second operand had more terms than the first, it would be assumed not to be contained in the first; which is wrong since it might contain duplicate terms.
- Improve ispell dictionary's defenses against bad affix files (Tom Lane)
- Allow more than 64K phrases in a thesaurus dictionary (David Boutin)The previous coding could crash on an oversize dictionary, so this was deemed a back-patchable bug fix rather than a feature addition.
- Fix namespace handling in
xpath()
(Ali Akbar)Previously, the xml value resulting from anxpath()
call would not have namespace declarations if the namespace declarations were attached to an ancestor element in the input xml value, rather than to the specific element being returned. Propagate the ancestral declaration so that the result is correct when considered in isolation. - Fix planner problems with nested append relations, such as inherited tables within UNION ALL subqueries (Tom Lane)
- Fail cleanly when a GiST index tuple doesn't fit on a page, rather than going into infinite recursion (Andrew Gierth)
- Exempt tables that have per-table cost_limit and/or cost_delay settings from autovacuum's global cost balancing rules (Álvaro Herrera)The previous behavior resulted in basically ignoring these per-table settings, which was unintended. Now, a table having such settings will be vacuumed using those settings, independently of what is going on in other autovacuum workers. This may result in heavier total I/O load than before, so such settings should be re-examined for sanity.
- Avoid wholesale autovacuuming when autovacuum is nominally off (Tom Lane)Even when autovacuum is nominally off, we will still launch autovacuum worker processes to vacuum tables that are at risk of XID wraparound. However, such a worker process then proceeded to vacuum all tables in the target database, if they met the usual thresholds for autovacuuming. This is at best pretty unexpected; at worst it delays response to the wraparound threat. Fix it so that if autovacuum is turned off, workers only do anti-wraparound vacuums and not any other work.
- Fix race condition between hot standby queries and replaying a full-page image (Heikki Linnakangas)This mistake could result in transient errors in queries being executed in hot standby.
- Fix several cases where recovery logic improperly ignored WAL records for COMMIT/ABORT PREPARED (Heikki Linnakangas)The most notable oversight was that recovery_min_apply_delay failed to delay application of a two-phase commit.
- Avoid creating unnecessary .ready marker files for timeline history files (Fujii Masao)
- Fix possible null pointer dereference when an empty prepared statement is used and the log_statement setting is mod or ddl (Fujii Masao)
- Change 'pgstat wait timeout' warning message to be LOG level, and rephrase it to be more understandable (Tom Lane)This message was originally thought to be essentially a can't-happen case, but it occurs often enough on our slower buildfarm members to be a nuisance. Reduce it to LOG level, and expend a bit more effort on the wording: it now reads 'using stale statistics instead of current ones because stats collector is not responding'.
- Fix SPARC spinlock implementation to ensure correctness if the CPU is being run in a non-TSO coherency mode, as some non-Solaris kernels do (Andres Freund)
- Warn if OS X's
setlocale()
starts an unwanted extra thread inside the postmaster (Noah Misch) - Fix processing of repeated dbname parameters in
PQconnectdbParams()
(Alex Shulgin)Unexpected behavior ensued if the first occurrence of dbname contained a connection string or URI to be expanded. - Ensure that libpq reports a suitable error message on unexpected socket EOF (Marko Tiikkaja, Tom Lane)Depending on kernel behavior, libpq might return an empty error string rather than something useful when the server unexpectedly closed the socket.
- Clear any old error message during
PQreset()
(Heikki Linnakangas)IfPQreset()
is called repeatedly, and the connection cannot be re-established, error messages from the failed connection attempts kept accumulating in the PGconn's error string. - Properly handle out-of-memory conditions while parsing connection options in libpq (Alex Shulgin, Heikki Linnakangas)
- Fix array overrun in ecpg's version of
ParseDateTime()
(Michael Paquier) - In initdb, give a clearer error message if a password file is specified but is empty (Mats Erik Andersson)
- Fix psql's s command to work nicely with libedit, and add pager support (Stepan Rutz, Tom Lane)When using libedit rather than readline, s printed the command history in a fairly unreadable encoded format, and on recent libedit versions might fail altogether. Fix that by printing the history ourselves rather than having the library do it. A pleasant side-effect is that the pager is used if appropriate.This patch also fixes a bug that caused newline encoding to be applied inconsistently when saving the command history with libedit. Multiline history entries written by older psql versions will be read cleanly with this patch, but perhaps not vice versa, depending on the exact libedit versions involved.
- Improve consistency of parsing of psql's special variables (Tom Lane)Allow variant spellings of on and off (such as 1/0) for ECHO_HIDDEN and ON_ERROR_ROLLBACK. Report a warning for unrecognized values for COMP_KEYWORD_CASE, ECHO, ECHO_HIDDEN, HISTCONTROL, ON_ERROR_ROLLBACK, and VERBOSITY. Recognize all values for all these variables case-insensitively; previously there was a mishmash of case-sensitive and case-insensitive behaviors.
- Fix psql's expanded-mode display to work consistently when using border = 3 and linestyle = ascii or unicode (Stephen Frost)
- Fix possible deadlock during parallel restore of a schema-only dump (Robert Haas, Tom Lane)
- Fix core dump in pg_dump --binary-upgrade on zero-column composite type (Rushabh Lathia)
- Fix block number checking in contrib/pageinspect's
get_raw_page()
(Tom Lane)The incorrect checking logic could prevent access to some pages in non-main relation forks. - Fix contrib/pgcrypto's
pgp_sym_decrypt()
to not fail on messages whose length is 6 less than a power of 2 (Marko Tiikkaja) - Handle unexpected query results, especially NULLs, safely in contrib/tablefunc's
connectby()
(Michael Paquier)connectby()
previously crashed if it encountered a NULL key value. It now prints that row but doesn't recurse further. - Avoid a possible crash in contrib/xml2's
xslt_process()
(Mark Simonetti)libxslt seems to have an undocumented dependency on the order in which resources are freed; reorder our calls to avoid a crash. - Numerous cleanups of warnings from Coverity static code analyzer (Andres Freund, Tatsuo Ishii, Marko Kreen, Tom Lane, Michael Paquier)These changes are mostly cosmetic but in some cases fix corner-case bugs, for example a crash rather than a proper error report after an out-of-memory failure. None are believed to represent security issues.
- Detect incompatible OpenLDAP versions during build (Noah Misch)With OpenLDAP versions 2.4.24 through 2.4.31, inclusive, PostgreSQL backends can crash at exit. Raise a warning during configure based on the compile-time OpenLDAP version number, and test the crashing scenario in the contrib/dblink regression test.
- In non-MSVC Windows builds, ensure libpq.dll is installed with execute permissions (Noah Misch)
- Make pg_regress remove any temporary installation it created upon successful exit (Tom Lane)This results in a very substantial reduction in disk space usage during make check-world, since that sequence involves creation of numerous temporary installations.
- Support time zone abbreviations that change UTC offset from time to time (Tom Lane)Previously, PostgreSQL assumed that the UTC offset associated with a time zone abbreviation (such as EST) never changes in the usage of any particular locale. However this assumption fails in the real world, so introduce the ability for a zone abbreviation to represent a UTC offset that sometimes changes. Update the zone abbreviation definition files to make use of this feature in timezone locales that have changed the UTC offset of their abbreviations since 1970 (according to the IANA timezone database). In such timezones, PostgreSQL will now associate the correct UTC offset with the abbreviation depending on the given date.
- Update time zone abbreviations lists (Tom Lane)Add CST (China Standard Time) to our lists. Remove references to ADT as 'Arabia Daylight Time', an abbreviation that's been out of use since 2007; therefore, claiming there is a conflict with 'Atlantic Daylight Time' doesn't seem especially helpful. Fix entirely incorrect GMT offsets for CKT (Cook Islands), FJT, and FJST (Fiji); we didn't even have them on the proper side of the date line.
- Update time zone data files to tzdata release 2015a.The IANA timezone database has adopted abbreviations of the form AxST/AxDT for all Australian time zones, reflecting what they believe to be current majority practice Down Under. These names do not conflict with usage elsewhere (other than ACST for Acre Summer Time, which has been in disuse since 1994). Accordingly, adopt these names into our 'Default' timezone abbreviation set. The 'Australia' abbreviation set now contains only CST, EAST, EST, SAST, SAT, and WST, all of which are thought to be mostly historical usage. Note that SAST has also been changed to be South Africa Standard Time in the 'Default' abbreviation set.Also, add zone abbreviations SRET (Asia/Srednekolymsk) and XJT (Asia/Urumqi), and use WSST/WSDT for western Samoa. Also, there were DST law changes in Chile, Mexico, the Turks & Caicos Islands (America/Grand_Turk), and Fiji. There is a new zone Pacific/Bougainville for portions of Papua New Guinea. Also, numerous corrections for historical (pre-1970) time zone data.