2.8.1:
- fixed regression in 2.8 for members returned in AD auto-range search
- fixed regression in 2.8 for attribute error in restartable class
- try to use Crypto library if present for hashing NTLM password on python interpreter missing the MD4 OpenSSL algorithm
OpenLDAP 2.4.52 (2020/08/28)
Added libldap LDAP_OPT_X_TLS_REQUIRE_SAN option
Added libldap OpenSSL support for multiple EECDH curves
Added slapd OpenSSL support for multiple EECDH curves
Fixed librewrite malloc/free corruption
Fixed libldap hang when using UDP and server down
Fixed slapd syncrepl rare deadlock due to network issues
Fixed slapd syncrepl regression that could trigger an assert
Fixed slapd-mdb index error with collapsed range
1.08 Sat Jan 18 2020 Todd Rinaldo
Switch testing to github actions
update MANIFEST and .gitignorew
Switch to github issues
1.07 Tue Apr 12 2016 Todd Rinaldo
Stop using vars in favor of ours
Add Travis support
Debian QA tool tidy fix
Apply Perl::Tidy 20150815 and track .perltidyrc
Fixes RT 104338 - prepare fails when a question mark appears in a text field
Add an explicit minimum version of perl supported
Add warnings.
0.819 (06.16.2020) - John Siracusa <siracusa@gmail.com>
* Attempt to fix a failing test by adding a workaround for an undef
return value from crypt().
0.818 (06.08.2020) - John Siracusa <siracusa@gmail.com>
* Fixed tests that were failing due to "future" dates that are
now in the past (RT 132782)
0.817 (04.05.2020) - John Siracusa <siracusa@gmail.com>
* Added missing module load in Rose::DB::Object::Metadata::Util
(RT 132300)
0.816 (04.03.2020) - John Siracusa <siracusa@gmail.com>
* Updated to support DBD::Pg 3.8.0 and later.
0.783 (04.06.2020) - John Siracusa <siracusa@gmail.com>
* Fixed a bug in DBD::Pg version detection.
0.782 (04.03.2020) - John Siracusa <siracusa@gmail.com>
* Added workarounds for changes to the behavior of the TABLE_CAT catalog
name key in DBD::Pg 3.8.0 and later.
0.781 (01.06.2020) - John Siracusa <siracusa@gmail.com>
* Corrected the MANIFEST file. Fixed MariaDB test counts.
0.780 (01.06.2020) - John Siracusa <siracusa@gmail.com>
* Added basic support for MariaDB. (Patch by Peter Karman.)
0.779 (08.09.2019) - John Siracusa <siracusa@gmail.com>
* Added skip_locked support for PostgreSQL. (Patch by fhendrikx.)
1.998 2020-08-18 11:04:12+02:00 Europe/Paris
* remove test expression that is problematic on OpenBSD and NetBSD
1.997 2020-80-17 10:03:00+01:00 Europe/Paris
* various travis fixes
* #112 applied
* enable unix socket tests by enabling them in the local test server
* #144: change exists into defined
* #146: Fix sentinel option typo
1.996 2020-03-05 16:17:21+01:00 Europe/Paris
1.996 2020-03-05 11:56:11+01:00 Europe/Paris
* #139: Fix for "Unexpected error condition 104/linux"
1.995 2019-07-22 11:20:07+02:00 Europe/Paris
* revert #136, remove deps that are in core, as it breaks builds in some setup
1.994 2019-07-22 07:51:57+02:00 Europe/Paris
* Don't send SELECT if current database equals the one being selected (@dallaylaen, #132)
1.993 2019-07-22 07:01:30+02:00 Europe/Paris
* fix missing deps (@manwar, #136 )
1.992 2019-07-21 18:27:23+02:00 Europe/Paris
* relax the check in 04-pipeline.t about unknown command output (#130)
2.036000 2020-03-28 14:16:39-07:00 America/Los_Angeles
- fix remove_columns shortcut to add the 'remove_columns' attribute
in case it is missing (Karen Etheridge, #101)
- Add support for query condition to results_exist() and
results_exist_as_query() in Helper::ResultSet::Shortcut::ResultsExist
(Daniel Böhmer, GH#102)
2.035000 2020-02-21 08:38:42-08:00 America/Los_Angeles
- add remove_columns shortcut (Karen Etheridge, GH#100)
0.082842 2020-06-16 20:10 (UTC)
* New Features
- An on_connect rebase_sqlmaker call allowing experimentation with
non-core SQL generators on a per-$schema-instance basis
https://is.gd/DBIC_rebase_sqlmaker
- Automatically detect and use multi-column IN on recent versions of
libsqlite: ... WHERE ( foo, bar ) IN ( SELECT foo, bar FROM ... )
* Fixes
- Fix silent failure to retrieve a primary key (RT#80283) or worse:
returning an incorrect value (RT#115381) in case a rdbms-side autoinc
column is declared as PK with the is_auto_increment attribute unset
- Fix overly-aggressive condition unrolling, corrupting custom ops with
array arguments (RT#132390)
- Fix docs on how to properly use Moo(se) in ResultSet's, and fix a
corner case of ->count not functioning properly when the old recipe
was being used (GH#105)
- Fix incorrect ::Storage->_ping() behavior under Sybase (RT#114214)
- Work around breakage in Hash::Merge by soft-requiring Clone as part
of the replicated subsystem (RT#124321)
* Misc
- DBIC_TRACE_PROFILE=... now uses a ::Storage::Statistics subclass
DBIx::Class::Storage::Debug::PrettyTrace which properly ships as a
part of this distrinbution
- Switch out SQL::Abstract dependency with a slower moving dist
- Remove Data::Page dependency by inlining its entirety into the core
DBIx::Class::ResultSet::Pager (RT#130686)
This module was inspired by the excellent DBIx::Abstract. However,
in using that module I found that what I really wanted to do was
generate SQL, but still retain complete control over my statement
handles and use the DBI interface. So, I set out to create an
abstract SQL generation module.
11.97
- Add missing dependencies.
- Document some awkward behaviour. RT#21200
11.96_03
- Add options for handling of booleans. RT#53311 (Mike Pomraning)
11.96_02
- Add missing versions to this file. RT#39187
- Be more helpful if DBI::Shell::Spool is missing. RT#24538
- Give every .pm a version identifier.
11.96_01
- Suppress warning in DBI::Format::SQLMinus. RT#123216 (Kent Fredric)
11.96
- Automatically save command history.
- Remove warning message.
- Correct links in POD to work in metacpan.
- Tidy up metadata.
11.95_03
- Correct sense of interactivity check.
11.95_02
- Use IO::Interactive.
11.95_01
- Resolved RT#123215, warning from File::Find.
- Added RT#65253, permit empty passwords.
- Resolved RT#121136, testing without "." in @INC.
- Resolved RT#73873, warning fix.
- Possibly resolved RT#12167, missing dependency on DBI.
- Switch build to Dist::Zilla.
Version 3.14.2 (released August 13, 2020)
- Fix ENV typo in the test suite
[Gregor Herrmann]
- Renamed and enhanced test helper script: dbdpg_test_postgres_versions.pl
[Greg Sabino Mullane]
Version 3.14.1 (released August 12, 2020)
- Force the version string so undefined errors in the "driver" sub go away.
[Greg Sabino Mullane]
(RT ticket #83057)
Version 3.14.0 (released July 19, 2020)
- The $dbh->primary_key_info and $dbh->foreign_key_info methods will now always return
a statement handle, even with no matches. Previously, they returned undef directly.
Callers can check if the returned handle contains any rows.
[Greg Sabino Mullane]
- The $dbh->tables method will always return a list, even if it is empty.
[Greg Sabino Mullane]
- Add pg_lo_tell64, pg_lo_seek64, and pg_lo_truncate64, for anyone dealing
with really, really, really large 'large objects'. Requires Postgres 9.3 or better.
[Greg Sabino Mullane]
(RT ticket #123561)
- Allow test to run again when using a non-superuser to connect
[Greg Sabino Mullane]
(RT ticket #132865)
- Adjust tests to force loading proper version of DBD::Pg every time.
[Greg Sabino Mullane]
- Removed the long-deprecated _pg_use_catalog method.
[Greg Sabino Mullane]
- Many improvements and changes to the test suite.
[Greg Sabino Mullane]
Version 3.13.0 (released June 17, 2020)
- Redo the "last_result" internals in dbdimp.c, which
fixes a memory leak.
[Greg Sabino Mullane]
(RT ticket #132812)
- Fix regression in Perl length() for returned query results
[Jon Jensen]
(Github issue #72)
- Make $sth->finish() do a little less. Notably, even
after calling finish(), pg_error_field will still work
on the last action performed.
[Greg Sabino Mullane]
- Tweak tests so Windows boxes pass
[Greg Sabino Mullane]
Version 3.12.3 (released June 5, 2020)
- Prevent DBI from flipping AutoCommit to 'on' after a failed commit
[Greg Sabino Mullane]
(Github issue #71)
Version 3.12.2 (released June 4, 2020)
- Revert overly aggressive testing shortcut as it can cause installs to fail
[Greg Sabino Mullane, with apologies]
Version 3.12.1 (released June 3, 2020)
- Remove test that assumed '(12,34)' is an invalid entry for type "circle",
as the Postgres source code changed this behavior on April 7, 2020
[Greg Sabino Mullane]
(RT ticket #132740)
Version 3.12.0 (released May 7, 2020)
- Add CONTRIBUTING.md file
- Return the table info row last in statistics_info.
This fixes statistics_info on pre-8.3 servers.
[Dagfinn Ilmari Mannsåker]
- Fix ASC_OR_DESC field in statistics_info
[Dagfinn Ilmari Mannsåker]
- Indicate NULL ordering in statistics_info
[Dagfinn Ilmari Mannsåker]
Version 3.11.1 (released April 28, 2020)
- Adjust Makefile to fix failing 'fulltest' target on BSD systems
[Slaven Rezić]
(RT ticket #132412)
Version 3.11.0 (released April 23, 2020)
- Indicate non-key index columns (INCLUDE) in statistics_info
[Dagfinn Ilmari Mannsåker]
- Return an empty result set instead of undef from statistics_info
when the requested table doesn't exist and $unique_only is false.
[Dagfinn Ilmari Mannsåker]
- Fix segfault during st destroy
[Gregory Oschwald]
(Github pull request #66)
(Github issue #57)
- Improve testing for table_info()
[Greg Sabino Mullane]
(Github issue #67)
- Improve UTF-8 wording in docs
[Felipe Gasper]
(Github pull request #65)
Version 3.10.5 (released March 23, 2020)
- Minor adjustment for Windows build
(RT ticket #131752)
- Allow test suite to work on an EnterpriseDB server
[H.Merijn Brand]
(RT ticket #132203)
- Add small warning regarding ShowErrorStatement
(RT ticket #120268)
Version 3.10.4 (released February 3, 2020)
- Allow localtime from Time::Piece to be used directly as a bind value again.
This applies to all "magical" arrays.
[Greg Sabino Mullane]
(Github issue #63)
- Force tests to NOT run in parallel.
[Greg Sabino Mullane]
(RT ticket #130834)
Version 3.10.3 (released January 20, 2020)
- Set things cleared via PQclear to NULL as soon as possible, to remove race conditions
[Greg Sabino Mullane]
(RT ticket #131522)
Version 3.10.2 (released January 17, 2020)
- Adjust tests to pass on 32-bit machines
[Greg Sabino Mullane]
(RT ticket #131482)
Version 3.10.1 (released January 13, 2020)
- Prevent double-free memory errors
[Greg Sabino Mullane]
(RT ticket #130681)
- Fix crash when pg_error_field is called
[Greg Sabino Mullane]
(RT ticket #130721)
- Update the list of Postgres reserved words in quote.c
Version 3.10.0 (released September 3, 2019)
- Prevent memory leak related to pg_error_field
[Greg Sabino Mullane]
(RT ticket #130430)
- Fix for bug by making sure pg_error_field works properly when switching between
do-with-params and do-without-params.
[Greg Sabino Mullane]
(Github issue #57)
- If a commit or rollback fails, do not set BegunWork
[Greg Sabino Mullane]
(Github issue #40)
- Treat partitioned tables same as regular tables for column_info, table_info,
and foreign_key_info (i.e. support pg_class.relkind = 'p')
[Octavian R. Corlade]
(Github pull request #55)
- Allow last_insert_id() to work against inherited tables
[Greg Sabino Mullane]
(RT ticket #52441)
- Add DBI SQL_BLOB, SQL_BINARY and SQL_LONGVARBINARY types as alias for PG_BYTEA
[Pali]
(Github pull request #58)
1.66 2020-08-30
- Switched to a production version
1.65_03 2020-07-27
- Upgraded SQLite to 3.32.3
1.65_02 2020-02-08
- Upgraded SQLite to 3.31.1
1.65_01 2020-01-18
- Upgraded SQLite to 3.30.1
- Added several SQL_ types as alias (pali++)
- Fixed two initialization issues (ppisar++)
- Allowed create_function to return an array reference
to specify the type of the value
1.61 2020-01-30
[BUG FIXES]
Fix 12blob.t test by pali
Fix searching for ODBC libraries in system by pali (#15)
[ENHANCEMENTS]
use PERL_NO_GET_CONTEXT for more performance by markusbeth (#13)
[MISCELLANEOUS]
Fix travis builds for older Perls by pali
1.55 2019-12-30T14:20:00Z
- Fixed bug rt131264 t/033_table_info.t fails (with older DBI)
1.54 2019-12-23T12:44:22Z
- Added Bernhard Graf's 'Feature: one shot failure' merge request.
- Fixed description of the failure attribute of mock_add_resultset. It
no longer claims to support a hash ref (as it doesn't). Thanks to
Bernhard Graf for both the bug report and a merge request that fixes it.
- Fixed bug where it wasn't possible to replace a regular expression
mock resultset. Thanks to Bernhard Graf for both the bug report and
a merge request that fixes it.
- Fixed bug where the failure attribute wasn't working with regular
expression mock resultsets. Thanks to Bernhard Graf for both the bug
report and a merge request that fixes it.
1.53 2019-12-03T10:50:57Z
- Error handling in mock_add_resultset is no longer experimental
- Attribute Aliasing is no longer experimental
1.52 2019-10-28T11:35:41Z
- Added in callback feature for result sets so that their contents
can be more dynamic.
1.51 2019-10-23T11:43:51Z
- Fixed issue with using attribute aliases alongside a driver DSN
in the DBI->connect call
1.50 2019-10-22T19:37:26Z
- Added attribute aliases support for MariaDB
Version 2.11 - 9 Jul 2020
- Introduction of the barman-cli-cloud package that contains all cloud
related utilities.
- Add barman-cloud-wal-restore to restore a WAL file previously
archived with barman-cloud-wal-archive from an object store
- Add barman-cloud-restore to restore a backup previously taken with
barman-cloud-backup from an object store
- Add barman-cloud-backup-list to list backups taken with
barman-cloud-backup in an object store
- Add support for arbitrary archive size for barman-cloud-backup
- Add support for --endpoint-url option to cloud utilities
- Remove strict superuser requirement for PG 10+ (by Kaarel Moppel)
- Add --log-level runtime option for barman to override default log
level for a specific command
- Support for PostgreSQL 13
- Bug fixes:
- Suppress messages and warning with SSH connections in barman-cli
(GH-257)
- Fix a race condition when retrieving uploaded parts in
barman-cloud-backup (GH-259)
- Close the PostgreSQL connection after a backup (GH-258)
- Check for uninitialized replication slots in receive-wal --reset
(GH-260)
- Ensure that begin_wal is valorised before acting on it (GH-262)
- Fix bug in XLOG/WAL arithmetic with custom segment size (GH-287)
- Fix rsync compatibility error with recent rsync
- Fix PostgreSQLClient version parsing
- Fix PostgreSQL exception handling with non ASCII messages
- Ensure each postgres connection has an empty search_path
- Avoid connecting to PostgreSQL while reading a backup.info file
If you are using already barman-cloud-wal-archive or barman-cloud-backup
installed via RPM/Apt package and you are upgrading your system, you
must install the barman-cli-cloud package. All cloud related tools are
now part of the barman-cli-cloud package, including
barman-cloud-wal-archive and barman-cloud-backup that were previosly
shipped with barman-cli. The reason is complex dependency management of
the boto3 library, which is a requirement for the cloud utilities.
Version 2.10 - 5 Dec 2019
- Pull .partial WAL files with get-wal and barman-wal-restore,
allowing restore_command in a recovery scenario to fetch a partial
WAL file's content from the Barman server. This feature simplifies
and enhances RPO=0 recovery operations.
- Store the PostgreSQL system identifier in the server directory and
inside the backup information file. Improve check command to verify
the consistency of the system identifier with active connections
(standard and replication) and data on disk.
- A new script called barman-cloud-wal-archive has been added to the
barman-cli package to directly ship WAL files from PostgreSQL (using
archive_command) to cloud object storage services that are
compatible with AWS S3. It supports encryption and compression.
- A new script called barman-cloud-backup has been added to the
barman-cli package to directly ship base backups from a local
PostgreSQL server to cloud object storage services that are
compatible with AWS S3. It supports encryption, parallel upload,
compression.
- Automated creation of replication slots through the server/global
option create_slot. When set to auto, Barman creates the replication
slot, in case streaming_archiver is enabled and slot_name is
defined. The default value is manual for back-compatibility.
- Add '-w/--wait' option to backup command, making Barman wait for all
required WAL files to be archived before considering the backup
completed. Add also the --wait-timeout option (default 0, no
timeout).
- Redact passwords from Barman output, in particular from
barman diagnose (InfoSec)
- Improve robustness of receive-wal --reset command, by verifying that
the last partial file is aligned with the current location or, if
present, with replication slot's.
- Documentation improvements
- Bug fixes:
- Wrong string matching operation when excluding tablespaces
inside PGDATA (GH-245)
- Minor fixes in WAL delete hook scripts (GH-240)
- Fix PostgreSQL connection aliveness check (GH-239)
Version 2.9 - 1 Aug 2019
- Transparently support PostgreSQL 12, by supporting the new way of
managing recovery and standby settings through GUC options and
signal files (recovery.signal and standby.signal)
- Add --bwlimit command line option to set bandwidth limitation for
backup and recover commands
- Ignore WAL archive failure for check command in case the latest
backup is WAITING_FOR_WALS
- Add --target-lsn option to set recovery target Log Sequence Number
for recover command with PostgreSQL 10 or higher
- Add --spool-dir option to barman-wal-restore so that users can
change the spool directory location from the default, avoiding
conflicts in case of multiple PostgreSQL instances on the same
server (thanks to Drazen Kacar).
- Rename barman_xlog directory to barman_wal
- JSON output writer to export command output as JSON objects and
facilitate integration with external tools and systems (thanks to
Marcin Onufry Hlybin). Experimental in this release.
Bug fixes:
- replication-status doesn’t show streamers with no slot (GH-222)
- When checking that a connection is alive (“SELECT 1” query),
preserve the status of the PostgreSQL connection (GH-149). This
fixes those cases of connections that were terminated due to
idle-in-transaction timeout, causing concurrent backups to fail.
Version 2.8 - 17 May 2019
- Add support for reuse_backup in geo-redundancy for incremental
backup copy in passive nodes
- Improve performance of rsync based copy by using strptime instead of
the more generic dateutil.parser (#210)
- Add ‘--test’ option to barman-wal-archive and barman-wal-restore to
verify the connection with the Barman server
- Complain if backup_options is not explicitly set, as the future
default value will change from exclusive_backup to concurrent_backup
when PostgreSQL 9.5 will be declared EOL by the PGDG
- Display additional settings in the show-server and diagnose
commands: archive_timeout, data_checksums, hot_standby,
max_wal_senders, max_replication_slots and wal_compression.
- Merge the barman-cli project in Barman
- Bug fixes:
- Fix encoding error in get-wal on Python 3 (Jeff Janes, #221)
- Fix exclude_and_protect_filter (Jeff Janes, #217)
- Remove spurious message when resetting WAL (Jeff Janes, #215)
- Fix sync-wals error if primary has WALs older than the first
backup
- Support for double quotes in synchronous_standby_names setting
- Minor changes:
- Improve messaging of check --nagios for inactive servers
- Log remote SSH command with recover command
- Hide logical decoding connections in replication-status command
This release officially supports Python 3 and deprecates Python 2 (which
might be discontinued in future releases).
PostgreSQL 9.3 and older is deprecated from this release of Barman.
Support for backup from standby is now limited to PostgreSQL 9.4 or
higher and to WAL shipping from the standby (please refer to the
documentation for details).
Version 2.7 - 21 Mar 2019
- Fix error handling during the parallel backup. Previously an
unrecoverable error during the copy could have corrupted the barman
internal state, requiring a manual kill of barman process with
SIGTERM and a manual cleanup of the running backup in PostgreSQL.
(GH#199)
- Fix support of UTF-8 characters in input and output (GH#194 and
GH#196)
- Ignore history/backup/partial files for first sync of geo-redundancy
(GH#198)
- Fix network failure with geo-redundancy causing cron to break
(GH#202)
- Fix backup validation in PostgreSQL older than 9.2
- Various documentation fixes
Version 2.6 - 4 Feb 2019
- Add support for Geographical redundancy, introducing 3 new commands:
sync-info, sync-backup and sync-wals. Geo-redundancy allows a Barman
server to use another Barman server as data source instead of a
PostgreSQL server.
- Add put-wal command that allows Barman to safely receive WAL files
via PostgreSQL's archive_command using the barman-wal-archive script
included in barman-cli
- Add ANSI colour support to check command
- Minor fixes:
- Fix switch-wal on standby with an empty WAL directory
- Honour archiver locking in wait_for_wal method
- Fix WAL compression detection algorithm
- Fix current_action in concurrent stop backup errors
- Do not treat lock file busy as an error when validating a backup
Version 1.18.1 - 2018-10-27
* Fix debian bug 910911
This restores backward compatibility with databases created by version
1.8 (and some later versions, with mmapped I/O disabled).
See https://bugs.debian.org/910911 for a detailed description.
Version 1.18 - 2018-08-21
* Bugfixes:
** Fix directory entry validation
See https://puszcza.gnu.org.ua/bugs/?402
Directory validation function would falsely report corruption after
several directory reallocations.
** Fix improper use of GDBM_DEBUG macro
See https://puszcza.gnu.org.ua/bugs/?401
** Fix spurious error from gdbm_dump and gdbm_export
The functions incorrectly reported as error the GDBM_ITEM_NOT_FOUND
status, which is reported when upon normal termination of iteration
over the database keys.
** Make sure gdbm_sync always returns a meaningful value
See https://puszcza.gnu.org.ua/bugs/?400
Version 1.17 - 2018-07-30
* int gdbm_close and gdbm_sync
Both functions now return 0 on success. On error, they return -1
and set gdbm_errno and errno to the appropriate error codes.
* Fix bug in gdbm_dump function
The function did not clear the GDBM_ITEM_NOT_FOUND error marker, which
is set upon its normal termination.
Version 1.16 - 2018-06-27
* Maintain sorting order of the available block list after coalescing
This is a very long-standing bug, dated back to the time when optional
coalescing of available blocks with the newly released block was
introduced. Merging the released block with an adjacent block of
available space would clobber the sorting order of the available list.
The bug was discovered due to strict database consistency checks,
introduced in version 1.15.
The fix introduced in this version will silently restore the proper
sorting order of available block list before its use.
* Improve block merging algorithm
New implementation of block merging algorithm will correctly handle
both left and right-adjacent blocks.
Version 1.15 - 2018-06-15
* Extensive database consistency checking
GDBM tries to detect inconsistencies in input database files as
early as possible. When an inconcistency is detected, a helpful
diagnostics is returned and the database is marked as needing
recovery. From this moment on, any GDBM function trying to access
the database will immediately return error code (instead of
eventually segfaulting as previous versions did). In order to
reconstruct the database and return it to healthy state, the
gdbm_recover function should be used.
Special thanks to Lionel Debroux and Craig Young for investing
their time and efforts in testing and providing valuable feedback.
* Improved error checking
* Removed gdbm-1.8.3 compatibility layer
* Commands can be given to gdbmtool in the command line
The syntax is:
gdbmtool DBNAME COMMAND [ARGS...]
Multiple commands are separated by semicolon (take care to escape it),
e.g.:
gdbmtool t.db count\; avail
* Fixed data conversion bugs in storing structured keys or content
* New member in the gdbm_recovery structure: duplicate_keys.
Upon return from gdbm_recover, this member holds the number of keys
that has not been recovered, because the same key had already been stored
in the database. The actual number of stored keys is thus
recovered_keys - duplicate_keys.
* New error codes.
GDBM_BAD_BUCKET "Malformed bucket header"
GDBM_BAD_HEADER "Malformed database file header"
GDBM_BAD_AVAIL "Malformed avail_block"
GDBM_BAD_HASH_TABLE "Malformed hash table"
GDBM_BAD_DIR_ENTRY "Invalid directory entry"
redis does not look in a particular path but wants the config file
path passed on the command line. The SMF script already did this,
but the rc.d script passed configuration on the command line,
causing redis to neither write a log file nor a database by default.
Bump PKGREVISION.
SQLite Release 3.33.0
Support for UPDATE FROM following the PostgreSQL syntax.
Increase the maximum size of database files to 281 TB.
Extended the PRAGMA integrity_check statement so that it can optionally be limited to verifying just a single table and its indexes, rather than the entire database file.
Added the decimal extension for doing arbitrary-precision decimal arithmetic.
Enhancements to the ieee754 extension for working with IEEE 754 binary64 numbers.
CLI enhancements:
Added four new output modes: "box", "json", "markdown", and "table".
The "column" output mode automatically expands columns to contain the longest output row and automatically turns ".header" on if it has not been previously set.
The "quote" output mode honors ".separator"
The decimal extension and the ieee754 extension are built-in to the CLI
Query planner improvements:
Add the ability to find a full-index-scan query plan for queries using INDEXED BY which previously would fail with "no query solution".
Do a better job of detecting missing, incomplete, and/or dodgy sqlite_stat1 data and generates good query plans in spite of the misinformation.
Improved performance of queries like "SELECT min(x) FROM t WHERE y IN (?,?,?)" assuming an index on t(x,y).
In WAL mode, if a writer crashes and leaves the shm file in an inconsistent state, subsequent transactions are now able to recover the shm file even if there are active read transactions. Before this enhancement, shm file recovery that scenario would result in an SQLITE_PROTOCOL error.
PostgreSQL 12.4, 11.9, 10.14, 9.6.19, 9.5.23
Security Issues
CVE-2020-14349: Uncontrolled search path element in logical replication.
Versions Affected: 10 - 12.
The PostgreSQL search_path setting determines schemas searched for tables, functions, operators, etc. The CVE-2018-1058 fix caused most PostgreSQL-provided client applications to sanitize search_path, but logical replication continued to leave search_path unchanged. Users of a replication publisher or subscriber database can create objects in the public schema and harness them to execute arbitrary SQL functions under the identity running replication, often a superuser. Installations having adopted a documented secure schema usage pattern are not vulnerable.
The PostgreSQL project thanks Noah Misch for reporting this problem.
CVE-2020-14350: Uncontrolled search path element in CREATE EXTENSION.
Versions Affected: 9.5 - 12. The security team typically does not test unsupported versions, but this problem is quite old.
When a superuser runs certain CREATE EXTENSION statements, users may be able to execute arbitrary SQL functions under the identity of that superuser. The attacker must have permission to create objects in the new extension's schema or a schema of a prerequisite extension. Not all extensions are vulnerable.
In addition to correcting the extensions provided with PostgreSQL, the PostgreSQL Global Development Group is issuing guidance for third-party extension authors to secure their own work.
Bug Fixes and Improvements
This update also fixes over 50 bugs that were reported in the last several months. Some of these issues affect only version 12, but many affect all supported versions.
Some of these fixes include:
Fix edge cases in partition pruning involving multiple partition key columns with multiple or no constraining WHERE clauses.
Several fixes for query planning and execution involving partitions.
Fix for determining when to execute a column-specific UPDATE trigger on a logical replication subscriber.
pg_replication_slot_advance() now updates the oldest xmin and LSN values, as the failure to do this could prevent resources (e.g. WAL files) from being cleaned up.
Fix a performance regression in ts_headline().
Ensure that pg_read_file() and related functions read until EOF is reached, which fixes compatibility with pipes and other virtual files.
Forbid numeric NaN values in jsonpath computations, which do not exist in SQL nor JSON.
Several fixes for NaN inputs with aggregate functions. This fixes a change in PostgreSQL 12 where NaN values caused the following aggregates to emit values of 0 instead of NaN: corr(), covar_pop(), regr_intercept(), regr_r2(), regr_slope(), regr_sxx(), regr_sxy(), regr_syy(), stddev_pop(), and var_pop().
time and timetz values fractionally greater than 24:00:00 are now rejected.
Several fixes for EXPLAIN, including a fix for reporting resource usage when a plan uses parallel workers with "Gather Merge" nodes.
Fix timing of constraint revalidation in ALTER TABLE that could lead to odd errors.
Fix for REINDEX CONCURRENTLY that could prevent old values from being included in future logical decoding output.
Fix for LATERAL references that could potentially cause crashes during query execution.
Use the collation specified for a query when estimating operator costs
Fix conflict-checking anomalies in SERIALIZABLE transaction isolation mode.
Ensure checkpointer process discards file sync requests when fsync is off
Fix issue where pg_control could be written out with an inconsistent checksum, which could lead to the inability to restart the database if it crashed before the next pg_control update.
Ensure that libpq continues to try to read from the database connection socket after a write failure, as this allows the connection to collect any final error messages from the server.
Report out-of-disk-space errors properly in pg_dump and pg_basebackup
Several fixes for pg_restore, including a fix for parallel restore on tables that have both table-level and column-level privileges.
Fix for pg_upgrade to ensure it runs with vacuum_defer_cleanup_age set to 0.
Fix how pg_rewind handles just-deleted files in the source data directory
Fix failure to initialize local state correctly in contrib/dblink, which could lead to dblink_close() issuing an unexpected COMMIT on the remote server.
Change contrib/amcheck to not report about deleted index pages that are empty, as this is normal during WAL replay.
2.8:
- new feature: SafeSync strategy (SAFE_SYNC) for using a synchronous Connection object in a multi-threading program
- new feature: LDIF_LINE_LENGTH for specifying line length wrapping in ldif-content output (default to 78 as per RFC 2849)
- fixed requirements for pyasn1
- fixed regression for ldapi connections
- fixed issue with lazy connection requesting server info on every operation
- fixed searching by objectGUID in hex format (thanks Matt)
- added iso_format parameter to utils.format_json to return dates in ISO format (thanks Hugh)
- fixed issue with Referral attributes not returned by the referral server (thanks Nazarii)
- fixed lost error message in auto_bind (thanks cfelder)
- fixed delete_old_dn in mock connections (thanks kpinc)
- fixed a ResourceWarning with lazy connections
- fixed entry_to_json() that in python2 modified the original entry value (thanks Dirk-Jan)
- tests desnt' raise Exception if real server is not present
asyncpg v0.21.0
Improvements
Add support for password functions (useful for RDS IAM auth)
Add support for connection termination listeners
Update CI matrix, aarch64 builds
Fixes
Fix possible uninitalized pointer access on unexpected array
message data (CVE-2020-17446)
Fix Connection class _copy_in private method
Bump pgproto to fix compilation issues
Improve pool documentation examples
Update usage.rst
Fix links in connection documentation
Fix usage documentation for hstore
Fix compiler warnings
Update ruby-sequel to 5.35.0.
=== 5.35.0 (2020-08-01)
* Recognize another disconnect error in the oracle adapter (sterlzbd) (#1705)
* Consider all associations with :dataset options as instance-specific associations (jeremyevans)
* Make Model.finalize_associations not break with instance-specific associations (jeremyevans)
* Make association placeholder loader consider block if instance_specific: false association option is used (jeremyevans)
* Copy composite unique constraints when emulating alter table operations on SQLite (jeremyevans) (#1704)
* Add instance_specific_default plugin for setting default association :instance_specific value, or warning/raising for cases where it is not specified (jeremyevans)
* Make Model.plugin issue deprecation warning if loading plugin with arguments and block if plugin does not accept arguments/block (jeremyevans)
* Make validation_class_methods consider all :if, :allow_missing, :allow_nil, and :allow_blank settings, instead of just the first (jeremyevans)
* Include hash entries with nil keys in Dataset#to_dot output in to_dot extension (jeremyevans)
* Remove unneeded conditionals from plugins and extensions (jeremyevans)
* Fix exception class in run_transaction_hooks extension if calling run_after_{commit,rollback}_hooks outside of a transaction (jeremyevans)
=== 5.34.0 (2020-07-01)
* Make eager_graph work correctly if called with no associations (jeremyevans)
* Make :ruby eager limit strategy handle cases where there is no limit or
offset (jeremyevans)
* Do not keep a reference to a Sequel::Database instance that raises an
exception during initialization (jeremyevans)
* Make Database#pool.all_connections not yield for a single connection pool
in disconnected state (jeremyevans)
* Raise an exception if trying to disconnect a server that doesn't exist in
the sharded connection pools (jeremyevans)
* Support :refresh option when calling *_pks getter method in the
association_pks plugin (jeremyevans)
* Support caching of repeated calls to *_pks getter method in the association_pks plugin using :cache_pks association option (jeremyevans)
* Add *_pks_dataset methods for one_to_many and many_to_many associations
when using the association_pks plugin (jeremyevans)