Release 0.2.4:
Enhancements
* Add more keywords for MySQL table options (pr328, pr333, by phdru).
* Add more PL/pgSQL keywords (pr357, by Demetrio92).
* Improve parsing of floats (pr330, by atronah).
Bug Fixes
* Fix parsing of MySQL table names starting with digits (issue337).
* Fix detection of identifiers using comparisons (issue327).
* Fix parsing of UNION ALL after WHERE (issue349).
* Fix handling of semicolon in assignments (issue359, issue358).
PostGIS 2.4.0
2017/09/30
* New Features *
- #3822, Have postgis_full_version() also show and check version of
PostgreSQL the scripts were built against (Sandro Santilli)
- #2411, curves support in ST_Reverse (Sandro Santilli)
- #2951, ST_Centroid for geography (Danny Götte)
- #3788, Allow postgis_restore.pl to work on directory-style (-Fd) dumps
(Roger Crew)
- #3772, Direction agnostic ST_CurveToLine output (Sandro Santilli / KKGeo)
- #2464, ST_CurveToLine with MaxError tolerance (Sandro Santilli / KKGeo)
- #3599, Geobuf output support via ST_AsGeobuf (Björn Harrtell)
- #3661, Mapbox vector tile output support via ST_AsMVT (Björn Harrtell / CartoDB)
- #3689, Add orientation checking and forcing functions (Dan Baston)
- #3753, Gist penalty speed improvements for 2D and ND points
(Darafei Praliaskouski, Andrey Borodin)
- #3677, ST_FrechetDistance (Shinichi Sugiyama)
- Most aggregates (raster and geometry),
and all stable / immutable (raster and geometry) marked as parallel safe
- #2249, ST_MakeEmptyCoverage for raster (David Zwarg, ainomieli)
- #3709, Allow signed distance for ST_Project (Darafei Praliaskouski)
- #524, Covers support for polygon on polygon, line on line,
point on line for geography (Danny Götte)
* Enhancements and Fixes*
- Many corrections to docs and several translations almost complete.
Andreas Schild who provided many corrections to core docs.
PostGIS Japanese translation team first to reach completion of translation.
- Support for PostgreSQL 10
- Preliminary support for PostgreSQL 11
- #3645, Avoid loading logically deleted records from shapefiles
- #3747, Add zip4 and address_alphanumeric as attributes
to norm_addy tiger_geocoder type.
- #3748, address_standardizer lookup tables update
so pagc_normalize_address better standardizes abbreviations
- #3647, better handling of noding in ST_Node using GEOSNode
(Wouter Geraedts)
- #3684, Update to EPSG register v9
(Even Rouault)
- #3830, Fix initialization of incompatible type (>=9.6) address_standardizer
- #3662, Make shp2pgsql work in debug mode by sending debug to stderr
- #3405, Fixed memory leak in lwgeom_to_points
- #3832, Support wide integer fields as int8 in shp2pgsql
- #3841, Deterministic sorting support for empty geometries in btree geography
- #3844, Make = operator a strict equality test, and < > to rough "spatial sorting"
- #3855, ST_AsTWKB memory and speed improvements
* Breaking Changes *
- Dropped support for PostgreSQL 9.2.
- #3810, GEOS 3.4.0 or above minimum required to compile
- Most aggregates now marked as parallel safe,
which means most aggs have to be dropped / recreated.
If you have views that utilize PostGIS aggs,
you'll need to drop before upgrade and recreate after upgrade
- #3578, ST_NumInteriorRings(POLYGON EMPTY) now returns 0 instead of NULL
- _ST_DumpPoints removed, was no longer needed after PostGIS 2.1.0
when ST_DumpPoints got reimplemented in C
- B-Tree index operators < = > changed to provide better spatial locality on sorting
and have expected behavior on GROUP BY.
If you have btree index for geometry or geography, you need to REINDEX it, or review
if it was created by accident and needs to be replaced with GiST index.
If your code relies on old left-to-right box compare ordering,
update it to use << >> operators
PostGIS 2.4.0rc3
2017/09/27
* Fixes and Enhancements since PostGIS 2.4.0rc2 *
- #3781 st_contains cannot handle curvepolygon / compoundcurve
consisting of only straight lines
- #3866 server crashing from large values in ST_AsTWKB
- #3818 Allow triangles unclosed in M to be WKT parsed
- several packaging changes regarding checking trailing blanks
PostGIS 2.4.0rc2
2017/09/24
* Fixes and Enhancements since PostGIS 2.4.0rc1 *
- Numerous fixes to ST_AsMVT, ST_AsGeoBuf
- ST_AsTWKB speed and memory performance enhancments
- ST_RepeatedPoints speed improvements
- ST_ConcaveHull bug fix
See PostGIS 2.4.0 section for details of
new features and enhancements in this release.
PostGIS 2.4.0rc1
2017/09/13
Note possible breaking changes since 2.4.0 beta1 release are:
* Breaking Changes *
- B-Tree index operators < = > changed to provide better spatial locality on sorting
and have expected behavior on GROUP BY.
If you have btree index for geometry or geography, you need to REINDEX it, or review
if it was created by accident and needs to be replaced with GiST index.
If your code relies on old left-to-right box compare ordering,
update it to use << >> operators.
- ST_AsMVT aggregate now overloaded and arg order changed.
Check your code if you are already using this function.
- _ST_DumpPoints removed, was no longer needed after PostGIS 2.1.0
when ST_DumpPoints got reimplemented in C
shared-mime-info 1.9 (2017-18-09)
* Add x-systemd-unit and x-dbus-service MIME types
* Fix magic for application/x-java-keystore on little endian
* Add mime-type for STL 3D models and GCODE
* Add application/x-executable as a supertype of application/ecmascript
* Add shebang magic for gjs JavaScript files
* Add a mimetype for Khronos texture files
* Add a mime-type for Famicom Disk System images
* Add "font" top level type, and use IANA registered type for TTF,
OTF, WOFF, TTC and WOFF2
* Add OpenCL mime-type
* Add text/x-python3 content type
* Add Audible.com mime type
* Add application/x-atari-lynx-rom
* Add application/x-wonderswan-rom
* Add application/x-virtual-boy-rom
* Better JPEG 2000 MIME type support
* Add support for GIMP data files (.gbr, .gih, .pat)
* Add an alias for Adobe Illustrator formats
* Add *.mjs glob for Javascript
* Rename application/x-trig to application/trig
* Rename Panasonic RAW image mime-types to image/x-panasonic-rw*
* Change the preferred suffix for image/x-tga from icb to tga
* Correct "PostScript" capitalisation
* Add mimetype for AppImage Type 2
* Remove AppImage glob with different casing
Update DEPENDS and test dependencies.
-------------------------------------------
version 0.0200 at 2017-09-29 01:03:32 +0000
-------------------------------------------
Change: b0ceabb33df843b11871a21209e5fd4bf1831fb9
Author: Naveed Massjouni <naveed@vt.edu>
Date : 2017-09-28 21:02:24 +0000
v0.0200
Change: 86a1ec89187cdd64286444448e5a3cab788859b8
Author: Naveed Massjouni <naveedm9@gmail.com>
Date : 2017-03-02 10:25:46 +0000
Merge pull request #5 from PerlDancer/sawyer/feature/reentrant-schema
Make schema() possibly reentrant
Change: d319f5adbd6accadde265a294176b3454fc950a0
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-16 00:52:33 +0000
Add test for feature
Change: 2e6d0056b2342debce14ecfd41f362e2ef9eff81
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-16 00:52:33 +0000
Add support for schema configuration in schema() call:
What troubles me is that this module is not reentrant. You will
always get the same schema object and you can only configure it once.
Configuring it once is great, but having to argue with the code over
at which point to do it is annoying.
(Example: Issue #12 in Dancer2-Plugin-DBIC.)
This now allows the schema() function to also receive parameters to
use instead of the default configuration. It tries todo it in a
non-intrusive way for the code with minimal code changes and without
altering anything outside this function (like the global
configuration).
Change: 21a44eb576168081e0ec5793671b26b586347e2d
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-16 00:52:33 +0000
Retrieve the options before fetching the schema:
The previous logic would try to look up the schema and return it, and
if it didn't exist, it would fetch the options and try to create one.
This makes sense.
However, this also means that if we want to create a schema without
rummaging in the cache, you will have to check whether to even check
the cache.
Instead, we simply retrieve the relevant information for creation
before deciding what to do. Then we could either create a new one
with this configuration or return one.
Change: b406d522942e8596affe45f47b679d44d22e1f5a
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-16 00:52:33 +0000
Refactor: Move creation of schemas outside schema():
The schema() function is in charge of finding the right plugin, but
also creates them. Ths makes it difficult to have logic that allows
creating without saving or retrieval. We just split the creation into
its own function.
I also added comments to make it a bit clearer.
Change: bc90045822e7d3fc0f4e8f0d10a45044bcba9773
Author: Naveed Massjouni <naveedm9@gmail.com>
Date : 2017-02-13 10:04:52 +0000
Merge pull request #4 from PerlDancer/sawyer/fixes
Various fixes and cleanups
Change: bcee651ab7580e899ad906be872c4874f333d156
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-13 10:56:10 +0000
Revert "Cleanup: Explicitly use DBIx::Class::Schema::Loader:"
This reverts commit 4f80a6f9ef3c994ffda9991d7fe7839307b6abbf.
Change: 9e527d272a25e4be0a64454d8b258211f171211e
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 11:12:43 +0000
Do not add DBIx::Class::Schema::Loader as hard prereq:
Currently DBIx::Class::Schema::Loader is loaded optionally, but
reported as a hard dependency. (See previous commit.)
This makes it recommended, but optional.
Change: 4f80a6f9ef3c994ffda9991d7fe7839307b6abbf
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 11:12:39 +0000
Cleanup: Explicitly use DBIx::Class::Schema::Loader:
In Dancer2-Plugin-DBIC, DBIx::Class::Schema::Loader is mentioned as a
requirement. It's a lazy optional one. It's also hard to spot because
it's being loaded as a string using Module::Load.
Instead, this makes it a bit clearer by using 'require' directly.
It would be better to make this an optional requirement instead of a
default one.
Change: 1b545771aec22a89989c284f950526270ae272b5
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 10:58:09 +0000
Cleanup: Replace die() with croak():
croak() is used in some places but not everywhere, so might as well
report from the caller everywhere.
Change: c6f2031977572bcfd4352e131eb274cbc0be14d0
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 10:56:38 +0000
Cleanup: Simply conditions code
Change: d9042c990068eb816b21396573704012d66c2ead
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 10:56:20 +0000
Cleanup: Fix extra or missing semicolons
Change: 30166bce0c49ca7e979c9bbd82b582850805df7d
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 10:56:20 +0000
Add provides metadata:
The following plugin will add the provides metadata to the
distribution, which is considered a best practice.
Change: 35e6040f94c561ab29811fe1db8164f03492d87f
Author: Sawyer X <xsawyerx@cpan.org>
Date : 2017-02-10 10:56:20 +0000
Provide META.json file in distribution:
The following plugin adds the META.json file. This is considered the
more modern META data format.
2.19 Bug Fixes
Fixed incorrect handling of various "new" datatypes (date,
time, bigint, bigdatetime).
Other Bug Fixes:
640 - Sybase::BLK fails due to system table ordering issues
consequence of row level locking on system tables in
15.0.2 and later.
2.18 Bug Fixes
Various BLK fixes.
Fixed Sybase::BCP and Sybase::BLK tests which failed against
12.5.3 servers (changes on the Server side).
Bugs Fixed:
577 - perl Makefile.PL fails if umask is 0.
2.17 Kerberos Network login
Support for CS_SEC_NETWORKAUTH and CS_SEC_SERVERPRINCIPAL
connection properties in Sybase::CTlib.
Support CS_SERVERADDR connection properties in Sybase::CTlib,
and also allow the $server parameter to ct_connect to be
specified as "host:port" (requires OpenClient 12.5.1 or later).
Some documentation changes/improvements in Sybase::CTlib.
Bug Fixes
546 umask checking doesn't work on Windows.
555 blk_rowxfer doesn't handle datatype conversion errors.
560 Long binary columns are truncated by ct_fetch.
542 Fetch binary in raw format.
538 DBlib doesn't export TRACE_xxx symbols.
1.0.4 Tue May 23 21:05:58 EDT 2017
- RT#111473: fix warning upon reaching end of XML
stream (Johann Rolschewski)
- remove extraneous diag from a test script (Florian Schlichting)
1.001039 2017-09-25 14:15:55+00:00 UTC
- remove trailing comma in tests that was breaking on most JSON parsers.
1.001038 2017-09-20 21:13:13+00:00 UTC
- stop sorting source names before dumping, this allows for some hackery when you need certain sources to dump first (see https://github.com/dbsrgits/DBIx-Class-Fixtures/pull/12 for details) (cngarrison++)
- doc patch for exclude attr (simbabque++)
1.001037 2017-09-20 20:42:03+00:00 UTC
- ignore virtual columns in dump_object (mmims++)
Version 3.7.0 Released September 24, 2017 (git tag 3.7.0)
- If no placeholders, use PQexec instead of PQexecParams
[Greg Sabino Mullane]
- Fix running tests with non-UTF8 server_encoding
[Dagfinn Ilmari Mannsåker]
(Github issue #26)
- Fix crash with missing client_encoding
[David Christensen, reported by Marko Tiikkaja]
(Github issue #29)
- Fix crash with missing server_version
[David Christensen]
- Fix leak in ->state methods
[Dagfinn Ilmari Mannsåker]
(Github issue #30)
- Add $sth->{pg_async_status} to determine async status of a statement handle.
Values can be 0 (no async), 1 (async), or -1 (cancelled)
[Greg Sabino Mullane, as requested by Dmytro Zagashev (ZDM)]
(CPAN ticket #116172)
== 5.6.2 Release Notes
=== Bug fixes
Aggregations::
- Do not delegate a null scorer to LeafBucketCollectors
Inner Hits::
- Do not allow inner hits that fetch _source and have a non nested
object field as parent
Internal::
- Catch exceptions and inform handler in
RemoteClusterConnection#collectNodes
Java API::
- BulkProcessor flush runnable preserves the thread context from
creation time
Java High Level REST Client::
- Make RestHighLevelClient's Request class public
Plugin Analysis Kuromoji::
- Fix kuromoji default stoptags
Plugin Repository HDFS::
- Fix permission errors when using Read Only HDFS Repository
Query DSL::
- Fixed incomplete JSON body on count request making
org.elasticsearch.rest.action.RestActions#parseTopLevelQueryBuilder
go into endless loop
Scripting::
- Add missing script contexts and types allowed settings
Upgrade API::
- Upgrade API: fix excessive logging and unnecessary template updates
=== Upgrades
Logging::
- Upgrade to Log4j 2.9.1
== 5.6.1 Release Notes
=== Bug fixes
Highlighting::
- Fix percolator highlight sub fetch phase to not highlight query twice
Mapping::
- Fix unmapped_type creation for indices created in 2.x
Similarities::
- Add boolean similarity to built in similarity types
=== Upgrades
Core::
- Upgrade to Lucene-6.6.1.
== 5.6.0 Release Notes
=== Breaking Java changes
Java High Level REST Client::
- Allow RestHighLevelClient to use plugins
Java REST Client::
- Rename client artifacts
=== Deprecations
Highlighting::
- Postings highlighter deprecation
Indexed Scripts/Templates::
- Scripting: Deprecate stored search template apis
Mapping::
- Add deprecation logging when _all is enabled
Query DSL::
- Deprecate omitting terms lookup index name in 5.6
Scripting::
- Scripting: Deprecate scripts.max_compilation_per_minute setting
- Scripting: Change keys for inline/stored scripts to source/id
Tribe Node::
- Deprecate tribe service
=== New features
Java High Level REST Client::
- Backport high level REST client
Parent/Child::
- Typeless parent child backport
- Move parent_id query to the parent-join module
- Introduce ParentJoinFieldMapper, a field mapper that creates
parent/child relation within documents of the same index
Upgrade API::
- TemplateUpgraders should be called during rolling restart
=== Enhancements
Allocation::
- Adjust status on bad allocation explain requests
- Promote replica on the highest version node
Analysis::
- [analysis-icu] Allow setting unicodeSetFilter
CAT API::
- expand `/_cat/nodes` to return information about hard drive
Cluster::
- Validate a joining node's version with version of existing cluster
nodes
Core::
- Add max file size bootstrap check
- Explicitly reject duplicate data paths
Highlighting::
- Picks offset source for the unified highlighter directly from the es
mapping
Index APIs::
- Create index request should return the index name
Ingest::
- Add Ingest-Processor specific Rest Endpoints & Add Grok endpoint
- Port support for commercial GeoIP2 databases from Logstash.
- Allow removing multiple fields in ingest processor
- Add target_field parameter to ingest processors
Internal::
- Use holder pattern for lazy deprecation loggers
- "shard started" should show index and shard ID
- Break out clear scroll logic from TransportClearScrollAction
- Add helper methods to TransportActionProxy to identify proxy actions
and requests
- Add remote cluster infrastructure to fetch discovery nodes.
- Disallow multiple parent-join fields per mapping
Java High Level REST Client::
- [DOCS] restructure java clients docs pages
- Use SPI in High Level Rest Client to load XContent parsers
Java REST Client::
- Shade external dependencies in the rest client jar
- RestClient uses system properties and system default SSLContext
Logging::
- Use LRU set to reduce repeat deprecation messages
Mapping::
- Optimize `terms` queries on `ip` addresses to use a `PointInSetQuery`
whenever possible.
Network::
- Simplify connection closing and cleanups in TcpTransport
Packaging::
- Remove memlock suggestion from systemd service
- Set address space limit in systemd service file
Parent/Child::
- Remove ParentJoinFieldSubFetchPhase
- Support parent id being specified as number in the _source
Query DSL::
- Make slop optional when parsing `span_near` query
Search::
- Reduce the overhead of timeouts and low-level search cancellation.
- Reduce profiling overhead.
- Backport `can_match` endpoint to 5.6 to allow 6.0 to use the
optimization in mixed version
- Add a shard filter search phase to pre-filter shards based on query
rewriting
- Ensure we rewrite common queries to `match_none` if possible
- Limit the number of concurrent shard requests per search request
- Add cluster name validation to RemoteClusterConnection
- Leverage scorerSupplier when applicable.
- Add Cross Cluster Search support for scroll searches
Sequence IDs::
- 5.x - Move primary term from ReplicationRequest to
ConcreteShardRequest
- Forward compatibility for primary context handoff on 6.x
Settings::
- Emit settings deprecation logging at most once
- IndexMetaData: Introduce internal format index setting
Snapshot/Restore::
- Improves snapshot logging and snapshot deletion error handling
Stats::
- Update `IndexShard#refreshMetric` via a
`ReferenceManager.RefreshListener`
=== Bug fixes
Aggregations::
- Fixes array out of bounds for value count agg
Aliases::
- mget with an alias shouldn't ignore alias routing
Allocation::
- Allow wildcards for shard IP filtering
Analysis::
- Pre-configured shingle filter should disable graph analysis
CRUD::
- Serialize and expose timeout of acknowledged requests in REST layer
(ES 5.6)
Cluster::
- Register setting `cluster.indices.tombstones.size`
Core::
- Release operation permit on thread-pool rejection
- Node should start up despite of a lingering `.es_temp_file`
Discovery::
- MasterNodeChangePredicate should use the node instance to detect
master change
Engine::
- Engine - Do not store operations that are not index into lucene in the
translog (5.x only)
Geo::
- Fix GeoPoint FieldStats ternary logic bug
Highlighting::
- Fix nested query highlighting
- FastVectorHighlighter should not cache the field query globally
Index APIs::
- Shrink API should ignore templates
- Rollover max docs should only count primaries
Ingest::
- Sort Processor does not have proper behavior with targetField
Inner Hits::
- Fix inner hits to work with queries wrapped in an indices query
- When fetching nested inner hits only access stored fields when needed
Internal::
- Fix BytesReferenceStreamInput#skip with offset
- Fix race condition in RemoteClusterConnection node supplier
- Initialise empty lists in BaseTaskResponse constructor
Java High Level REST Client::
- Register ip_range aggregation with the high level client
- add top hits as a parsed aggregation to the rest high level client
Logging::
- Lazy initialize deprecation logger in parser
- Allow not configure logging without config
- Declare XContent deprecation logger as static
Mapping::
- ICUCollationKeywordFieldMapper use SortedSetDocValuesField
- Fixed bug that mapper_parsing_exception is thrown for numeric field
with ignore_malformed=true when inserting "NaN"
- Coerce decimal strings for whole number types by truncating the
decimal part
- Fix parsing of ip range queries.
- Remove `fielddata:false` from mappings of non-analyzed strings.
- Disable date field mapping changing
- token_count datatype should handle null value
- keep _parent field while updating child type mapping
Nested Docs::
- In case of a single type the _id field should be added to the nested
document instead of _uid field
Network::
- Release pipelined http responses on close
- Ensure pending transport handlers are invoked for all channel failures
Packaging::
- setgid on /etc/elasticearch on package install
- Stop disabling explicit GC
- Avoid failing install if system-sysctl is masked
- Get short path name for native controllers
- When stopping via systemd only kill the JVM, not its control group
Parent/Child::
- The default _parent field should not try to load global ordinals
Plugin Lang Painless::
- Painless: allow doubles to be casted to longs.
Plugin Repository HDFS::
- Upgrading HDFS Repository Plugin to use HDFS 2.8.1 Client
Query DSL::
- Parse "*" in query_string_query as MatchAllDocsQuery
- SpanNearQueryBuilder should return the inner clause when a single
clause is provided
- WrapperQueryBuilder should also rewrite the parsed query
REST::
- Fix handling of exceptions thrown on HEAD requests
Search::
- Fix term(s) query for range field
- Caching a MinDocQuery can lead to wrong results.
- First increment shard stats before notifying and potentially sending
response
- Remove assertion about deviation when casting to a float.
- Prevent skipping shards if a suggest builder is present
- Ensure remote cluster alias is preserved in inner hits aggs
- Do not search locally if remote index pattern resolves to no indices
Settings::
- Fix settings serialization to not serialize secure settings or not
take the total size into account
- Keystore CLI should use the AddFileKeyStoreCommand for files
Snapshot/Restore::
- Snapshot/Restore: fix NPE while handling null failure reasons
- Snapshot/Restore: Ensure that shard failure reasons are correctly
stored in CS
- Output all empty snapshot info fields if in verbose mode
Stats::
- _nodes/stats should not fail due to concurrent AlreadyClosedException
Suggesters::
- Context suggester should filter doc values field
=== Upgrades
Network::
- Upgrade to Netty 4.1.13.Final
Upgrade API::
- Improve stability and logging of TemplateUpgradeServiceIT tests
== 5.5.3 Release Notes
=== Deprecations
Mapping::
- Add deprecation logging when _all is enabled
=== Bug fixes
Packaging::
- setgid on /etc/elasticearch on package install
- The zLib and Snappy compression libraries are bundled if not
available.
Wire protocol compression is enabled on Windows.
- mongoc_collection_find_and_modify_with_opts now respects a
"writeConcern" field in the "extra" BSON document in its
mongoc_find_and_modify_opts_t.
- The command functions mongoc_client_read_write_command_with_opts,
mongoc_database_read_write_command_with_opts, and
mongoc_collection_read_write_command_with_opts now ignore the
"read_prefs" parameter.
- mongoc_collection_create_index and
mongoc_collection_create_index_with_opts
are both now deprecated. Use mongoc_database_write_command_with_opts
instead; a guide to creating an index using that function has been
added.
- Use select, not WSAPoll, on Windows.
- Always mark a server "Unknown" after a network error (besides a
timeout).
- mongoc_client_pool_t sends platform metadata to the server; before,
only a single mongoc_client_t did.
- New stream method mongoc_stream_timed_out.
- Wire version checks introduced in 1.8.0 will prevent the driver from
connecting to a future MongoDB server version if its wire protocol is
incompatible.
- New CMake option ENABLE_MAINTAINER_FLAGS.
Significant bugs fixed:
1. A number of bugs were fixed in the area of PSYNC2 replication in
thecspecific area of restarting an instance with an RDB file having
the repliacation meta-data to continue without a full
resynchronization.
2. AOF flush on SHUTDOWN did not cared to really write the AOF buffers
(not in the kernel but in the Redis process memory) to disk before
exiting. Calling SHUTDOWN during traffic resulted into not every
operation to be persisted on disk.
3. The SLOWLOG could reference values inside string objects stored at
keys, creating a race condition during FLUSHALL ASYNC while the DB is
reclaimed in another thread.
Upstream has very complicated ifdefs that try to define UNIX
everywhere but windows, except that it fails to include NetBSD. Then,
it uses UNIX to avoid using the non-standard stricmp and instead use
the POSIX-conforming strcasecmp.
For pkgsrc, rip out an entire screenful of complexity and just define
UNIX if not defined. Resolves build on NetBSD 7, and probably other places.
Version 0.9:
* Add distinct_on on Select
* Allow to use Select as Column of Select query
* Support Select without from clause
Version 0.8:
* Add DISTINCT qualifier to aggregate expressions
* Allow to order on select queries
* Add NULL ordering
* Use UPPER to simulate missing ILIKE
* Add CURRENT_DATE function
* Fix DateTrunc function name
* Add no_boolean Flavor
* Add converter format2numeric
* Add rownum limit style
* Add no_as Flavor
Author: Frediano Ziglio <freddy77@gmail.com>
Date: Sat Sep 16 13:52:48 2017 +0100
ctlib: Do not mix 2 set of results
Variable results was used to store 2 states ending up
with possible wrong result from _ct_bind_data.
Author: Frediano Ziglio <freddy77@gmail.com>
Date: Sat Sep 16 12:51:49 2017 +0100
Avoid mixing different column information
Was possible that for multiple column recordset the binding
were reused between columns combining row binding with empty ones.
This could cause some wrong metadata information to be returned.
Author: Frediano Ziglio <freddy77@gmail.com>
Date: Wed Sep 13 15:48:03 2017 +0100
build: Fix wrong AC_LANG_SOURCE usage
This macro requires a single parameter.
Usage confused with AC_LANG_PROGRAM.
2.0.0
* Stop building FreeTDS as a part of the extension build.
1.3.0
* FreeTDS: Link libgcc statically for Windows. (#351) Fixes#349.
1.2.0
* Use OpenSSL v1.1.0e & FreeTDS v1.00.27 for Windows builds.
1.1.0 *
* Use rake-compiler-dock v0.6.0
* Handle SYBVARIANT types from SQL function. Fixes#317. Fixed#321.
* Fix `use_utf16` optoin for booleans. Fixes#314
* Add `-q` check for bin puts. Fixes#318
* Use FreeTDS 1.00.21.
* Appveyor tests only 2012, 2014 with one Ruby, 23-x64.
* CircleCI & TravisCI both test 2016.
1.0.5
* Windows Static Builds - Use FreeTDS 1.00.15, OpenSSL 1.0.2j.
* Appveyor tests 2012, 2014, 2016.
* Error messages greater than 1024 chars generates a buffer overflow. Fixes
#293.
* Ensures numeric options are treated numerically Fixes#303.
* New `:contained` login option. May deprecate `:azure`. Fixes#292.
* New `:use_utf16` login option. Toggle UCS-2 or UTF-16. Default true.
1.0.4
* Use FreeTDS 1.0 final
1.0.3
* Use FreeTDS 1.0rc5 for cross compile windows gems.
* Ensure we only work with latest FreeTDS v0.95.x or higher.
1.0.2
* Cross compile w/2.3.0 using rake-compiler-dock ~> 0.5.1. Fixes#268#270.
* Use FreeTDS 1.0rc4 for cross compile windows gems.
1.0.1
* Fix ruby exe's in non-platform gem.
1.0.0
* Tested with FreeTDS 1.0.
* Add emoji support by default using FreeTDS v1.0 in docs.
0.9.5 (release candidates only)
* Binstub wrappers for `tsql`. Fixes#227#251
* Add support for 2008 data types. Must use TDSVER 7.3 or higher. Fixes#244#251
- [date]
- [datetime2]
- [datetimeoffset]
- [time]
* Default FreeTDS to 0.95. Support 0.91 Alternate Fixes#233
- Allow our `tds_version` to mirror TDSVER env var. Ex '7.3' vs '73'.
- Change error handler for `SYBEICONVO` to hard return INT_CANCEL.
* Made sure Azure logins are user@short vs. long domain. Fixes#229
* Removed Ruby 1.9.3 from CI builds.
* CI now tests Azure too.
* Fixed compiler warnings on all platforms. Fixed#241
* FreeTDS - Remove support for bad iconv.
Summary of Changes in release 1.0
--------------------------------------------
User visible (not in a particular order):
- Removed "8.0" from protocol version string accepted. Please
update configuration files;
- Default protocol version is now auto. This could slow down
connection but make user experience less painful;
- Sybase encrypted login. Set encryption to get it;
- Support protocol version 7.4;
- Add intent support to specify we don't want to change data;
- Allow to attach database file during the login (MS SQL Server);
- Support for Sybase time/date/bigdate/bigdatetime;
- Pool is working again;
- ODBC BCP (not complete);
- Improved dbconvert and dbconvert_ps (more compatible);
- Fixed dbspid;
- Improved ODBC type information;
- Better certificate verification;
- AppVeyor is used for every build;
- Try all IPs from DNS. This allows SQL Cluster connection
to secondary servers.
Implementation:
- Removed Nmake support;
- Type conversions simplified;
- Better type handle code.
0.7.11
* Fixed Connection.close() failed when failed to send COM_CLOSE packet.
* Cursor.executemany() accepts query ends with semicolon.
* ssl parameters can be read from my.cnf.
2.0.7 Tue May 23 20:41:13 EDT 2017
[FIXES]
- RT#108123: clean up MANIFEST.SKIP
- GH#1: marcdump now prints warnings (Johann Rolschewski)
- remove a reference to SourceForge
- fix a reference to the per4lib mailing list
2.63, 2017-02-03 Re-add some features supposedly in 2.62 but not, and add
more --header options.
ENHANCEMENT
The option -j is now a synonym for --parallelism. (And several
documention bugs about this option are fixed.)
ENHANCEMENT
Additional support for "--header" in dbcolmerge, dbcol, dbrow, and
dbroweval.
BUG FIX
Version 2.62 was supposed to have this improvement, but did not
(and now does): dbfilepivot now allows the --possible-pivots
option, and if it is provided processes the data in one pass.
BUG FIX
Version 2.62 was supposed to have this improvement, but did not
(and now does): dbroweval logs are now quoted.
Alembic is a database migrations tool written by the author of
SQLAlchemy. A migrations tool can emit ALTER statements to a database
in order to change the structure of tables and other constructs,
provides a system whereby "migration scripts" may be constructed; each
script indicates a particular series of steps that can "upgrade" a
target database to a new version, and optionally a series of steps
that can "downgrade" similarly, doing the same steps in reverse, and
allows the scripts to execute in some sequential manner.
Packaged by Kamel Ibn Aziz Derouiche and updated by me.
Fixes in 1.65.1
Config:
* Version macro changes for CUDA.
* Update last known MSVC version.
* MSVC 14.11 supports structured bindings.
Context:
* Return a continuation from functions executed by resume_with.
Fiber:
* Return a continuation from functions executed by resume_with.
Smart Pointers:
* Fix Visual C++ version checks.
* Fix compilation for NVCC with host compiler clang.
Stacktrace:
* Update build testing file to detail with a MinGW issue.
* Change preprocessor file extensions to work with the installation system.
* Support FreeBSD and other OSs that do not define _GNU_SOURCE but have _Unwind_Backtrace function.
Thread:
* Fix bug in boost::condition_variable on Windows
Bug fixes only.
- Fixed bug in Session.merge() where an internal check for a target
object in the identity map could lead to an error.
- Fixed bug where an undefer_group() option would not be recognized.
- Fixed race condition in ORM identity map.
- Fixed bug in Session.merge() where objects in a collection that had
the primary key attribute set to None for a key that is typically
autoincrementing would be considered to be a database-persisted key
for part of the internal deduplication process.
- An InvalidRequestError is raised when a synonym() is used against an
attribute that is not against a MapperProperty.
- Altered the range specification for window functions to allow for
two of the same PRECEDING or FOLLOWING keywords in a range by
allowing for the left side of the range to be positive and for the
right to be negative.
Changes in Version 3.5.1
Version 3.5.1 fixes bugs reported since the release of 3.5.0:
* Work around socket.getsockopt issue with NetBSD.
* :meth:`pymongo.command_cursor.CommandCursor.close` now closes the cursor synchronously instead of deferring to a background thread.
* Fix documentation build warnings with Sphinx 1.6.x.
Issues Resolved
See the PyMongo 3.5.1 release notes in JIRA for the list of resolved issues in this release.
Lib/
* fixed passing all arguments from LDAPObject.sasl_non_interactive_bind_s()
to LDAPObject.sasl_interactive_bind_s()
Tests/
* added test for LDAPObject.sasl_external_bind_s()
Doc/
* added docs for SASL bind methods
* more references
* better sorting of LDAPObject methods
2.4.42:
Lib/
* added new SlapdObject methods _ln_schema_files() and
_create_sub_dirs()
* SlapdObject methods setup_rundir() and gen_config()
are now "public" methods
* removed pseudo test script from module ldap.cidict
Tests/
* added sub-module for testing class ldap.cidict.cidict
* avoid deprecated method alias unittest.TestCase.assertEquals
GitHub.
Changes include:
2.3.0
* Enable OCaml >= 4.02 compatibility
* Enable safe-string compatibility
* Backport fixes from 2.1.8
* Use OASIS to build the documentation
* Bug fixed: Ldap_protocol doesn't handle SASL correctly (RFC 4511 4.2.2)
(Patch by David Allsopp)
* Added paged result control
(Patch by Christian Wills)
* Fix: Add Str to the build dependencies
This release includes fixes that prevent a crash in pg_restore when using parallel mode. It also patches over a few other bugs reported since the last releases in August.
Additionally, in 9.4.14 only, there is a fix to an issue with walsenders preventing primary-server shutdown unless immediate shutdown mode is used.
Users should plan to update at the next convenient downtime.
The next bug fix release in the 2.2.x series is now available. This release includes the following
* slonik_build_env can now accept multiple -schema options on the command line
* Support for PG10. This involved changes to PG version detection
* Disallow createEvent and data changes in the same transaction.
* Fix some failover issues when doing a multi-node failover with a cascade node
* Bug 341 - suppress log trigger/deny when running in 'local' mode
* Fix issue when receiving DDL from non origin nodes
What's new in psycopg 2.7.3.1
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Dropped libresolv from wheel package to avoid incompatibility with
glibc 2.26 (wheels ticket #2)
=== 5.0.0 (2017-09-01)
* Make bin/sequel -M option always use base 10 (jeremyevans)
* Don't use savepoints when creating indexes inside a transaction on databases
that don't support transactional schema modifications (jeremyevans) (#1407)
* Support :if_not_exists option when creating indexes on PostgreSQL 9.5+
(DyegoCosta) (#1405)
* Make threaded connection pools not block while connections are being made
(jeremyevans)
* SQL::Expression#clone and #dup now return self, since all expressions should
be frozen value objects (jeremyevans)
* Don't create empty arrays for unused association callbacks (jeremyevans)
* Cache association method name symbols instead of recomputing them everytime
(jeremyevans)
* Raise an exception if attempting to create a prepared statement using a
dataset with a delayed evaluation (jeremyevans)
* Make ConnectionPool#size thread safe by using the pool mutex (jeremyevans)
* Use instance_exec instead of instance_eval when passing a block, to work
with lambdas that accept no arguments (jeremyevans)
* Freeze SQL::StringAgg instances in string_agg extension (jeremyevans)
* Freeze SQL::DateAdd instances in date_arithmetic extension (jeremyevans)
* Freeze SQL::Expression.comparison_attrs (jeremyevans)
* Rename SQL::Subscript#f to #expression, keeping #f as an alias (jeremyevans)
* Require the :pool_class Database option be a class to use a custom
connection pool (jeremyevans)
* Make the class_table_inheritance plugin raise an Error during update if any
UPDATE query does not affect a single row (jeremyevans)
* Change most send calls to public_send unless calling private methods is
expected (jeremyevans)
* Database schema and schema generator methods now return nil (jeremyevans)
* Model#validates_unique in the validation helpers plugin now defaults to only
checking on new or modified values (jeremyevans)
* Deprecate Model#_before_validation (private_method), use
Model#before_validation now (jeremyevans)
* Always run before/after/around validation hooks when saving, even when not
validating the object (jeremyevans)
* Deprecate Model use_after_commit_rollback class and instance accessors
(jeremyevans)
* Deprecate Model.allowed_columns reader (jeremyevans)
* Freeze internal constants that shouldn't be modified at runtime (jeremyevans)
* Attempt to connect to the database immediately when creating the Database
instance (jeremyevans)
* Make association_pks plugin delay the setting of associated objects until
the current object is saved by default (jeremyevans)
* Joined datasets used as model datasets are now automatically wrapped in a
subquery (jeremyevans)
* Setting an invalid dataset for a model class now raises an exception by
default (jeremyevans)
* Getting all values for newly created models now happens before calling
after_create, instead of after (jeremyevans)
* Remove use of @was_new/@columns_updated instance variables when saving model
objects (jeremyevans)
* Disable symbol splitting by default (jeremyevans)
* Make datasets frozen by default (jeremyevans)
* Drop support for ruby 1.8.7, minimum now is 1.9.2 (jeremyevans)
* Remove deprecated adapters, extensions, plugins, constants, and features
(jeremyevans)
Upstream changes:
Changes in DBI 1.637 - ...
Fix use of externally controlled format string (CWE-134) thanks to pali #44
This could cause a crash if, for example, a db error contained a %.
https://cwe.mitre.org/data/definitions/134.html
Fix extension detection for DBD::File related drivers
Fix tests for perl without dot in @INC RT#120443
Fix loss of error message on parent handle, thanks to charsbar #34
Fix disappearing $_ inside callbacks, thanks to robschaber #47
Allow objects to be used as passwords without throwing an error, thanks to demerphq #40
Allow $sth NAME_* attributes to be set from Perl code, re #45
Added support for DBD::XMLSimple thanks to nigelhorne #38
Documentation updates:
Improve examples using eval to be more correct, thanks to pali #39
Add cautionary note to prepare_cached docs re refs in %attr #46
Small POD changes (Getting Help -> Online) thanks to openstrike #33
Adds links to more module names and fix typo, thanks to oalders #43
Typo fix thanks to bor #37
Several Perl-generated scripts were installed with the interpreter
being in the tools directory. Use subst.mk to fix the interpreter
path at the head of these scripts. Add "sh" as a run-time tool
dependency since several of the scripts installed require a POSIX
shell.
Bump the PKGREVISION due to changes in the installed scripts.
=== 4.49.0 (2017-08-01)
* Make dataset_associations plugin automatically alias tables when using
many_through_many associations that join the same table multiple times
(jeremyevans)
* Deprecate using a :pool_class Database that is not a class or a symbol for a
supported pool class (jeremyevans)
* Deprecate :eager_loading_predicate_key association option and association
reflection method (jeremyevans)
* Deprecate Model.serialized_columns in the serialization plugin (jeremyevans)
* Deprecate Model.cti_columns in the class_table_inheritance plugin
(jeremyevans)
* Deprecate SQL::AliasedExpression#aliaz, use #alias instead (jeremyevans)
* Deprecate SQL::Function#f, use #name instead (jeremyevans)
* Deprecate treating cross join with conditions as inner join on MySQL
(jeremyevans)
* Deprecate ConnectionPool#created_count, use #size instead (jeremyevans)
* Deprecate ConnectionPool::CONNECTION_POOL_MAP, use the :pool_class option to
specify a non-default connection pool (jeremyevans)
* Deprecate Sequel::IBMDB::Connection#prepared_statements= in the ibmdb
adapter (jeremyevans)
* Deprecate DEFAULT_OPTIONS in validation_helpers, override
default_validation_helpers_options private method instead (jeremyevans)
* Deprecate model association before callbacks returning false to cancel the
action (jeremyevans)
* Support native offset syntax on Oracle 12 (timon) (#1397)
* Deprecate Dataset#nullify! in the null_dataset extension (jeremyevans)
* Deprecate Dataset#autoid=, #_fetch=, and #numrows= in the mock adapter
(jeremyevans)
* Deprecate loading plugins by requiring sequel_#{plugin} (jeremyevans)
* Add Model.sti_class_from_sti_key in the single_table_inheritance plugin to
get the appropriate class to use (Aryk) (#1396)
* Make Sequel::Error#cause use #wrapped_exception if it exists on ruby 2.1+
(jeremyevans)
* Make Dataset#where_all, #where_each, #where_single_value core dataset
methods instead of just model dataset methods (jeremyevans)
* Make Database#extend_datasets and Dataset#with_extend now use a
Dataset::DatasetModule instance if given a block (jeremyevans)
* Add Sequel::Dataset::DatasetModule, now a superclass of
Sequel::Model::DatasetModule (jeremyevans)
* Make composition plugin with :mapping option work correctly if
Model#get_column_value is overridden (jeremyevans)
* Support Dataset#paged_each :stream => false option on mysql2 to disable
streaming (Aryk) (#1395)
* Make datetimeoffset handling in the jdbc/sqlserver adapter work on more
drivers (jeremyevans)
* Make alter_table add_primary_key work correctly on H2 1.4+ (jeremyevans)
* Support :sslrootcert Database option in the postgres adapter (dleavitt)
(#1391)
======================================================================
=== Bug fixes
Aggregations::
- Fixes array out of bounds for value count agg
Core::
- Release operation permit on thread-pool rejection
Inner Hits::
- Fix inner hits to work with queries wrapped in an indices query
- When fetching nested inner hits only access stored fields when needed
Logging::
- Declare XContent deprecation logger as static
Query DSL::
- Parse "*" in query_string_query as MatchAllDocsQuery
elasticsearch 5.5.1
======================================================================
=== Bug fixes
Aliases::
- mget with an alias shouldn't ignore alias routing
Engine::
- Engine - Do not store operations that are not index into lucene in the
translog (5.x only)
Internal::
- Fix BytesReferenceStreamInput#skip with offset
Packaging::
- Stop disabling explicit GC
- Avoid failing install if system-sysctl is masked
- Get short path name for native controllers
Query DSL::
- WrapperQueryBuilder should also rewrite the parsed query
elasticsearch 5.5.0
======================================================================
=== Breaking changes
Plugins::
- Remove hidden file leniency from spawner
Settings::
- Remove support for default settings
=== Breaking Java changes
Aggregations::
- Remove the unused SignificantTerms.compareTerm() method
- Make SignificantTerms.Bucket an interface rather than an abstract
class
- Make Terms.Bucket an interface rather than an abstract class
Plugin Delete By Query::
- Move DeleteByQuery and Reindex requests into core
=== Deprecations
Index APIs::
- Deprecated use of + in index expressions
Packaging::
- Add deprecation warnings for $ES_USER and $ES_GROUP
Plugin Repository S3::
- S3 Repository: Deprecate remaining `repositories.s3.*` settings
REST::
- Add deprecation logging for comma-separated feature parsing
Scripting::
- Scripting: Deprecate native scripts
- Scripting: Deprecate index lookup
- Deprecate Fine Grain Settings for Scripts
- Scripting: Deprecate file script settings
- Scripting: Deprecate file scripts
Settings::
- Settings: Update settings deprecation from yml to yaml
- Deprecate settings in .yml and .json
Tribe Node::
- Deprecate tribe service
=== New features
Mapping::
- Add new ip_range field type
Plugin Analysis ICU::
- Add ICUCollationFieldMapper
=== Enhancements
Aggregations::
- Add superset size to Significant Term REST response
- Add document count to Matrix Stats aggregation response
- Share XContent rendering code in significant terms aggregations
- Add `count` to rest output of `geo_centroid`
- Allow scripted metric agg to access `_score`
Aliases::
- Handle multiple aliases in _cat/aliases api
Circuit Breakers::
- Closing a ReleasableBytesStreamOutput closes the underlying BigArray
Cluster::
- Add a cluster block that allows to delete indices that are read-only
- Extract a common base class to allow services to listen to remote
cluster config updates
Core::
- Explicitly reject duplicate data paths
- Use SPI in High Level Rest Client to load XContent parsers
- Improve bootstrap checks error messages
- Regex upgrades
- Detect remnants of path.data/default.path.data bug
Engine::
- Add refresh stats tracking for realtime get
- Engine: store maxUnsafeAutoIdTimestamp in commit
Exceptions::
- IllegalStateException: Only duplicated jar instead of classpath
Index APIs::
- Open and close index to honour allow_no_indices option
Ingest::
- add `exclude_keys` option to KeyValueProcessor
Inner Hits::
- Reuse inner hit query weight
Internal::
- "shard started" should show index and shard ID
- Add the ability to set eager_global_ordinals in the new parent-join
field
- Add assertions enabled helper
- Add cross cluster support to `_field_caps`
- Log JVM arguments on startup
- Preserve cluster alias throughout search execution to lookup nodes by
cluster and ID
- Move RemoteClusterService into TransportService
- Enum related performance additions.
Java API::
- Always Accumulate Transport Exceptions
Java High Level REST Client::
- Add doc_count to ParsedMatrixStats
- Add fromXContent method to ClearScrollResponse
- ClearScrollRequest to implement ToXContentObject
- SearchScrollRequest to implement ToXContentObject
- Backport aggs parsers for high level REST Client
- Add utility method to parse named XContent objects with typed prefix
Logging::
- Warn on not enough masters during election
Mapping::
- Do not index `_type` when there is at most one type.
- Only allow one type on 6.0 indices
- token_count type : add an option to count tokens (fix#23227)
Network::
- Disable the Netty recycler in the client
- Remove Netty logging hack
- Set available processors for Netty
Packaging::
- Set number of processes in systemd unit file
Plugin Lang Painless::
- Optimize instance creation in LambdaBootstrap
- Allow painless to load stored fields
Plugin Repository GCS::
- GCS Repository: Add secure storage of credentials
Plugins::
- Add purge option to remove plugin CLI
- Move ReindexAction class to core
- Plugins: Add support for platform specific plugins
REST::
- Make ObjectParser support string to boolean conversion
- Allow passing single scrollID in clear scroll API body
Scripting::
- Add Ability to Specify No Types/Contexts Allowed For Scripts
- Add New Security Script Settings
Search::
- Eliminate array access in tight loops when profiling is enabled.
- Support Multiple Inner Hits on a Field Collapse Request
- Expand cross cluster search indices for search requests to the
concrete index or to it's aliases
- Remove leniency when merging fetched hits in a search response phase
Search Templates::
- Add max concurrent searches to multi template search
Settings::
- Emit settings deprecation logging at most once
Snapshot/Restore::
- Improves snapshot logging and snapshot deletion error handling
- Enhances get snapshots API to allow retrieving repository index only
- Ensure every repository has an incompatible-snapshots blob
- Change snapshot status error to use generic SnapshotException
Stats::
- Show JVM arguments
Suggesters::
- Provide informative error message in case of unknown suggestion
context.
- Allow different data types for category in Context suggester
Upgrade API::
- Allow plugins to upgrade templates and index metadata on startup
=== Bug fixes
Aggregations::
- Terms aggregation should remap global ordinal buckets when a
sub-aggregator is used to sort the terms
- Correctly set doc_count when MovAvg "predicts" values on existing
buckets
- InternalPercentilesBucket should not rely on ordered percents array
- Align behavior HDR percentiles iterator with percentile() method
- DateHistogram: Fix `extended_bounds` with `offset`
- Fix ArrayIndexOutOfBoundsException when no ranges are specified in the
query
Aliases::
- GET aliases should 404 if aliases are missing
Allocation::
- Discard stale node responses from async shard fetching
Analysis::
- PatternAnalyzer should lowercase wildcard queries when `lowercase` is
true.
Bulk::
- Reject empty IDs
Cache::
- fix bug of weight computation
Circuit Breakers::
- Checks the circuit breaker before allocating bytes for a new big array
Core::
- Fix cache expire after access
- Check for default.path.data included in path.data
Geo::
- Fix GeoPoint FieldStats ternary logic bug
- Fix GeoDistance Ordinal for BWC
Highlighting::
- Higlighters: Fix MultiPhrasePrefixQuery rewriting
Index APIs::
- Rollover max docs should only count primaries
- Fix legacy GeoPointField decoding in FieldStats
- Validates updated settings on closed indices
- Fixes restore of a shrunken index when initial recovery node is gone
Ingest::
- fix grok's pattern parsing to validate pattern names in expression
- Fix floating-point error when DateProcessor parses UNIX
- add option for _ingest.timestamp to use new ZonedDateTime (5.x
backport)
Inner Hits::
- Fix Source filtering in new field collapsing feature
Internal::
- Fix race condition in RemoteClusterConnection node supplier
- Initialise empty lists in BaseTaskResponse constructor
- Extract a common base class for scroll executions
- Ensure remote cluster is connected before fetching `_field_caps`
- Obey lock order if working with store to get metadata snapshots
- Remove `_UNRELEASED` from Version constants for released versions
- Fix `_field_caps` serialization in order to support cross cluster
search
- Avoid race when shutting down controller processes
- Fix NPE if field caps request has a field that exists not in all
indices
More Like This::
- Pass over _routing value with more_like_this items to be retrieved
Nested Docs::
- In case of a single type the _id field should be added to the nested
document instead of _uid field
Network::
- Ensure pending transport handlers are invoked for all channel failures
- Notify onConnectionClosed rather than onNodeDisconnect to prune
transport handlers
- SniffNodesSampler should close connection after handling responses
Packaging::
- When stopping via systemd only kill the JVM, not its control group
- Handle parentheses in batch file path
Percolator::
- Fix range queries with date range based on current time in percolator
queries.
- For legacy indices rewrite percolator query upon percolation time
- Fix memory leak when percolator uses bitset or field data cache
Plugin Lang Painless::
- painless: Fix method references to ctor with the new LambdaBootstrap
and cleanup code
- Fix Painless Lambdas for Java 9
Plugins::
- X-Pack plugin download fails on Windows desktop
- Fix plugin installation permissions
- Fix delete of plugin directory on remove plugin
- Use a marker file when removing a plugin
- Remove hidden file leniency from plugin service
Query DSL::
- Thread falls into infinite loop when processing Indices query
REST::
- Fix handling of exceptions thrown on HEAD requests
- Fixed NPEs caused by requests without content.
- Fix get mappings HEAD requests
Recovery::
- Provide target allocation id as part of start recovery request
Reindex API::
- Reindex: don't duplicate _source parameter
- Add qa module that tests reindex-from-remote against pre-5.0 versions
of Elasticsearch
Scroll::
- Fix single shard scroll within a cluster with nodes in version `>=
5.3` and `<= 5.3`
Search::
- Adds check for negative search request size
- Do not search locally if remote index pattern resolves to no indices
- Make sure range queries are correctly profiled.
- Compute the took time of the query after the expand phase of field
collapsing
- Fix RangeFieldMapper rangeQuery to properly handle relations
- Fix ExpandSearchPhase when response contains no hits
- Include all aliases including non-filtering in `_search_shards`
response
- Cross Cluster Search: propagate original indices per cluster
Search Templates::
- No longer add illegal content type option to stored search templates
Settings::
- Keystore CLI should use the AddFileKeyStoreCommand for files
- Settings: Fix setting groups to include secure settings
- Allow resetting settings that use an IP validator
- Do not set path.data in environment if not set
Snapshot/Restore::
- Output all empty snapshot info fields if in verbose mode
- Remove redundant and broken MD5 checksum from repository-s3
- Consolidates the logic for cleaning up snapshots on master election
- Removes completed snapshot from cluster state on master change
- Fix inefficient (worst case exponential) loading of snapshot
repository
- Fixes maintaining the shards a snapshot is waiting on
Stats::
- _nodes/stats should not fail due to concurrent AlreadyClosedException
- Avoid double decrement on current query counter
Suggesters::
- Fix context suggester to read values from keyword type field
Task Manager::
- Task Management: Make TaskInfo parsing forwards compatible
=== Regressions
Highlighting::
- Fix Fast Vector Highlighter NPE on match phrase prefix
=== Upgrades
Core::
- Upgrade to Lucene 6.5.1
Network::
- Upgrade to Netty 4.1.11.Final
- Upgrade Netty to 4.1.10.Final
- CMake build now installs .pc files for programs that link to
libmongoc using pkg-config.
- New CMake option ENABLE_STATIC can be ON, OFF, or AUTO (the default)
- Minimum required CMake version has been increased to 3.1.
- Support for wire compression.
- Support for snappy and zlib. MongoDB 3.4 only supports snappy,
while zlib support is expected in MongoDB 3.6.
- New functions: mongoc_uri_get_compressors &
mongoc_uri_set_compressors, to get and set compressor
configuration on mongoc_uri_t
- Added support for comma seperated "compressors" connection string
option (e.g. mongodb://localhost/?compressors=snappy,zlib)
- Added support for configuring zlib compression level in the
connection string (e.g.
mongodb://localhost/?compressors=zlib&zlibcompressionlevel=8)
- Now requires the use of CMake config files for libbson to build
libmongoc with CMake
- Added pkg-config support for libressl.
- New function mongoc_uri_set_auth_mechanism to update the
authentication mechanism of a mongoc_uri_t after it is created from
a string.
- New function mongoc_bulk_operation_insert_with_opts provides
immediate error checking.
- New function mongoc_uri_new_with_error provides a way to parse a
connection string, and retrieve the failure reason, if any.
- Support for MongoDB Connection String specification
- All connection string options are now represented by
MONGOC_URI_xxx macros
- Paths to Unix Domain Sockets must be url encoded
- Repeated options now issue warnings
- Special characters in username, password and other values must be
url encoded
- Unsupported connection string options now issue warnings
- Boolean values can now be represented as true/yes/y/t/1 and
false/no/n/f/0.
- Case is now preserved in Unix domain paths.
- New function mongoc_cursor_error_document provides access to
server's error reply if a query or command fails.
- New function mongoc_write_concern_is_default determines whether any
write concern options have been set, and
mongoc_read_concern_is_default checks if read concern options are set.
- mongoc_gridfs_find_one_with_opts optimized to use limit 1.
* Various performance improvements. Thanks cjsimpson
* Fixed a bug with SRANDMEMBER where
* Added HSTRLEN command. Thanks Alexander Putilin
* Added the TOUCH command. Thanks Anis Jonischkeit
* Remove unnecessary calls to the server when registering Lua scripts.
Thanks Ben Greenberg
* SET's EX and PX arguments now allow values of zero. Thanks huangqiyin
* Added PUBSUB {CHANNELS, NUMPAT, NUMSUB} commands. Thanks Angus Pearson
* PubSub connections that that encounter `InterruptedError`s now
retry automatically. Thanks Carlton Gibson and Seth M. Larson
* LPUSH and RPUSH commands run on PyPy now correctly returns the number
of items of the list. Thanks Jeong YunWon
* Added support to automatically retry socket EINTR errors. Thanks
Thomas Steinacher
* PubSubWorker threads started with `run_in_thread` are now daemonized
so the thread shuts down when the running process goes away. Thanks
Keith Ainsworth
* Added support for GEO commands. Thanks Pau Freixes, Alex DeBrie and
Abraham Toriz
* Made client construction from URLs smarter. Thanks Tim Savage
* Added support for CLUSTER * commands. Thanks Andy Huang
* The RESTORE command now accepts an optional `replace` boolean.
Thanks Yoshinari Takaoka
* Attempt to connect to a new Sentinel if a TimeoutError occurs. Thanks
Bo Lopker
* Fixed a bug in the client's `__getitem__` where a KeyError would be
raised if the value returned by the server is an empty string.
Thanks Javier Candeira.
* Socket timeouts when connecting to a server are now properly raised
as TimeoutErrors.
Fixes pkg/52488.
Release 3.6.5
- Fix for [pgpool-hackers: 2400] Garbage output
- Importing the latest changes in the MemoryManager API from PostgreSQL
code.
- Fixing 0000306: Pgpool steals back MASTER status.
- Fixing [pgpool-hackers: 2390]Problems with the relative paths in
daemon mode
- Adjust function name change in PostgreSQL 10 dev head.
- Fix a posible hang with streaming replication and extended protocol.
- Fix Pgpool-II hang when used by erlang applications.
- Fix bug with sending bind message to wrong target node.
- Fix query cache hang when used by node.js.
- Deal with PostgreSQL 10 in streaming replication delay checking.
- Fix query cache memory leak.
- Fix extended query hang in certain case.
- Fix for [pgpool-hackers: 2354] segfault with pg_md5.
- Fix descriptions of white/black_memcache_table_list.
- Fix corner case bug in Pgpool-II starting up.
Release 3.6.4
- Fixing a few corner cases in the failover request handling of the
watchdog.
- Tightening up the watchdog cluster membership criteria.
- Enhance document for load balancing.
- Add node 0 failover test.
- Fix Pgpool-II child process segfault reported in [pgpool-hackers:
2312].
Release 3.6.3
- Fix "show pool_cache" segfault when memcached is used.
- Fix for some more code warnings.
- Fixing some annoying compiler warnings.
- Removing the function defined but not used warnings from
pool_config_vatiable.c
- Removing the references of obsolete debug_level configuration
parameter.
- Fixing a mistake in the watchdog code.
- Fix for 0000299: Errors on the reloading of configuration.
- Add pgpool_adm English and Japanese docs.
- Fix document indentation.
- Fix for 0000289: Inconsistent backend state.
- Enhancing the handling of split-brain scenario by the watchdog.
- Enhancing the watchdog internal command mechanism to handle multiple
concurrent commands.
- Fix compiler warnings.
- Comment out unsupported Java method in new JDBC drivers to prevent
regression failure.
- Downgrade parse before bind log message to debug1.
- Fix coverity warnings.
- Fix for [pgpool-general: 5396] pam ldap failure.
- Mention that SQL type commands cannot be used in extended query mode.
- Consider SHOW command as kind of a read query.
- Fix memory leak problem caused by commit adcb636.
- Mega patch to fix "kind mismatch" (or derived) errors in streaming
replication mode.
- Fix for 0000296: PGPool v3.6.2 terminated by systemd because the
service Type has been set to 'forking'.
Release 3.6.2
- Add "Wants=network.target" to pgpool.service file.
- Fix pcp_promote_node bug that fails promoting node 0.
- Fix document error.
- Pgpool-IIshould not perform ping test after bringing down the VIP.
- Fix to release shared memory segments when Pgpool-IIexits.
- Fix for [pgpool-general: 5315] pg_terminate_backend
- Adding the missing ExecStop and ExecReload commands to the systemd
service configuration file.
- Fix for 281: "segmentation fault" when execute pcp_attach_node.
- Fix load balancing bug in streaming replication mode.
- Fix yet another kind mismatch error in streaming replication mode.
- Fix do_query()hangs after close message.
- Fixing stack smashing detected.
- Fixing the issue with the watchdog process restart.
- Fix query cache bug reported in pgpool-general-jp:1441.
- Remove elog/ereport calls from signal handlers.
- Fix bug failed to create INET domain socket in FreeBSD if
listen_addresses = '*'.
- Fix for 0000249: watchdog sometimes fails de-escalation.
- Fix connection_life_time broken by authentication_timeout.
- Fix authentication timeout that can occur right after client
connecttions.
Release 3.6.1
- Tightening up the watchdog security.
- Add pgpool_adm extension in Pgpool-II RPM.
- Fix occasional segfault when query cache is enabled.
- Fix packet kind does not match error in extended protocol.
- Fix a race condition in a signal handler.
- Fix wrong minimum configuration value for
client_idle_limit_in_recovery.
- Allow to execute "make xslthtml" under doc.ja.
--------------------------
- This version officially supports the new Python 3.6 and PostgreSQL 9.6.
- query_formatted() can now be used without parameters.
- The automatic renaming of columns that are invalid as field names of
named tuples now works more accurately in Python 2.6 and 3.0.
- Fixed error checks for unlink() and export() methods of large objects
(bug report by Justin Pryzby).
- Fixed a compilation issue under OS X (bug report by Josh Johnston).
pg_repack is a PostgreSQL extension which lets you remove bloat from
tables and indexes, and optionally restore the physical order of
clustered indexes.
This package uses sqlite3/Makefile.version to set the package
version, but the checksum was for the distfile of the previous
version. Update the checksum to the correct distfile and fix the
resulting PLIST.
Three security vulnerabilities have been closed by this release:
* CVE-2017-7546: Empty password accepted in some authentication methods
* CVE-2017-7547: The "pg_user_mappings" catalog view discloses passwords to users lacking server privileges
* CVE-2017-7548: lo_put() function ignores ACLs
MariaDB 5.5.57
- Bugfixes and updates, including from MySQL 5.5.57.
- Fixes for the following security vulnerabilities:
- CVE-2017-3636
- CVE-2017-3641
- CVE-2017-3653
MariaDB 5.5.56
- Bugfixes and updates, including from MySQL 5.5.56.
MariaDB 5.5.55
- Bugfixes and updates, including from MySQL 5.5.55.
- MDEV-11027: better InnoDB crash recovery progress reporting
- MDEV-11520: improvements to how InnoDB data files are extended
- MDEV-6143: the various MariaDB Linux binary tarballs will now untar
to directories that match their filename
- Fixes for the following security vulnerabilities:
- CVE-2017-3302
- CVE-2017-3313
- CVE-2017-3308
- CVE-2017-3309
- CVE-2017-3453
- CVE-2017-3456
- CVE-2017-3464
MariaDB 5.5.54
- Bugfixes and updates, including from MySQL 5.5.54.
- HeidiSQL updated to 9.4
- Fixes for the following security vulnerabilities:
- CVE-2016-6664
- CVE-2017-3238
- CVE-2017-3243
- CVE-2017-3244
- CVE-2017-3258
- CVE-2017-3265
- CVE-2017-3291
- CVE-2017-3312
- CVE-2017-3317
- CVE-2017-3318
MariaDB 5.5.53
- Bugfixes and updates, including from MySQL 5.5.53.
- XtraDB updated to 5.5.52-38.3
- Fixes for the following security vulnerabilities:
- CVE-2016-7440
- CVE-2016-5584
- CVE-2016-5483 (re-issued later as CVE-2017-3600)
- CVE-2017-3651
This release modifies the just-released fix for Oracle "WITH_UNICODE" mode based on feedback from cx_Oracle developers, to resolve a performance regression caused by this change.
compatible with the pyasn1 library from version 0.1.8 up to latest (0.3.1 for now) version
MockAsync strategy is available
added __ne__ method to Attribute in abstraction layer (thank Rodrigo)
added LDAPUserNameIsMandatoryError exception in simple bind when user name is empty
search referrals are properly decoded with fast decoder
paged search works in mock strategies
paged_search in extend.standard namespace raises an exception of class LDAPOperationResult if the search returns an error
search_paged() method of Cursor object now return the whole list of entries if generator=False
updated docs for defaults parameters (thanks Guarnacciaa)
fixed mockBase for integer matching (thanks Jijo)
boolean values are now uppercase in LDIF (thanks Linus)
fixed timeout in ssl connection on Linux and Mac (thanks Allan)
changed some internal functions to private in ldap3.utils.dn
operational attribute entryDN is properly managed in Mock strategies (thanks Mark)
new rdn in renamed entry is properly set in Mock strategies (thanks Mark)
metrics are now updated for Mock strategies, except that for received bytes (thanks joehy)
better managing of missing schema from the server (thanks Deborah)
fixed error while schema is not in string format (thanks Alexandre)
SNI support added when the underlying python library allows it (thanks Edmund)
added pool_keepalive parameter to Connection object for REUSABLE strategy
connection.extend.microsoft.modify_password returns False when change is not successful (thanks Ashley)
added validators for uuid and uuid_le
fixed error while searching for bytes
fixed pickling and unpickling of datetime values (thanks David)
fixed error that resulted in valid generalizedTime strings not being parsed (thanks Busuwe)
fixed error with modify operation on referrals (thanks Busuwe)
fixed error in mockBase add_entry() with raw rdn (thanks Chad)
fixed error when stdin has not encoding in config.py (thanks cronicryo)
fixed error when optional field are not present in pyasn1 requests (thanks Ilya)
added DEFAULT_SERVER_ENCODING config parameter, should always be utf-8
DEFAULT_ENCODING config parameter renamed to DEFAULT_CLIENT_ENCODING
ADDITIONAL_ENCODINGS config parameter renamed to ADDITIONAL_SERVER_ENCONDINGS
additional encodings are applied to all data received from the server
additional encodings are not applied to client data
added from_server=False parameter to to_unicode() to not try client encoding while decoding data from server
Bug fixes:
- Loading two or more modules exporting native data types resulted
into the inability to reload the RDB file.
- Crash in modules when calling from Lua scripts module commands that
would block.
- A Redis Cluster crash due to mis-handling of the "migrate-to"
internal flag.
- Other smaller fixes not worth of a release per se, but nice to add
here.
Redis 4.0.0
Major features
- Redis modules system. Redis now allows developers to write modules
that can extend the Redis functionalities and implement new data
types.
- Partial Replication (PSYNC) version 2.
- Cache eviction improvements. Redis 4.0 implements LFU (Least
Frequently Used) as a new eviction algorithm, and improves the
functionality, performances and precision of the existing algorithms.
- Lazy freeing of keys. Redis is now able to delete keys in the
background in a different thread without blocking the server.
- Mixed RDB-AOF format. If enabled the new format is used when
rewriting the AOF file: the rewrite uses the more compact and faster
to generate RDB format, and an AOF stream is appended to the file.
- A new MEMORY command, able to perform memory analysis of different
kinds: troubleshooting of memory issues (with MEMORY DOCTOR, similar
to LATENCY DOCTOR), reporting of the amount of memory used by a single
key, more in-depth reporting of Redis memory usage compared to what
the INFO command offers.
- Redis Cluster support for NAT / Docker.
- Redis uses now less memory in order to store the same amount of
data. The gain depends a lot on the kind of dataset stored.
- Redis is now able to defragment the used memory and reclaim space
incrementally while running.
Smaller features
- Improvements to the RDB format to support 64 bit lengths, binary
sorted set scores, and more.
- SWAPDB command: ability to completely and immediately (no latency)
replace two Redis databases.
- Improvements to `dict.c`, the Redis hash table implementation.
- Security improvements mapping POST and Host: commands to QUIT in
order to prevent cross protocol scripting attacks.
- RPUSHX and LPUSHX now accept a variable number of elements.
- Reporting of additional memory used by copy on write in the INFO
output.
- Serious refactoring of many core parts of Redis.
Migrating from 3.2 to 4.0
- The Redis Cluster bus protocol of 4.0 is no longer compatible with
Redis 3.2.
- Redis Cluster CLUSTER NODES output is now slightly different.
- Writable slaves do not propagate writes to their sub-slaves, so
writes to writable slaves remain just local.
- The RDB format changed. Redis 4.0 is still able to read 3.2 (and all
the past versions) files, but not the other way around.
- Certain log formats and sentences are different in Redis 4.0.
- Certain INFO fields, especially related to replication, are now
different.
- GEODIST, GEOPOS and GEOHASH return values changed for non existing
keys
- The SLOWLOG command entires contain additional two fields: the
client address and name. This is documented in the SLOWLOG command online
documentation.
1. Update the text of error messages returned by sqlite3_errmsg() for some error codes.
2. Add new pointer passing interfaces.
3. Backwards-incompatible changes to some extensions in order to take advantage of the improved security offered by the new pointer passing interfaces:
a. Extending FTS5 → requires sqlite3_bind_pointer() to find the fts5_api pointer.
b. carray(PTR,N) → requires sqlite3_bind_pointer() to set the PTR parameter.
c. remember(V,PTR) → requires sqlite3_bind_pointer() to set the PTR parameter.
4. Added the SQLITE_STMT virtual table extension.
5. Added the COMPLETION extension - designed to suggest tab-completions for interactive user interfaces. This is a work in progress. Expect further enhancements in future releases.
6. Added the UNION virtual table extension.
7. The built-in date and time functions have been enhanced so that they can be used in CHECK constraints, in indexes on expressions, and in the WHERE clauses of partial indexes, provided that they do not use the 'now', 'localtime', or 'utc' keywords. Futher information.
8. Added the sqlite3_prepare_v3() and sqlite3_prepare16_v3() interfaces with the extra "prepFlags" parameters.
9. Provide the SQLITE_PREPARE_PERSISTENT flag for sqlite3_prepare_v3() and use it to limit lookaside memory misuse by FTS3, FTS5, and the R-Tree extension.
10. Added the PRAGMA secure_delete=FAST command. When secure_delete is set to FAST, old content is overwritten with zeros as long as that does not increase the amount of I/O. Deleted content might still persist on the free-page list but will be purged from all b-tree pages.
11. Enhancements to the command-line shell:
a. Add support for tab-completion using the COMPLETION extension, for both readline and linenoise.
b. Add the ".cd" command.
c. Enhance the ".schema" command to show the schema of all attached databases.
d. Enhance ".tables" so that it shows the schema names for all attached if the name is anything other than "main".
e. The ".import" command ignores an initial UTF-8 BOM.
f. Added the "--newlines" option to the ".dump" command to cause U+000a and U+000d characters to be output literally rather than escaped using the replace() function.
12. Query planner enhancements:
a. When generating individual loops for each ORed term of an OR scan, move any constant WHERE expressions outside of the loop, as is done for top-level loops.
b. The query planner examines the values of bound parameters to help determine if a partial index is usable.
c. When deciding between two plans with the same estimated cost, bias the selection toward the one that does not use the sorter.
d. Evaluate WHERE clause constraints involving correlated subqueries last, in the hope that they never have be evaluated at all.
e. Do not use the flattening optimization for a sub-query on the RHS of a LEFT JOIN if that subquery reads data from a virtual table as doing so prevents the query planner from creating automatic indexes on the results of the sub-query, which can slow down the query.
13. Add SQLITE_STMTSTATUS_REPREPARE, SQLITE_STMTSTATUS_RUN, and SQLITE_STMTSTATUS_MEMUSED options for the sqlite3_stmt_status() interface.
14. Provide PRAGMA functions for PRAGMA integrity_check, PRAGMA quick_check, and PRAGMA foreign_key_check.
15. Add the -withoutnulls option to the TCL interface eval method.
16. Enhance the sqlite3_analyzer.exe utility program so that it shows the number of bytes of metadata on btree pages.
17. The SQLITE_DBCONFIG_ENABLE_QPSG run-time option and the SQLITE_ENABLE_QPSG compile-time option enable the query planner stability guarantee. See also ticket 892fc34f173e99d8
18. Miscellaneous optimizations result in a 2% reduction in CPU cycles used.
Bug Fixes:
19. Fix the behavior of sqlite3_column_name() for queries that use the flattening optimization so that the result is consistent with other queries that do not use that optimization, and with PostgreSQL, MySQL, and SQLServer. Ticket de3403bf5ae.
20. Fix the query planner so that it knows not to use automatic indexes on the right table of LEFT JOIN if the WHERE clause uses the IS operator. Fix for ce68383bf6aba.
21. Ensure that the query planner knows that any column of a flattened LEFT JOIN can be NULL even if that column is labeled with "NOT NULL". Fix for ticket 892fc34f173e99d8.
22. Fix rare false-positives in PRAGMA integrity_check when run on a database connection with attached databases. Ticket a4e06e75a9ab61a12
23. Fix a bug (discovered by OSSFuzz) that causes an assertion fault if certain dodgy CREATE TABLE declarations are used.
Features
--------
- Add idle_heartbeat_timeout cluster option to tune how long to wait
for heartbeat responses.
- Add HostFilterPolicy
Bug Fixes
---------
- is_idempotent flag is not propagated from PreparedStatement to
BoundStatement
- Fix asyncore hang on exit
- Driver takes several minutes to remove a bad host from session
- Installation doesn't always fall back to no cython in Windows
- Avoid to replace a connection that is supposed to shutdown
- request_ids may not be returned to the pool
- Fix murmur3 on big-endian systems
- Ensure unused connections are closed if a Session is deleted by the
GC
- Fix .values_list by using db names internally (cqlengine)
Other
-----
- Bump Cython dependency version to 0.25.2
- Fix DeprecationWarning when using lz4
- Deprecate WhiteListRoundRobinPolicy
- Improve upgrade guide for materializing pages
- Documentation for time/date specifies timestamp inupt as
microseconds
- Point to DSA Slack, not IRC, in docs index
Liquibase is an open source (Apache 2.0 Licensed), database-independent
library for tracking, managing and applying database changes. It is
built on a simple premise: All database changes are stored in a human
readable, yet trackable, form and checked into source control.
Provided by mmoll in netbsd/pkgsrc pull request #6, with some changes from
myself.
Bugfixes
--------
* made rrd_fetch_cb_wrapper in RRDs more careful with its arguments
* many bugfixes to resolve issues identified Coverty scan
* fix build issues with libdbl
* take the ds step into account while caching data in rrd graph DEF statements
* never 'exit' from librrd (even when DEBUG is on)
Features
--------
* new command rrd list to show rrd files in a directory
* configurable log-level for rrdcached
* hungarian translation (hu.po)
API
---
* New Exported funtions: rrd_lcd, rrd_reduce_data, rrd_cf_conf and rrd_list
* rrd_list support for perl and python binding
* all new and much more complete python bindings working on both python 2.6+ and 3.3+
* extended documentation in rrdlib.pod
- Set autoincrement as False for translation class inherited primary keys
1.0.2
- Added ``translations_relationship_args`` configuration option
- Added ``foreign_key_args`` parameter to ``translations_base`` function
- Fixed drop_database version comparison
0.32.13
- Fixed a DeprecationWarning by using LargeBinary instead of Binary
0.32.12
- Added generic_repr decorator
0.32.11
- TimeZoneType support for static timezones
- Added SQLite support for PasswordType
0.32.10
- Added PhoneNumber as the python_type for PhoneNumberType
- Made auto_delete_orphans support backref tuples
0.32.9
- Added support for multi-column observers
This release repairs an issue in the test suite that would prevent the suite from passing on Python version 3.6.2. The release is made at the same time as that of release 1.0.18 and 1.2.0b2. Also included are fixes related to ORM use of JSON NULL values, subquery eager loading, and a stability enhancement involving the identity map when used under high concurrency.
- Fixed inconsistent state in externally closed connections
Was fixed in 2.6.2 but not included in 2.7 by mistake.
- Fixed Python exceptions propagation in green callback
- Don't display the password in `connection.dsn` when the connection
string is specified as an URI
- Return objects with timezone parsing "infinity" :sql:`timestamptz`
- Dropped dependency on VC9 runtime on Windows binary packages
- Fixed segfault in `~connection.lobject()` when *mode*\=\ `!None`
- Fixed `~connection.lobject()` keyword argument *lobject_factory*
- Fixed `~psycopg2.extras.ReplicationCursor.consume_stream()`
*keepalive_interval* argument
- Maybe fixed random import error on Python 3.6 in multiprocess
environment
- Fixed random `!SystemError` upon receiving abort signal
- Accept `~psycopg2.sql.Composable` objects in
`~psycopg2.extras.ReplicationCursor.start_replication_expert()`
- Parse intervals returned as microseconds from Redshift
- Added `~psycopg2.extras.Json` `!prepare()` method to consider connection
params when adapting
- `~psycopg2.errorcodes` map updated to PostgreSQL 10 beta 1.
- Fixed an error where Oracle sometimes truncated timestamp formats so
that date parsing failed. Thanks to Johann Wilfling for the report and
@nmaqsudov for the solution (#316).
- Added pager configuration, prioritizing the new `core.pager`
configuration variable over the `$PAGER` environment variable. The new
`$SQITCH_PAGER` environment variable trumps all. Thanks to Yati Sagade
for the pull request (#329).
- Documented the `core.editor` configuration variable.
- Updated PostgreSQL registry detection to avoid errors when not running
Sqitch as a superuser and the registry schema already exists. Done by
looking for the `changes` table in the `pg_tables` view instead of
looking for the registry schema in the `pg_namespace` catalog table,
and by using `CREATE SCHEMA IF NOT EXISTS` on PostgreSQL 9.3 and
higher. Thanks to @djk447 for the pull request (#307).
- Updated PostgreSQL registry detection to avoid errors when the `psql`
client is newer than the server version. Sqitch now fetches the version
from the server instead of parsing it from the client.
- Specifying a change before a target name on the command-line no longer
ignores the target (#281).
- The `--db-*` options are now more consistently applied to a target,
including when the target is specified as a URI (#293).
- `HEAD` and `ROOT` are now properly recognized as aliases for `@HEAD`
and `@ROOT`, when querying the database. This was supposedly done in
v0.991, but due to a bug, it wasn't really. Sorry about that.
- The `revert` and `verify` commands will now fail if a change is
specified and matches multiple changes. This happens when referencing a
reworked change only by its name. In this case, Sqitch will emit an
error listing properly tag-qualified changes to use. Suggested by Jay
Hannah (#312).
- Sqitch no longer returns an error when a target name is passed to a
command and the default target's plan file does not exist (#324).
- Added missing options to the `rework` usage statement. Thanks to Jay
Hannah for the PR (#342).
- Passing an engine name or plan file as the `<database>` parameter to
the `log`, `status`, and `upgrade` commands now works correctly,
matching what the documention has said for some time (#324).
- Added the `--target` option to the `plan` and `show` commands.
- Added the `<database>` parameter to the `plan` command.
- Sqitch now loads targets from all config files, not just the local
file, when trying to determine if a `<database>` parameter is a plan
file name.
- Improved the error message when a change is found more than once in a
plan, typically a reworked changed referenced only by name. The error
will no longer be "Key at multiple indexes", but "Change is ambiguous.
Please specify a tag-qualified change:", followed by a list of
tag-qualified variants of the change.
- Fixed a bug where the verify command would return a database error when
it finds no registory. Now it reports that the registry wasn't found in
the database.
* Standardize on JSON-based distribution (and remove ini-based distribution)
* Fix various (minor) bugs
* Overhaul docs
* Breaking change: json package info now in datapackage.json
* Security Fix: The linked OpenSSL library for the MySQL Commercial Server has been updated to version 1.0.2l. Issues fixed in the new OpenSSL version are described at http://www.openssl.org/news/vulnerabilities.html.
This change does not affect the Oracle-produced MySQL Community build of MySQL Server, which uses the yaSSL library instead.
Platform-Specific Notes
* Linux: The generic Linux build for MySQL 5.6 is now built on Oracle Linux 6 using glibc 2.12. Systems that use the build need to have glibc 2.12 or later installed on them.
Functionality Added or Changed
* For Windows, MSI installer packages now include a check for the required Visual Studio redistributable package, and produce a message asking the user to install it if it is missing.
* The mysql client now supports a --binary-as-hex option that causes display of binary data using hexadecimal notation (0xvalue). Thanks to Daniël van Eeden for the patch.
* mysqlaccess now looks for its configuration file only in the SYSCONFDIR directory and /etc.
Bugs Fixed
* InnoDB: The server allocated memory unnecessarily for an operation that rebuilt the table.
* InnoDB: When using an index merge optimizer switch, a SELECT COUNT(*) operation sometimes returned 0. Partitioning code incorrectly performed a memcpy instead of a column copy of columns read by the index, causing the wrong records to be copied.
* Replication: A USE statement that followed a SET GTID_NEXT statement sometimes had no effect.
* Replication: If the binary log on a master server was rotated and a full disk condition occurred on the partition where the binary log file was being stored, the server could stop unexpectedly. The fix adds a check for the existence of the binary log when the dump thread switches to next binary log file. If the binary log is disabled, all binary logs up to the current active log are transmitted to slave and an error is returned to the receiver thread.
* Replication: If a relay log index file named relay log files that did not exist, RESET SLAVE ALL sometimes did not fully clean up properly.
* Replication: mysqlbinlog, if invoked with the --raw option, does not flush the output file until the process terminates. But if also invoked with the --stop-never option, the process never terminates, thus nothing is ever written to the output file. Now the output is flushed after each event.
* Replication: A memory leak in mysqlbinlog was fixed. The leak happened when processing fake rotate events, or when using --raw and the destination log file could not be created. The leak only occurred when processing events from a remote server. Thanks to Laurynas Biveinis for his contribution to fixing this bug.
* Replication: Multi-threaded slaves could not be configured with small queue sizes using slave_pending_jobs_size_max if they ever needed to process transactions larger than that size. Any packet larger than slave_pending_jobs_size_max was rejected with the error ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX, even if the packet was smaller than the limit set by slave_max_allowed_packet.
* With this fix, slave_pending_jobs_size_max becomes a soft limit rather than a hard limit. If the size of a packet exceeds slave_pending_jobs_size_max but is less than slave_max_allowed_packet, the transaction is held until all the slave workers have empty queues, and then processed. All subsequent transactions are held until the large transaction has been completed. The queue size for slave workers can therefore be limited while still allowing occasional larger transactions.
* mysqldump could write database names in USE statements incorrectly.
* If the mysql_stmt_close() C API function was called, it freed memory that later could be accessed if mysql_stmt_error(), mysql_stmt_errno(), or mysql_stmt_sqlstate() was called. To obtain error information after a call to mysql_stmt_close(), call mysql_error(), mysql_errno(), or mysql_sqlstate() instead.
* Queries could be cached incorrectly, leading to incorrect query results, under these circumstances: InnoDB table; rows are being inserted but have not yet been committed; a query uses the table as a base table in a derived table; the optimizer chooses to materialize the derived table.
* Man pages for a few utilities were missing from Debian/Ubuntu packages.
* The field-t unit test failed to run with AddressSanitizer enabled. Thanks to Laurynas Biveinis for the patch.
* Debian client packages were missing information about conflicts with native packages.
* The Perl path in #! lines at the beginning of Perl scripts has been adjusted to /usr/local/bin/perl for FreeBSD 11.
* The server exited abnormally attempting to access invalid memory.
* A race condition could occur for CREATE TABLE statements with DATA DIRECTORY or INDEX DIRECTORY clauses.
* MySQL compilation in different directories produced different builds to leakage of absolute paths into debug information and __FILE__.
* mysqld_failed to start the server if the --datadir option was specified with a relative path name.
* With read_only enabled, creation of non-TEMPORARY tables by non-SUPER users was permitted under certain conditions.
*Certain stored functions, if used in a query WHERE clause, could be handled using Index Condition Pushdown (which should not happen), resulting in a server exit.
* On x86 machines, the uint3korr() macro read 4 bytes of data instead of the intended 3 bytes.
* An assertion was raised during a fetch operation by the memcached plugin.
* Queries that contained UNION in a subquery and GROUP BY could return incorrect results.
* LOAD XML INFILE performance became noticeably slower when the XML file being read contained a great many spaces, such as those introduced by indenting or pretty-printing. Now all leading whitespace is trimmed from each such value before reading it into memory.
* Security Fix: The linked OpenSSL library for the MySQL Commercial Server has been updated to version 1.0.2l. Issues fixed in the new OpenSSL version are described at http://www.openssl.org/news/vulnerabilities.html.
This change does not affect the Oracle-produced MySQL Community build of MySQL Server, which uses the yaSSL library instead.
Platform-Specific Notes
* Linux: The generic Linux build for MySQL 5.6 is now built on Oracle Linux 6 using glibc 2.12. Systems that use the build need to have glibc 2.12 or later installed on them.
Functionality Added or Changed
* For Windows, MSI installer packages now include a check for the required Visual Studio redistributable package, and produce a message asking the user to install it if it is missing.
* The mysql client now supports a --binary-as-hex option that causes display of binary data using hexadecimal notation (0xvalue). Thanks to Daniël van Eeden for the patch.
* mysqlaccess now looks for its configuration file only in the SYSCONFDIR directory and /etc.
Bugs Fixed
* InnoDB: The server allocated memory unnecessarily for an operation that rebuilt the table.
* InnoDB: When using an index merge optimizer switch, a SELECT COUNT(*) operation sometimes returned 0. Partitioning code incorrectly performed a memcpy instead of a column copy of columns read by the index, causing the wrong records to be copied.
* Replication: A USE statement that followed a SET GTID_NEXT statement sometimes had no effect.
* Replication: If the binary log on a master server was rotated and a full disk condition occurred on the partition where the binary log file was being stored, the server could stop unexpectedly. The fix adds a check for the existence of the binary log when the dump thread switches to next binary log file. If the binary log is disabled, all binary logs up to the current active log are transmitted to slave and an error is returned to the receiver thread.
* Replication: If a relay log index file named relay log files that did not exist, RESET SLAVE ALL sometimes did not fully clean up properly.
* Replication: mysqlbinlog, if invoked with the --raw option, does not flush the output file until the process terminates. But if also invoked with the --stop-never option, the process never terminates, thus nothing is ever written to the output file. Now the output is flushed after each event.
* Replication: A memory leak in mysqlbinlog was fixed. The leak happened when processing fake rotate events, or when using --raw and the destination log file could not be created. The leak only occurred when processing events from a remote server. Thanks to Laurynas Biveinis for his contribution to fixing this bug.
* Replication: Multi-threaded slaves could not be configured with small queue sizes using slave_pending_jobs_size_max if they ever needed to process transactions larger than that size. Any packet larger than slave_pending_jobs_size_max was rejected with the error ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX, even if the packet was smaller than the limit set by slave_max_allowed_packet.
* With this fix, slave_pending_jobs_size_max becomes a soft limit rather than a hard limit. If the size of a packet exceeds slave_pending_jobs_size_max but is less than slave_max_allowed_packet, the transaction is held until all the slave workers have empty queues, and then processed. All subsequent transactions are held until the large transaction has been completed. The queue size for slave workers can therefore be limited while still allowing occasional larger transactions.
* mysqldump could write database names in USE statements incorrectly.
* If the mysql_stmt_close() C API function was called, it freed memory that later could be accessed if mysql_stmt_error(), mysql_stmt_errno(), or mysql_stmt_sqlstate() was called. To obtain error information after a call to mysql_stmt_close(), call mysql_error(), mysql_errno(), or mysql_sqlstate() instead.
* Queries could be cached incorrectly, leading to incorrect query results, under these circumstances: InnoDB table; rows are being inserted but have not yet been committed; a query uses the table as a base table in a derived table; the optimizer chooses to materialize the derived table.
* Man pages for a few utilities were missing from Debian/Ubuntu packages.
* The field-t unit test failed to run with AddressSanitizer enabled. Thanks to Laurynas Biveinis for the patch.
* Debian client packages were missing information about conflicts with native packages.
* The Perl path in #! lines at the beginning of Perl scripts has been adjusted to /usr/local/bin/perl for FreeBSD 11.
* The server exited abnormally attempting to access invalid memory.
* A race condition could occur for CREATE TABLE statements with DATA DIRECTORY or INDEX DIRECTORY clauses.
* MySQL compilation in different directories produced different builds to leakage of absolute paths into debug information and __FILE__.
* mysqld_failed to start the server if the --datadir option was specified with a relative path name.
* With read_only enabled, creation of non-TEMPORARY tables by non-SUPER users was permitted under certain conditions.
*Certain stored functions, if used in a query WHERE clause, could be handled using Index Condition Pushdown (which should not happen), resulting in a server exit.
* On x86 machines, the uint3korr() macro read 4 bytes of data instead of the intended 3 bytes.
* An assertion was raised during a fetch operation by the memcached plugin.
* Queries that contained UNION in a subquery and GROUP BY could return incorrect results.
* LOAD XML INFILE performance became noticeably slower when the XML file being read contained a great many spaces, such as those introduced by indenting or pretty-printing. Now all leading whitespace is trimmed from each such value before reading it into memory.
The LDAP controls and extended operations (EXOP) has been merged upstream
with some modifications. The patches backports upstream code to php70
and php71, with additionnal EXOP REFRESH support that is missing for now.
* Use a modern PBR package
* Prepare for using standard python tests
* Set autoincrement to False when modifying to non-Integer datatype
* Raise VersionNotFoundError instead of KeyError
* Fix DeprecationWarning on setuptools >= 11.3
* Update .gitreview for new namespace
occurred more than once in the container.
HTTP Headers and URL query string require specific data structure: multidict.
It behaves mostly like a regular dict but it may have several values for the
same key and preserves insertion ordering.
renamed py-redis-py to py-redis
2.10.5
* Allow URL encoded parameters in Redis URLs. Characters like a "/" can
now be URL encoded and redis-py will correctly decode them.
* Added support for the WAIT command.
* Better shutdown support for the PubSub Worker Thread. It now properly
cleans up the connection, unsubscribes from any channels and patterns
previously subscribed to and consumes any waiting messages on the socket.
* Added the ability to sleep for a brief period in the event of a
WatchError occuring.
* Fixed a bug with pipeline error reporting when dealing with characters
in error messages that could not be encoded to the connection's
character set.
* Fixed a bug in Sentinel connections that would inadvertantly connect
to the master when the connection pool resets.
* Better timeout support in Pubsub get_message.
* Fixed a bug with the HiredisParser that would cause the parser to
get stuck in an endless loop if a specific number of bytes were
delivered from the socket. This fix also increases performance of
parsing large responses from the Redis server.
* Added support for ZREVRANGEBYLEX.
* ConnectionErrors are now raised if Redis refuses a connection due to
the maxclients limit being exceeded.
* max_connections can now be set when instantiating client instances.
=== 4.48.0 (2017-07-01)
* Deprecate Model.<< (jeremyevans)
* Deprecate Dataset#{and,exclude_where,range,interval}, move to
sequel_4_dataset_methods extension (jeremyevans)
* Make Database#indexes not include partial indexes on SQLite 3.8.8+
(jeremyevans)
* Make Database#indexes include indexes created automatically from unique
constraints on SQLite 3.8.8+ (jeremyevans)
* Deprecate Sequel::Postgres::PG_TYPES, conversion procs should not be
registered per-Database (jeremyevans)
* Add Database#add_conversion_proc method on PostgreSQL for registering
conversion procs (jeremyevans)
* Deprecate unexpected values passed to Dataset#insert_conflict on SQLite
(jeremyevans)
* Deprecate Sequel::SqlAnywhere::Dataset#convert_smallint_to_bool= method
(jeremyevans)
* Deprecate Sequel::SqlAnywhere.convert_smallint_to_bool accessor
(jeremyevans)
* Use savepoints around index creation if creating table inside transaction if
ignore_index_errors is used (jeremyevans)
* Deprecate treating :natrual_inner join type on MySQL as NATURAL LEFT JOIN
(jeremyevans)
* Deprecate Dataset#mssql_unicode_strings= on Microsoft SQL Server
(jeremyevans)
* Preserve encoding when parsing PostgreSQL arrays (jeltz) (#1387)
* Deprecate external modification of Sequel::JDBC::TypeConvertor (jeremyevans)
* Deprecate Sequel::DB2.use_clob_as_blob accessor (jeremyevans)
* Add Database#use_clob_as_blob accessor on DB2 (jeremyevans)
* Deprecate SEQUEL_POSTGRES_USES_PG constant (jeremyevans)
* Do not swallow original exception if exception is raised inside
Database#copy_table on PostgreSQL (jeremyevans)
* Deprecate Sequel::Postgres.client_min_messages and force_standard_strings
accessors (jeremyevans)
* Deprecate Sequel::Postgres.use_iso_date_format accessor (jeremyevans)
* Do not allow connection in postgres adapter if postgres-pr driver is used
and force_standard_strings is false (jeremyevans)
* Drop support for ancient postgres driver in postgres adapter, now only pg
and postgres-pr drivers are supported (jeremyevans)
* Deprecate Sequel::MySQL.convert_invalid_date_time accessor (jeremyevans)
* Deprecate Sequel::MySQL.convert_tinyint_to_bool accessor (jeremyevans)
* Deprecate Sequel::MySQL.default_{charset,collate,engine} accessors
(jeremyevans)
* Add Database#default_{charset,collate,engine} accessors on MySQL
(jeremyevans)
* Make mock adapter thread safe (jeremyevans)
* Deprecate Sequel::JDBC::Dataset#convert_types accessor (jeremyevans)
* Add Dataset#with_convert_types in jdbc adapter (jeremyevans)
* Deprecate Sequel::IBMDB::Dataset#convert_smallint_to_bool= method
(jeremyevans)
* Deprecate Sequel::IBMDB.convert_smallint_to_bool accessor (jeremyevans)
* Add Database#convert_smallint_to_bool accessor in the ibmdb adapter
(jeremyevans)
* Deprecate sequel_3_dataset_methods extension (jeremyevans)
* Deprecate query_literals extension (jeremyevans)
* Deprecate using subtype conversion procs added after registering composite
type in the pg_row extension (jeremyevans)
* Don't try canceling copy in Database#copy_into if copier is not created yet
(aakashAu) (#1384)
* Deprecate global conversion procs added by pg_* extensions, when extension
isn't loaded into Database instance (jeremyevans)
* Deprecate Sequel::Postgres::PGRange.register in the pg_range extension
(jeremyevans)
* Deprecate Sequel::Postgres::PGArray.register in the pg_array extension
(jeremyevans)
* Deprecate Database#copy_conversion_procs (private method) on PostgreSQL
(jeremyevans)
* Deprecate Database#reset_conversion_procs on PostgreSQL (jeremyevans)
* Deprecate meta_def extension (jeremyevans)
* Make class_table_inheritance plugin with :alias option not use subquery for
datasets that don't join (jeremyevans)
* Deprecate hash_aliases extension (jeremyevans)
* Deprecate filter_having extension (jeremyevans)
* Deprecate empty_array_ignore_nulls extension (jeremyevans)
* Deprecate Array#sql_array in the core_extensions extension (jeremyevans)
* Make validation_helpers plugin :allow_blank option work correctly when the
blank extension is not loaded (jeremyevans)
* Make validation_class_methods plugin no longer require the blank extension
(jeremyevans)
* Clear cached associations when touching associations in the touch plugin
(jeremyevans)
* Make pg_array_associations model plugin load pg_array extension into
database (jeremyevans)
* Remove support for :strict option in nested_attributes plugin, use
:unmatched_pk option instead (jeremyevans)
* Make to_json class/dataset method in json_serializer plugin accept
:instance_block option to pass block to Model#to_json (jeremyevans)
* Make to_json methods in json_serializer plugin accept blocks that are used
to transform values before serializing to JSON (jeremyevans)
* Make Sequel.object_to_json pass block to #to_json (jeremyevans)
* Deprecate identifier_columns plugin, not needed with Sequel.split_symbols =
false (jeremyevans)
* Make reloading column_conflicts plugin not remove existing conflict markings
(jeremyevans)
* Deprecate cti_base_model, cti_key, and cti_model_map class methods in
class_table_inheritance plugin (jeremyevans)
* Make Model.skip_auto_validations(:not_null) in the auto_validations plugin
skip not null checks for columns with default values (jeremyevans)
* Make Database#copy_into in jdbc/postgresql adapter respect :server option
(jeremyevans)
* Make #to_hash and #to_hash_groups handle options in the static_cache plugin,
and add rename #to_hash to #as_hash (jeremyevans)
* Rename Dataset#to_hash to #as_hash, and add #to_hash as an alias, to allow
undefing #to_hash to fix ruby calling it implicitly (jeremyevans) (#1375)
* Handle PG* constants deprecated in pg 0.21.0 in the postgres adapter
(jeremyevans) (#1377, #1378)
* Support :association_pks_use_associated_table association option in
association_pks plugin (jeremyevans)
* Make pg_hstore extension reset hstore conversion proc when running
Database#reset_conversion_procs (jeremyevans)
* Fix incorrect SQL used for inserting into a CTI subclass sharing the primary
table when using the :alias option (jeremyevans)
0.4.7
* Adding support for MYSQL_ENABLE_CLEARTEXT_PLUGIN flag (#845)
* Avoid invalidating re-assigned socket fd by fixing connected check (#847)
* Wait for close to be processed by server in test for Threads_connected (#850)
* Fix flaky test that used Process.wait without specifying a pid (#849)
* Add a Mysql2::Client#closed? method (#796)
* Fix use after free of client field when closing with reconnect option (#846)
* Fix leaky test that caused a re-assigned socket to be closed on GC. (#853)
* Close several unclosed clients in tests (#848)
* Fix spec that expected Client#socket on all platforms, it's not available on
WIndows
* Docs: Fix link in readme (#854)
* English grammar: Fix incorrect use of word "deprecated" (#855)
* Minimal required changes to make it work for mariadb 10.2 (#857)
* Fix segfault for Mysql2::Statement#fields on non-SELECT queries
* Fix for name change of struct NET.vio to .pvio in MariaDB Connector/C 3.x.
* Fix for MariaDB 10.2 which does not define CLIENT_LONG_PASSWORD
* Add README section to discuss the special meaning of localhost
* Move the section for Multple Result Sets
* Update MySQL Connector/C version for Windows
* Change the quoting for unzipping MySQL Connector/C for Windows
0.4.8
* Add ifdefs for MySQL 5.1 without MYSQL_ENABLE_CLEARTEXT_PLUGIN
Upstream changes:
2017-06-29 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.043)
YOUR ATTENTION PLEASE, THIS IS A REVERT TO 4.041
This version is the same as 4.041 with all its bugs and
limitations. In version 4.042 there were some changes to Unicode handling
that turned out to be causing issues with existing implementations.
While it is possible to argue that the old behaviour was wrong and buggy,
lots of applications and scripts were depending on this behaviour so it
is NOT a good idea to change this.
There were lots of commits since 4.041, we'll add those back bit by bit
in a future release, excluding the ones which cause problems.
2017-??-?? Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.042_01)
* Use Devel::CheckLib 1.09 or newer, fixes
https://github.com/perl5-dbi/DBD-mysql/issues/109
* Improve CI testing on AppVeyor: caching, path to cpan, configure deps (pali)
* Specify bigint as test dependency.
2017-03-08 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.042)
* Full release to include development releases 4.041_2 and 4.041_1.
2017-02-28 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.041_2)
* Statement handle now also has mysql_sock attribute, just as database handle.
(by Pali)
* Fix type conversions for magic types. Issue reported by Dmitriy Yatsenko and
Giovanni Bechis, fix by Pali.
https://lists.amavis.org/pipermail/amavis-users/2016-December/004674.htmlhttps://github.com/perl5-dbi/DBD-mysql/issues/78
* Fix UTF8-encoding of table names, field names, warnings and error messages.
Reported by Tanabe Yoshinori, fix by Pali.
https://rt.cpan.org/Public/Bug/Display.html?id=120141
* Fix mysql_auto_reconnect when using mysql_server_prepare (pali). Reported by
Vladimir Marek.
https://github.com/perl5-dbi/DBD-mysql/pull/95
* Improve regex for removing database from dsn (pali)
https://rt.cpan.org/Public/Bug/Display.html?id=118837
* Locate MySQL libs using Devel::CheckLib (pali)
* Support async on Windows (pali)
* Fix test suite on range of older and newer MySQL and MariaDB versions
(https://github.com/perl5-dbi/DBD-mysql/pull/87)
* Fix compilation on MySQL 4.1 (pali)
* Do not leak dangling pointer to mysql result (pali)
* Fix logic when assigning to variable bind_comment_placeholders (pali)
* mysql_fd() still returned file descriptor after closing connection.
Reported by Larry Leszczynski, fixed by Pali Roh獺r.
(https://rt.cpan.org/Public/Bug/Display.html?id=110983)
* Fix parsing configure libs from mysql_config --libs output in Makefile.PL
Libraries in mysql_config --libs output can be specified by library name
with the -l prefix or by absolute path to library name without any prefix.
Parameters must start with a hyphen, so treat all options without leading
hyphen in mysql_config --libs output as libraries with full path.
Partially fixes bug https://rt.cpan.org/Public/Bug/Display.html?id=100898
Fix by Pali Roh獺r.
* Fix support for magic scalars (pali)
(https://github.com/perl5-dbi/DBD-mysql/pull/76)
2016-12-12 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.041_1)
* Unicode fixes: when using mysql_enable_utf8 or mysql_enable_utf8mb4,
previous versions of DBD::mysql did not properly encode input statements
to UTF-8 and retrieved columns were always UTF-8 decoded regardless of the
column charset.
Fix by Pali Roh獺r.
Reported and feedback on fix by Marc Lehmann
(https://rt.cpan.org/Public/Bug/Display.html?id=87428)
Also, the UTF-8 flag was not set for decoded data:
(https://rt.cpan.org/Public/Bug/Display.html?id=53130)
* Return INTs with ZEROFILL as strings. Reported by Knarf, fix by Pali Roh獺r.
(https://rt.cpan.org/Public/Bug/Display.html?id=118977)
=== Enhancements
Core::
* Explicitly reject duplicate data paths
Packaging::
* Set number of processes in systemd unit file
=== Bug fixes
Aggregations::
* Terms aggregation should remap global ordinal buckets when a
* sub-aggregator is used to sort the terms
Analysis::
* PatternAnalyzer should lowercase wildcard queries when `lowercase`
* is true.
Circuit Breakers::
* Checks the circuit breaker before allocating bytes for a new big
* array
Geo::
* Fix GeoPoint FieldStats ternary logic bug
* Fix GeoDistance Ordinal for BWC
Index APIs::
* Rollover max docs should only count primaries
Nested Docs::
* Fix the `max` score mode.
Network::
* Ensure pending transport handlers are invoked for all channel
* failures
Packaging::
* When stopping via systemd only kill the JVM, not its control group
Suggesters::
* Fix context suggester to read values from keyword type field
orm
[orm] [bug] Fixed issue with subquery eagerloading which continues on from the series of issues fixed in 2699, 3106, 3893 involving that the “subquery” contains the correct FROM clause when beginning from a joined inheritance subclass and then subquery eager loading onto a relationship from the base class, while the query also includes criteria against the subclass. The fix in the previous tickets did not accommodate for additional subqueryload operations loading more deeply from the first level, so the fix has been further generalized.
sql
[sql] [bug] Fixed AttributeError which would occur in WithinGroup construct during an iteration of the structure.
postgresql
[postgresql] [bug] Continuing with the fix that correctly handles Postgresql version string “10devel” released in 1.1.8, an additional regexp bump to handle version strings of the form “10beta1”. While Postgresql now offers better ways to get this information, we are sticking w/ the regexp at least through 1.1.x for the least amount of risk to compatibility w/ older or alternate Postgresql databases.
[postgresql] [bug] Fixed bug where using ARRAY with a string type that features a collation would fail to produce the correct syntax within CREATE TABLE.
mysql
[mysql] [bug] MySQL 5.7 has introduced permission limiting for the “SHOW VARIABLES” command; the MySQL dialect will now handle when SHOW returns no row, in particular for the initial fetch of SQL_MODE, and will emit a warning that user permissions should be modified to allow the row to be present.
mssql
[mssql] [bug] Fixed bug where SQL Server transaction isolation must be fetched from a different view when using Azure data warehouse, the query is now attempted against both views and then a NotImplemented is raised unconditionally if failure continues to provide the best resiliency against future arbitrary API changes in new SQL Server versions.
[mssql] [bug] Added a placeholder type mssql.XML to the SQL Server dialect, so that a reflected table which includes this type can be re-rendered as a CREATE TABLE. The type has no special round-trip behavior nor does it currently support additional qualifying arguments.
oracle
[oracle] [bug] Support for two-phase transactions has been removed entirely for cx_Oracle when version 6.0b1 or later of the DBAPI is in use. The two- phase feature historically has never been usable under cx_Oracle 5.x in any case, and cx_Oracle 6.x has removed the connection-level “twophase” flag upon which this feature relied.
== v0.21.0 [2017-06-12] Michael Granger <ged@FaerieMUD.org>
Enhancements:
- Move add_dll_directory to the Runtime namespace for newest versions
of RubyInstaller.
- Deprecate PGconn, PGresult, and PGError top-level constants; a warning
will be output the first time one of them is used. They will be
removed in the upcoming 1.0 release.
Documentation fixes:
- Update the docs for PG::Result#cmd_tuples
Features
- Add Duration type to cqlengine
- Community PR review: Raise error on primary key update only if its
value changed
- get_query_trace() contract is ambiguous
Bug Fixes
- Queries using speculative execution policy timeout prematurely
- Fix map where results are not consumed
- Driver fails to encode Duration's with large values
- UDT values are not updated correctly in CQLEngine
- UDT types are not validated in CQLEngine
- to_python is not implemented for types columns.Type and columns.Date
in CQLEngine
- Clients spin infinitely trying to connect to a host that is drained
- Resulset.get_query_trace returns empty trace sometimes
- Memory grows and doesn't get removed
- Fix RuntimeError caused by change dict size during iteration
- fix ExponentialReconnectionPolicy may throw OverflowError problem
- Avoid using nonexistent prepared statement in ResponseFuture
Other
- Update README
- Test python versions 3.5 and 3.6
- Docs Warning About Prepare "select *"
- Increase Coverage in CqlEngine Test Suite
- Example SSL connection code does not verify server certificates
=== Enhancements
Aggregations::
- Allow scripted metric agg to access `_score`
Core::
- Improve bootstrap checks error messages
Internal::
- Log JVM arguments on startup
Network::
- Disable the Netty recycler in the client
- Remove Netty logging hack
- Set available processors for Netty
Snapshot/Restore::
- Ensure every repository has an incompatible-snapshots blob
Stats::
- Show JVM arguments
=== Bug fixes
Aggregations::
- Fix ArrayIndexOutOfBoundsException when no ranges are specified in
the query
Allocation::
- Discard stale node responses from async shard fetching
Core::
- Fix cache expire after access
Index APIs::
- Fix legacy GeoPointField decoding in FieldStats
- Validates updated settings on closed indices
Internal::
- Remove `_UNRELEASED` from Version constants for released versions
- Avoid race when shutting down controller processes
- Fix NPE if field caps request has a field that exists not in all
indices
More Like This::
- Pass over _routing value with more_like_this items to be retrieved
Network::
- Notify onConnectionClosed rather than onNodeDisconnect to prune
transport handlers
- SniffNodesSampler should close connection after handling responses
Packaging::
- Handle parentheses in batch file path
Percolator::
- Fix range queries with date range based on current time in
percolator queries.
Plugin Repository HDFS::
- Fixing permission errors for `KERBEROS` security mode for HDFS
Repository
Plugins::
- X-Pack plugin download fails on Windows desktop [ISSUE]
- Fix plugin installation permissions
Reindex API::
- Reindex: don't duplicate _source parameter
- Add qa module that tests reindex-from-remote against pre-5.0
versions of Elasticsearch
Scroll::
- Fix single shard scroll within a cluster with nodes in version `>=
5.3` and `<= 5.3`
Search::
- Fix ExpandSearchPhase when response contains no hits
- Include all aliases including non-filtering in `_search_shards`
response
Settings::
- Allow resetting settings that use an IP validator
Snapshot/Restore::
- Removes completed snapshot from cluster state on master change
- Fix inefficient (worst case exponential) loading of snapshot
repository
=== Upgrades
Core::
- Upgrade to Lucene 6.5.1
Network::
- Upgrade to Netty 4.1.11.Final
- Upgrade Netty to 4.1.10.Final
mongo-c-driver 1.6.3
- mongoc_client_pool_t did not apply all TLS options to pooled connections
- SNI wasn't provided when allow_invalid_hostname is set
mongo-c-driver 1.6.2
- This release further improves HP-UX compatibility, especially when building
with CMake, adds missing Windows SSPI files to the distribution tarball, and
fixes distribution issues we introduced when porting the documentation from
Mallard to Sphinx.
mongo-c-driver 1.6.1
- Correct the rules to parse localThresholdMS option from the MongoDB URI.
- Prevent crash in mongoc_cursor_destroy if "query" or "filter" are invalid.
- Include a file, mongoc-cluster-sspi.c, that had been omitted from the
release archive.
- Fix logic bugs in mongoc_bulk_operation_t validation code.
mongo-c-driver 1.6.0
- Enterprise authentication on Windows now uses the native GSSAPI library;
Cyrus SASL is no longer required for enterprise auth on Windows.
- BSON documents are more thoroughly validated before insert or update.
- New function mongoc_uri_set_mechanism_properties to replace all the
authMechanismProperties on an existing URI.
- mongoc_uri_get_mechanism_properties asserts its inputs are not NULL.
- For consistency with other MongoDB drivers, mongoc_collection_save is
deprecated in favor of mongoc_collection_insert or mongoc_collection_update.
- The driver is now built and continuously tested with MinGW-W64 on Windows.
- Experimental support for HPUX.
- The correct operation ids are now passed to Command Monitoring callbacks.
- Fix a crash if the driver couldn't connect to the server to create an index.
- The documentation is ported from Mallard XML to ReStructured Text, the
HTML documentation is restyled, and numerous man page syntax errors fixed.
- Getter functions for options in mongoc_find_and_modify_opts_t:
* mongoc_find_and_modify_opts_get_bypass_document_validation
* mongoc_find_and_modify_opts_get_fields
* mongoc_find_and_modify_opts_get_flags
* mongoc_find_and_modify_opts_get_max_time_ms
* mongoc_find_and_modify_opts_get_sort
* mongoc_find_and_modify_opts_get_update
- All public functions now have the __cdecl calling convention on Windows.
mongo-c-driver 1.5.5
- This release fixes bugs parsing the localThresholdMS option from the MongoDB
URI, and a crash in mongoc_cursor_destroy if "query" or "filter" are
invalid.
mongo-c-driver 1.5.4
- This release fixes an error in cursor iteration when a readConcern is set.
v3.0.3
- Sandbox won't start correctly if autocommit=0 in my.cnf
- pt-online-schema-change should imply --no-drop-new-table
- Fixed pt-mext not working with not empty Rsa_public_key
- pt-stalk ps include memory usage outputs
- Recognize comments in ALTER
- pt-online-schema change eats data on adding a unique index. Added
--[no]use-insert-ignore
- Make DSNs params able to be repeatable
- Made OptionParser to accept repeatable DSNs
- Collect MySQL variables
- Add --skip-check-slave-lag to pt-table-checksum
- Added --skip-check-slave-lag to pt-osc
- Added support for slave status in pt-stalk
v3.0.2
- pt-mongodb tools add support for SSL connections
- pt-mongodb-summary Cannot get security settings when connected to a
mongod instance
- pt-mongodb-query-digest Change the default sort order to -count
(descending)
- pt-mysql-summary password doesn't support '&' and '#' symbols
- Update Makefile for mongodb tools
- Collect information about locks and transactions using P_S (Thanks
Agustin Gallego)
- pt-stalk top CPU usage is useless
- Fix pt-mongodb-query-digest query ID (Thanks Kamil Dziedzic)
- pt-online-schema-change makes duplicate rows in _t_new for UPDATE t
set pk=0 where pk=1
- Fixed PT tests
- pt-table-checksum ignores slave-user and slave-password
- pt-table-checksum fails if a database is dropped while the tool is
running
v3.0
- Improved fix (protocol parser fix): error when parsing tcpdump
capture with pt-query-digest
- pt-osc: Fails with duplicate key in table for self-referencing
(Thanks Amiel Marqeta)
- pt-summary exists with an error (Thanks Marcelo Altmann)
- pt-mongodb-summary
- pt-mongodb-query-digest
v2.2.20
- pt-slave-restart fails on MariaDB 10.0.13 (gtid_mode confusion)
- pt-show-grants fails against MariaDB10+
- pt-query-digest numbers in table or column names converted to
question marks (--preserve-embedded-numbers)
- pt-online-schema-change misses data. Fixed sort order for ENUM
fields
- pt-online-schema-change doesn't apply underscores to foreign keys
individually
- pt-upgrade fails with SELECT INTO
- pt-slave-restart --config does not recognize = as separator
- Added pause to NibbleIterator
- --data-dir parameter in order to create the table on a different
partition
- with pt-table-checksum automatically exclude checking schemas named
percona, percona_schema
- pt-online-schema-change Added --remove-data-dir feature
- Fixed several typos in the doc (Thanks Dario Minnucci)
- Add Transparent huge pages info to pt-summary
- Add Memory management library to pt-mysql-summary
Also some minor pkglint
Build 122 (2017-02-04)
Enhancements
Conditional execution of Workbench commands now support -isDBMS and -isNotDBMS
Added basic support for EXAsol
Added support for SSH tunneling per connection profile
When loading a SQL script it's now possible to automatically detect the encoding
It's now possible to filter the output of WbVarList
It's now possible to pin a result tab so that it doesn't get closed even if append mode is not enabled
WbExport, WbImport, WbCopy and WbConfirm now support conditional execution
WbTriggerSource now also supports writing the source to a file
For Postgres, dependencies between triggers and tables are no shown in the DbExplorer and DbTree
For Postgres, functions defined as "returns setof refcursor" are now processed correctly when using "select * from function()"
For Postgres, it's now possible to import values into array columns if the source data is formatted as a Postgres array literal (WbImport and WbCopy)
A new annotation (@WbCrossTab) is available to create simple crosstabs (aka "pivot") from query results.
Improved editing of Postgres' hstore result columns.
For SQL Server, the object dependencies now include named default constraints and custom data types
Bug fixes
For Oracle the DDL for tables using reference partitioning was not generated correctly
In batch mode when specifying a connection profile using -profile, the setting to ignore drop errors from the profile was ignored
The width of the DbTree was limited if the DbExplorer panel was also displayed
For HSQLDB, BIT columns were not displayed correctly.
For Oracle, the DEDUPLICATION option was not shown for LOB columns
Auto completion did not overwrite a partial table (or column) name if that part was a SQL keyword.
Activating the object list filter in the DbExplorer by using the toolbar button did not work reliably.
Passing connection properties using -connectionProperties to WbCreateProfile did not work
When using a profile specific macro file, opening a new window did not always work.
When using an Oracle 12.x JDBC driver, materialized views were always reported as missing with WbSchemaDiff
It was no longer possible to select "As Is" for the built-in SQL formatter
Several features in the DbExplorer did not work for Amazon Redshift
Feedback from connect scripts was not always shown in the message tab
Error messages were not shown for errors that occurred in connect scripts
For Postgres, the remarks for indexes were not retrieved correctly if indexes with the same name existed in different schemas
The formatter did not treat the := operator properly for MySQL
For Postgres, the source of a table was not shown when an old (unsupported) version of Postgres was used
For SQL Server (and other DBMS supporting schemas and catalogs) the list of schemas was not properly refreshed when the database was changed in the DbExplorer's dropdowns
For Oracle, value literals for RAW columns where not created correctly
For Oracle, -clobAsFile for WbExport was not working for XML columns
For Oracle, overloaded procedures inside packages where no longer displayed.
For SQL Server, the source of procedures, functions and triggers was not displayed correctly in the DbExplorer for databases other then the default database of the connection.
When using -configDir in console mode the connection profiles were still loaded from the default location.
For Postgres, when generating scripts for tables and sequences the owner column for a sequence was not correctly generated.
Build 121 (2016-07-31)
Bug fixes
Some DDL statements were not generated properly when changing tables or indexes in the DbExplorer
For Oracle, columns defined as TIMESTAMP WITH TIME ZONE or TIMESTAMP WITH LOCAL TIMEZONE where not displayed correctly
It was no longer possible to use a timestamp format without time for WbImport
When loading a new macro file, the macro menu was not updated.