-----------------------------------
1.991 2016-08-23 16:04:29CEST+0200 Europe/Paris
* release as a normal release after successful testing of the dev releases
1.990_02 2016-08-06 20:30:30CEST+0200 Europe/Paris
* move reconnection test in reconnect test file to avoid test issues
(skip_all but still run some tests)
1.990_01 2016-08-05 17:17:28CEST+0200 Europe/Paris
* fix issue #122: don't attempt to close an already closed or undefined socket
* fix issue #120 and #111: don't depend on locales for matching error messages
* fix issue #118: spelling mistake
* fix issue #116: forbid continuing using socket after a read timeout
* fix issue #115: Unexpected error condition 54/freebsd
Incorrect multi-keyword mode cipherstring parsing.
Fixes CVE-2015-3276.
Submitted upstream as ITS#8543, it apparently wasn't already(!)
http://www.openldap.org/its/index.cgi/Incoming?id=8543
Bump PKGREVISION for both openldap, openldap-server and openldap-client
(to be on the safe side...)
Security Notes
--------------
Incompatible Change: These changes were made to mysqld_safe:
* Unsafe use of rm and chown in mysqld_safe could result in privilege escalation. chown now can be used only when the target directory is /var/log. An incompatible change is that if the directory for the Unix socket file is missing, it is no longer created; instead, an error occurs. Due to these changes, /bin/bash is required to run mysqld_safe on Solaris. /bin/sh is still used on other Unix/Linux platforms.
* The --ledir option now is accepted only on the command line, not in option files.
* mysqld_safe ignores the current working directory.
Other related changes:
* Initialization scripts that invoke mysqld_safe pass --basedir explicitly.
* Initialization scripts create the error log file only if the base directory is /var/log or /var/lib.
* Unused systemd files for SLES were removed.
Bugs Fixed
Security Notes
--------------
Incompatible Change: These changes were made to mysqld_safe:
* Unsafe use of rm and chown in mysqld_safe could result in privilege escalation. chown now can be used only when the target directory is /var/log. An incompatible change is that if the directory for the Unix socket file is missing, it is no longer created; instead, an error occurs. Due to these changes, /bin/bash is required to run mysqld_safe on Solaris. /bin/sh is still used on other Unix/Linux platforms.
* The --ledir option now is accepted only on the command line, not in option files.
* mysqld_safe ignores the current working directory.
Other related changes:
* Initialization scripts that invoke mysqld_safe pass --basedir explicitly.
* Initialization scripts create the error log file only if the base directory is /var/log or /var/lib.
* Unused systemd files for SLES were removed.
* MySQL Server now includes a plugin library that enables administrators to introduce an increasing delay in server response to clients after a certain number of consecutive failed connection attempts. This capability provides a deterrent that slows down brute force attacks that attempt to access MySQL user accounts. For more information, see The Connection-Control Plugin.
* OpenSSL is ending support for version 1.0.1 in December 2016; see https://www.openssl.org/policies/releasestrat.html. Consequently, MySQL Commercial Server builds now use version 1.0.2 rather than version 1.0.1, and the linked OpenSSL library for the MySQL Commercial Server has been updated from version 1.0.1 to version 1.0.2j. For a description of issues fixed in this version, see https://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.
Functionality Added or Changed
------------------------------
* InnoDB: By default, InnoDB reads uncommitted data when calculating statistics. In the case of an uncommitted transaction that deletes rows from a table, InnoDB excludes records that are delete-marked when calculating row estimates and index statistics, which can lead to non-optimal execution plans for other transactions that are operating on the table concurrently using a transaction isolation level other than READ UNCOMMITTED. To avoid this scenario, a new configuration option, innodb_stats_include_delete_marked, can be enabled to ensure that InnoDB includes delete-marked records when calculating persistent optimizer statistics. (Bug 23333990)
* Unit testing now uses Google Mock 1.8. (Bug 24572381, Bug 82823)
Bugs Fixed
Compilation Notes
-----------------
For GCC versions higher than 4.4, -fno-expensive-optimizations was replaced with -ffp-contract=off, which has the effect of enabling more optimizations.
Security Notes
--------------
Incompatible Change: These changes were made to mysqld_safe:
* Unsafe use of rm and chown in mysqld_safe could result in privilege escalation. chown now can be used only when the target directory is /var/log. An incompatible change is that if the directory for the Unix socket file is missing, it is no longer created; instead, an error occurs. Due to these changes, /bin/bash is required to run mysqld_safe on Solaris. /bin/sh is still used on other Unix/Linux platforms.
* The --ledir option now is accepted only on the command line, not in option files.
* mysqld_safe ignores the current working directory.
Other related changes:
* Initialization scripts that invoke mysqld_safe pass --basedir explicitly.
* Initialization scripts create the error log file only if the base directory is /var/log or /var/lib.
* Unused systemd files for SLES were removed.
* MySQL Server now includes a plugin library that enables administrators to introduce an increasing delay in server response to clients after a certain number of consecutive failed connection attempts. This capability provides a deterrent that slows down brute force attacks that attempt to access MySQL user accounts. For more information, see The Connection-Control Plugin.
* OpenSSL is ending support for version 1.0.1 in December 2016; see https://www.openssl.org/policies/releasestrat.html. Consequently, MySQL Commercial Server builds now use version 1.0.2 rather than version 1.0.1, and the linked OpenSSL library for the MySQL Commercial Server has been updated from version 1.0.1 to version 1.0.2j. For a description of issues fixed in this version, see https://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.
This way they got added as dependencies to sqlite3.so, while
only the sqlite3 binary really needs libreadline.
However, even without the LDFLAGS, the sqlite3 binary correctly
links the library in for me (on NetBSD).
Addresses PR 50776.
Bump PKGREVISION.
Many of these definitely do not depend on readline.
So there must be a different underlying problem, and that
should be tracked down instead of papering over it.
shared-mime-info 1.8 (2016-12-05)
* Add Flatpak-related mime-types
* Add mime-type for a number of Thomson-related disk (and cassette) images
* Add many audio and video mime-type aliases as used in VLC
* Add mime-type for pdf.lz files
* Write the correct length for literal and glob lists to the cache
* Build fixes
- It is now possible to use a custom array cast function by changing
the type caster for the 'anyarray' type. For instance, by calling
set_typecast('anyarray', lambda v, c: v) you can have arrays returned
as strings instead of lists. Note that in the pg module, you can also
call set_array(False) in order to return arrays as strings.
- The namedtuple classes used for the rows of query results are now cached
and reused internally, since creating namedtuples classes in Python is a
somewhat expensive operation. By default the cache has a size of 1024
entries, but this can be changed with the set_row_factory_size() function.
In certain cases this change can notably improve the performance.
New features and bug fixes:
- MongoDB 3.4 Support
- New URI and read preference option, "maxStalenessSeconds"
- Set MongoDB client handshake data with mongoc_client_set_appname or
mongoc_client_pool_set_appname.
- writeConcern and readConcern enhancements.
- Collation allows users to specify language-specific rules for string
comparison when sorting documents.
- mongoc_collection_count_with_opts uses the collection's read
preference if none is passed in
- Improved TLS support
- Fixed LibreSSL (libssl) support
- Added LibreSSL (libtls) support
- Fixed Secure Channel build on VS 2010
- OpenSSL now supports SNI (all others already do)
- Additional features for Application Performance Monitoring
- New functions accept flexible options as a BSON document.
- mongoc_collection_find is now deprecated in favor of
mongoc_collection_find_with_opts.
- New helper function to include read concern in one of the above
function's options parameter: mongoc_read_concern_append.
- mongoc_client_command no longer applies the client's read preference
and read concern by default. Same change for mongoc_database_command
and mongoc_collection_command.
- mongoc_collection_count_with_opts now applies the collection's read
preference if no read preference is provided
- mongoc_collection_create_index and mongoc_collection_drop_index now
apply the collection's write concern.
- mongoc_collection_create_index_with_opts now applies the collection's
write concern if none is specified in "opts"
- connectTimeoutMS timer now begins after DNS resolution, and resets for
each interface attempted (e.g., if the driver first tries IPv6, then
IPv4).
- New error code MONGOC_ERROR_DUPLICATE_KEY.
- mongoc_collection_find no longer treats the "filter" key specially in
queries - querying for a document with a key named "filter" is the
same now as any other key.
- The server description parameter to the following functions is
"const":
- mongoc_server_description_host
- mongoc_server_description_id
- mongoc_server_description_ismaster
- mongoc_server_description_round_trip_time
- mongoc_server_description_type
- Exported symbols are no longer declared in seperate export files.
- mongoc no longer crashes when multi roundtrip bulk operation fails.
- Added support for the new readConcernLevel "linearizable".
- Clients now check for misformatted "readPreferenceTags" in URI.
- New CMake option ENABLE_TRACING allows debug output, which before had
only been available with "configure --enable-tracing".
- Bugfix: "PossiblePrimary"-type replicas could be selected for reads
- Bugfixes: The random number generator used to select servers is now
properly seeded, and secondary queries are now properly distributed
according to localThresholdMS, not just to the lowest-latency secondary.
The latency estimate is reset after a connection error.
- Fix crashes in mongoc_topology_invalidate_server and
mongoc_client_kill_cursor.
- mongoc_collection_insert, mongoc_collection_update,
mongoc_collection_remove consistently use domain MONGOC_ERROR_BSON,
code MONGOC_ERROR_BSON_INVALID if passed oversized BSON, and
MONGOC_ERROR_COLLECTION for other errors. mongoc_bulk_operation_execute
continues to use MONGOC_ERROR_COMMAND for all errors.
- If mongoc_client_pool_t fails to start its scanner thread in the
background, it logs and aborts instead of silently continuing, then
failing to connect.
- The driver now updates its view of the whole topology with information
from each new connection handshake.
- Improved error reporting when the driver fails to reach the server,
and correctly distinguish "connection error" and "connection timeout".
Deprecations:
- mongoc_collection_find is deprecated for
mongoc_collection_find_with_opts.
Removed configure flags:
- --enable-experimental has been removed. All previously experimental
features are now always on.
- The configure option "--enable-hardening" had had no effect. It is
removed in favor of system-wide compiler configuration.
Drop build patch incorporated upstream.
Upstream changes:
PostGIS 2.3.1 (2016/11/28)
* Bug fixes
PostGIS 2.3.0 (2016/09/26)
* Important / Breaking Changes
- #3466, Casting from box3d to geometry now returns a 3D
geometry (Julien Rouhaud of Dalibo)
- #3604, pgcommon/Makefile.in orders CFLAGS incorrectly leading to
wrong liblwgeom.h (Greg Troxel)
- #3396, ST_EstimatedExtent, throw WARNING instead of ERROR
(Regina Obe)
* New Features
- Add support for custom TOC in postgis_restore.pl
(Christoph Moench-Tegeder)
- Add support for negative indexing in ST_PointN and ST_SetPoint
(Rémi Cura)
- Add parameters for geography ST_Buffer (Thomas Bonfort)
- TopoGeom_addElement, TopoGeom_remElement (Sandro Santilli)
- populate_topology_layer (Sandro Santilli)
- #454, ST_WrapX and lwgeom_wrapx (Sandro Santilli)
- #1758, ST_Normalize (Sandro Santilli)
- #2236, shp2pgsql -d now emits "DROP TABLE IF EXISTS"
- #2259, ST_VoronoiPolygons and ST_VoronoiLines (Dan Baston)
- #2841 and #2996, ST_MinimumBoundingRadius and new ST_MinimumBoundingCircle
implementation using Welzl's algorithm (Dan Baston)
- #2991, Enable ST_Transform to use PROJ.4 text (Mike Toews)
- #3059, Allow passing per-dimension parameters in ST_Expand (Dan Baston)
- #3339, ST_GeneratePoints (Paul Ramsey)
- #3362, ST_ClusterDBSCAN (Dan Baston)
- #3364, ST_GeometricMedian (Dan Baston)
- #3391, Add table inheritance support in ST_EstimatedExtent
(Alessandro Pasotti)
- #3424, ST_MinimumClearance (Dan Baston)
- #3428, ST_Points (Dan Baston)
- #3465, ST_ClusterKMeans (Paul Ramsey)
- #3469, ST_MakeLine with MULTIPOINTs (Paul Norman)
- #3549, Support PgSQL 9.6 parallel query mode, as far as possible
(Paul Ramsey, Regina Obe)
- #3557, Geometry function costs based on query stats (Paul Norman)
- #3591, Add support for BRIN indexes. PostgreSQL 9.4+ required.
(Giuseppe Broccolo of 2nd Quadrant, Julien Rouhaud
and Ronan Dunklau of Dalibo)
- #3496, Make postgis non-relocateable for extension install,
schema qualify calls in functions (Regina Obe)
Should resolve once and for all for extensions #3494, #3486, #3076
- #3547, Update tiger geocoder to support TIGER 2016
and to support both http and ftp.
- #3613, Segmentize geography using equal length segments
(Hugo Mercier of Oslandia)
* Bug Fixes
* Performance Enhancements
- #75, Enhancement to PIP short circuit (Dan Baston)
- #3383, Avoid deserializing small geometries during index operations
(Dan Baston)
- #3400, Minor optimization of PIP routines (Dan Baston)
- Make adding a line to topology interruptible (Sandro Santilli)
5.0.2
=====
Allocation::
- Allow master to assign primary shard to node that has shard store
locked during shard state fetching
Cluster::
- Remove cluster update task when task times out
Core::
- Install a security manager on startup
- Add a StreamInput#readArraySize method that ensures sane array sizes
- Use a buffer to do character to byte conversion in
StreamOutput#writeString
Engine::
- Die with dignity on the Lucene layer
- Fix `InternalEngine#isThrottled` to not always return `false`.
Exceptions::
- Add BWC layer for Exceptions
Engine::
- Die with dignity on the Lucene layer
- Fix `InternalEngine#isThrottled` to not always return `false`.
Index Templates::
- Fix integer overflows when dealing with templates.
Ingest::
- fix trace_match behavior for when there is only one grok pattern
Internal::
- Rethrow ExecutionException from the loader to concurrent callers of
Cache#computeIfAbsent
- Fixes potential NullPointerException on shard closing
Java API::
- Transport client: Fix remove address to actually work
- Add a HostFailureListener to notify client code if a node got
disconnected
Logging::
- Do not prematurely shutdown Log4j
- Truncate log messages from the end
Network::
- Die with dignity on the network layer
Plugin Lang Painless::
- Fix a VerifyError bug in Painless
- Fix Lambdas in Painless to be Able to Use Top-Level Variables Such as
params and doc
Scripting::
- Wrap VerifyError in ScriptException
Search::
- Respect default search timeout
Settings::
- Don't reset non-dynamic settings unless explicitly requested
Snapshot/Restore::
- Abort snapshots on a node that leaves the cluster
Tribe Node::
- Add socket permissions for tribe nodes
5.0.1
=====
Aggregations::
- Rescorer should be applied in the TopHits aggregation
- Rewrite Queries/Filter in FilterAggregationBuilder and ensure client
usage marks query as non-cachable
- Thread safety for scripted significance heuristics
- `ip_range` aggregation should accept null bounds.
CAT API::
- Consume `full_id` request parameter early
CRUD::
- Deprecate VersionType.FORCE
Cache::
- Fix the request cache keys to not hold references to the
SearchContext.
Circuit Breakers::
- ClusterState publishing shouldn't trigger circuit breakers
Core::
- Fix ShardInfo#toString
- Protect BytesStreamOutput against overflows of the current number of
written bytes.
- Return target index name even if _rollover conditions are not met
- Upgrade to Lucene 6.2.1
Dates::
- Update Joda Time to version 2.9.5
Engine::
- Retrying replication requests on replica doesn't call `onRetry`
Index APIs::
- Validate the `_rollover` target index name early to also fail if
dry_run=true
Ingest::
- Stored scripts and ingest node configurations should be included into
a snapshot
Internal::
- Restore thread's original context before returning to the ThreadPool
- ShardActiveResponseHandler shouldn't hold to an entire cluster state
Java API::
- Fix InternalSearchHit#hasSource to return the proper boolean value
- Null checked for source when calling sourceRef
- ClusterAdminClient.prepareDeletePipeline method should accept pipeline
id to delete
Java REST Client::
- Rest client: don't reuse the same HttpAsyncResponseConsumer across
multiple retries
Logging::
- Assert status logger does not warn on Log4j usage
- Fix logger names for Netty
Network::
- Fix handler name on message not fully read
Packaging::
- Set vm.max_map_count on systemd package install
- Export ES_JVM_OPTIONS for SysV init
- Debian: configure start-stop-daemon to not go into background
- Generate POM files with non-wildcard excludes
Query DSL::
- Max score should be updated when a rescorer is used
Packaging::
- Add empty plugins dir for archive distributions
- Make explicit missing settings for Windows service
- Change permissions on config files
REST::
- The routing query string param is supported by mget but was missing
from the rest spec
- fix thread_pool_patterns path variable definition
- ensure the XContentBuilder is always closed in RestBuilderListener
Reindex API::
- Bump reindex-from-remote's buffer to 200mb
- Fix reindex-from-remote for parent/child from <2.0
Search::
- Fixes cachability problems with fetching TTL values when searching
- Optimize query with types filter in the URL (t/t/_search)
- Remove LateParsingQuery to prevent timestamp access after context is
frozen
Snapshot/Restore::
- Ensures cleanup of temporary index-* generational blobs during
snapshotting
- Fixes get snapshot duplicates when asking for _all
new packages. Most of which are the remaining modules of the Tryton
platform which weren't packaged. The others are dependencies of the new
modules. This was tested on FreeBSD and is based in large part on Richard
Palo's (richard@) work. This is the most recent release of the Tryton
platform, version 4.2. There's a very large list of changes from the 3.8
series we have in pkgsrc. If you're interested, those functional changes
can be found here:
http://www.tryton.org/posts/new-tryton-release-42.htmlhttp://www.tryton.org/posts/new-tryton-release-40.html
Solves:
/usr/libexec/binutils225/elf/ld.gold: error: cannot find -lreadline
The missing specification is obvious on DragonFly because there's
no publically accessible version of readline in base.
* Multiple bug fixes to the row value logic that was introduced in version 3.15.0.
* Fix a NULL pointer dereference in ATTACH/DETACH following a maliciously constructed syntax error.
* Fix a crash that can occur following an out-of-memory condition in the built-in instr() function.
* In the JSON extension, fix the JSON validator so that it correctly rejects invalid backslash escapes within strings.
2016-11-28 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.041)
* Fix use-after-free for repeated fetchrow_arrayref calls when
mysql_server_prepare=1
Function dbd_st_fetch() via Renew() can reallocate output buffer for
mysql_stmt_fetch() call. But it does not update pointer to that buffer in
imp_sth->stmt structure initialized by mysql_stmt_bind_result() function.
That leads to use-after-free in any mysql function which access
imp_sth->stmt structure (e.g. mysql_stmt_fetch()).
This patch fix this problem and properly updates pointer in imp_sth->stmt
structure after Renew() call.
This is a medium level security issue to which the Debian security team
assigned identifier CVE-2016-1251. Discovered and fixed by Pali Rohár.
* auto_reconnect now also matches CR_SERVER_LOST, previously this only
matched CR_SERVER_GONE.
Fixes http://bugs.mysql.com/bug.php?id=27613
Fix suggested by Wouter de Jong.
* Fix compilation fixes (Pali Rohár).
3.6.0
Notable new features
- Improve the behavior of fail-over.
- New PGPOOL SET command has been introduced.
- Watchdog is significantly enhanced.
- Handling of extended query protocol (e.g. used by Java applications)
in streaming replication mode speeds up if many rows are returned
in a result set.
- Import parser of PostgreSQL 9.6.
- In some cases pg_terminate_backend() now does not trigger a fail-over.
- Change documentation format from raw HTML to SGML.
3.5.4
Bug fixes
- Fix buffer over run problem in "show pool_nodes".
- Fix usage of wait(2) in pgpool main process.
- Save and restore errno in each signal handler.
- Fix handling of pcp_listen_addresses config parameter.
- Fix "kind mismatch" error message in pgpool.
- Replace "MAJOR" macro to prevent occasional failure.
- Fixing a coding mistake in watchdog code.
- doc : Fixing a typo in english doc
- Fix for bun 215 that pgpool doesn't escalate ip in case of another node
inavailability.
- Fix for bug of inconsistent status of Postgresql nodes in Pgpool instances
after restart.
- SIGUSR1 signal handler should be installed before watchdog initialization.
- Fix for bug 228 that pgpool doesn't de-escalate IP in case network
restored.
- Fix hang when portal suspend received.
- test : Add regression test for bug 230.
- Fixing a typo in the log message.
- Fixing the error messages when the socket operation fails.
- Tighten up health check timer expired condition in pool_check_fd().
- doc : Add comment to the document about connection_cache.
- Fix Handling of pcp_socket_dir was missing from pool_get_config().
- doc : Fix Japanese document typo.
- Fix "out of memory" by using "pg_md5 -m".
- Fix for 237 that Pgpool-II fails to start if listen_addresses is empty
string.
3.5.3
New features
- Allow to access to pgpool while doing health checking
Bug fixes
- Fix is_set_transaction_serializable() when
SET default_transaction_isolation TO 'serializable'.
- Fix Chinese documetation bug about raw mode
- Fix confusing comments in pgpool.conf
- Fix extended protocol handling in raw mode
- Permit pgpool to support multiple SSL cipher protocols
- If statement timeout is enabled on backend and do_query() sends a
query to primary node, and all of following user queries are sent to
standby, it is possible that the next command, for example END, could
cause a statement timeout error on the primary, and a kind mismatch
error on pgpool-II is raised.
- Deal with the case when the primary is not node 0 in streaming replication
mode.
- Fix a posible hang during health checking
- change the Makefile under this directory src/sql/,that is proposed by
- fix for 0000197: pgpool hangs connections to database..
- Fix bug with load balance node id info on shmem
- Fixing coverity scan reported issues.
3.5.2
Bugfixes
- Fix for segfault during trusted_servers check
- Removing the limit on the maximum number of items in the
black_function_list and white_function_list lists
- Fix check "PCP Directory" in "Parameter Setting" in install
- Fix extended protocol hang with empty query
- Redirect all user queries to primary server
- Change the PID length of pcp_proc_count command result to 6 characters
long
3.5.1
Bugfixes
- Add some warning messages for wd_authkey hash calculation failure
- test: Fix regression test to check timeout of each test
- test: Allow timeout value to be specified by the command option
- Fix compile issue on FreeBSD
- test: Fix test/regression/clean.sh to remove binary files of
010.rewrite_timestamp test
- Fix memorry leak reported by Coverity (CID 1350095)
- Fixing pgpool-recovery module compilation issue with PostgreSQL 9.6
- Fix to properly process an empty query that has only comments
- Fix a reset query stuck problem
- Fix a reset query stuck problem
- Fix query stuck problems in streaming replication mode with extended
protocol queries
- Fix pgpool hung after receiving error state from backend
- Fix bug that child processes exit and are not re-spawned
- Fix typo in configure
- doc: Change description of backend_flag
- doc: Fix installation procedure.
- test: Fix pgpool_setup to not confuse log output
- Fix to validate the PCP packet length
Upstream changes:
2016-11-19 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.040)
* Since 4.038 we had problems compiling on big-endian architectures, such
as MIPS, s390 and Sparc. Thanks to Salvatore Bonaccorso @ Debian project
(https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=844538)
and Vladimir Marek (https://rt.cpan.org/Public/Bug/Display.html?id=118835)
for reporting the issues. Fix by Pali Roh獺r.
Fix integer types when server side prepare statements are enabled
Fixed problems:
* SQL_BIGINT was incorrectly handled as 32bit MYSQL_TYPE_LONG type instead
64bit MYSQL_TYPE_LONGLONG which led to integer overflow/underflow
* 32bit MYSQL_TYPE_LONG was used for perl's IV storage when IV was 64bit
and 64bit MYSQL_TYPE_LONGLONG was used when IV was 32bit
* All unsigned types were handled as signed, so all high positive values
were treated as negative
* Numeric conversions in perl which led to overflow/underflow was ignored
even when mysql strict mode was enabled
* Test t/41int_min_max.t was running only for normal non-prepared statements
* Test t/40server_prepare.t used incorrect SQL type for big (64bit) integers
2016-11-15 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.039)
* Fix for security issue Out-of-bounds read by DBD::mysql CVE-2016-1249 (pali)
2016-10-30 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.038_01)
* Fix compilation of embedded server (pali)
(https://github.com/perl5-dbi/DBD-mysql/pull/68)
* Fix compilation against libmariadbclient. First version by
H.Merijn Brand, improved by Bernt Johnsen @ Oracle.
* For efficiency use newSVpvn() instead newSVpv() where possible (pali)
* Correctly coerce fetched scalar values when mysql_server_prepare is
not used (pali)
* Add support for fetching columns of BIT type with
mysql_server_prepare = 1 (pali)
Fixes https://rt.cpan.org/Public/Bug/Display.html?id=88006
* Use correct format in printf instead of casting variable types (pali)
* Include errno.h for MYSQL_ASYNC because it uses errno variable (pali)
* Travis: also test on perl 5.22 and 5.24.
- The build system embeds the Erlang VM into the package, which means that
the PLIST may differ across build systems. Hence why we use a semi-dynamic
PLIST here.
- That also means that lang/erlang is now a build dependency only.
- Include a couch-epmd service for the Erlang Port Mapper Daemon using the
embedded binary.
- Basic RCD script added.
Upstream changes since 1.6.x:
- Native clustering is now supported. Rather than use CouchDB replication
between multiple, distinct CouchDB servers, configure a cluster of CouchDB
nodes.
- Futon replaced by brand-new, completely re-engineered Fauxton interface.
URL remains the same.
- The new Mango Query Server provides a simple JSON-based way to perform
CouchDB queries without JavaScript or MapReduce.
- Mango selectors can be used in _changes feeds instead of JavaScript
MapReduce filters. Mango has been tested to be up to an order of magnitude
(10x) faster than JavaScript in this application.
- Rewrite rules for URLs can be performed using JavaScript functions.
- Multiple queries can be made of a view with a single HTTP request.
- Views can be queried with sorting turned off ( sorted=false) for a
performance boost.
- The global changes feed has been enhanced. It is now resumable and
persistent.
- New endpoints added (documentation forthcoming):
- /_membership shows all nodes in a cluster
- /_bulk_get speeds up the replication protocol over low-latency connections
- /_node/ api to access individual nodes' configuration and compaction
features
- /_cluster_setup api to set up a cluster from scratch.
- /_up api to signal health of a node to a load-balancer
- /db/_local_docs and /db/_design_docs (similar to /db/_all_docs)
- "Backend" interface on port 5986 used for specific cluster admin tasks. Of
interest are the _nodes and _dbs databases visible only through this
interface.
- Support added for Erlang/OTP 17.x, 18.x and 19
- New streamlined build system written for Unix-like systems and Microsoft
Windows
Upgrade Notes
- The update sequences returned by the /db/_changes feed are no longer
integers. They can be any JSON value. Applications should treat them as
opaque values and return them to CouchDB as-is.
- Temporary views are no longer supported.
- It is possible to have multiple replicator databases. replicator/db config
option has been removed. Instead _replicator and any database names ending
with the /_replicator suffix will be recognized as replicator databases by
the system.
- Note that the semantics of some API calls have changed due to the
introduction of the clustering feature. Specifically, make note of the
difference between receiving a 201 and a 202 when storing a document.
- all_or_nothing is no longer supported by the bulk_docs API
See full release notes:
http://docs.couchdb.org/en/latest/whatsnew/2.0.html
1.52 2016-11-15
- Switched to a production version.
1.51_07 2016-10-16
- Downgraded SQLite to 3.13.0 (RT#118395)
1.51_06 2016-10-15
- Updated SQLite to 3.15.0
1.51_05 2016-06-23
- Updated SQLite to 3.13.0
- Resolved#115465: column_info doesn't parse sizes with spaces
(ilmari++)
- Added two missing function declarations (rurban++)
1.51_04 2016-03-07
- Updated SQLite to 3.11.1, which fixed an FTS5 index
corruption issue
1.51_03 2016-02-20
- No code change
- Resolved#112220: t/62_regexp_multibyte_char_class.t fails
for perl >= 5.22.0 and non-utf8 locale (SREZIC++)
1.51_02 2016-02-20
- No code change; fixed a newly added test that only passed
under recent perls (>= 5.18)
1.51_01 2016-02-20
*** CHANGES THAT MAY POSSIBLY BREAK YOUR OLD APPLICATIONS ***
- Updated to SQLite 3.11.0.
As upstream disabled two-arg fts3_tokenizer() for security concern,
DBD::SQLite also stopped enabling it by default. If you do need
perl tokenizer, compile/install with SQLITE_ENABLE_FTS3_TOKENIZER
environmental variable.
- Applied a doc patch by Salvatore Bonaccorso
- Enabled (experimental) FTS5
- Fixed REGEXP function to work under sqlite_unicode correctly
(András Farkas++)
Upstream changes:
0.07046 2016-09-05
- Introspect view definitions for PostgreSQL, MySQL, Oracle,
Firebird, and InterBase.
- When a file's md5sum was wrong but no other content in the file had
changed, it would not be rewritten even when overwrite_modifications
was true. Fixed by Dave Rolsky. GH #8.
Upstream changes:
2.033002 2016-10-31 16:03:23-07:00 America/Los_Angeles
- Fix ::ProxyResultSetMethod to work when calling ->update
(Thanks for the report Ryan Voots!)
- Fix a number of warnings induced by upcoming DBIC (Thanks ribasushi!)
* Now requires JDK 8.0.
* Use a different installation layout as some location are now impossible to
change without patching the Java sources.
=== Breaking changes in 5.0 ===
Migration Plugin
- The elasticsearch-migration plugin (compatible with Elasticsearch 2.3.0
and above) will help you to find issues that need to be addressed when
upgrading to Elasticsearch 5.0.
Indices created before 5.0
- Elasticsearch 5.0 can read indices created in version 2.0 or above. An
Elasticsearch 5.0 node will not start in the presence of indices created
in a version of Elasticsearch before 2.0.
- Indices created in Elasticsearch 1.x or before will need to be reindexed
with Elasticsearch 2.x in order to be readable by Elasticsearch 5.x. It is
not sufficient to use the upgrade API.
=== Breaking changes
Aggregations::
- Remove size 0 options in aggregations
Aliases::
- make get alias expand to open and closed indices by default
- Remove deprecated indices.get_aliases
Allocation::
- Remove DisableAllocationDecider
Analysis::
- Remove `token_filter` in _analyze API
- Removes support for adding aliases to analyzers
- Analyze API : Rename filters/token_filters/char_filter in Analyze API in
master
CAT API::
- Improve cat thread pool API
- Row-centric output for _cat/fielddata
- Add raw recovery progress to cat recovery API
- Remove host from cat nodes API
- Using the accept header in the request instead of content-type in _cat
API.
CRUD::
- Fixed naming inconsistency for fields/stored_fields in the APIs
- Disallow creating indices starting with '-' or '+'
- Wait for changes to be visible by search
- Remove object notation for core types.
Cache::
- Remove deprecated query cache settings
Cluster::
- Persistent Node Ids
- Remove validation errors from cluster health response
- Remove memory section
Core::
- Remove ignore system bootstrap checks
- Remove minimum master nodes bootstrap check
- Keep input time unit when parsing TimeValues
- Remove cluster name from data path
- Add max number of processes check
- Add mlockall bootstrap check
- One log
Engine::
- Optimize indexing for the autogenerated ID append-only case
- Remove `index.compound_on_flush` setting and default to `true`
Exceptions::
- Die with dignity
Fielddata::
- Remove "uninverted" and "binary" fielddata support for numeric and boolean
fields.
Geo::
- Deprecate GeoDistance enums and remove geo distance script helpers
Index APIs::
- Removes write consistency level across replication action APIs in favor of
wait_for_active_shards
- Remove `GET` option for /_forcemerge
- Remove /_optimize REST API endpoint
Indexed Scripts/Templates::
- Store indexed scripts in the cluster state instead of the `.scripts` index
Inner Hits::
- Also do not serialize `_index` key in search response for parent/child
inner hits
- Don't include `_id`, `_type` and `_index` keys in search response for
inner hits
- Nested inner hits shouldn't use relative paths
- Drop top level inner hits in favour of inner hits defined in the query dsl
Internal::
- `_flush` should block by default
- Actually bound the generic thread pool
- Remove support for pre 2.0 indices
Logging::
- Introduce Log4j 2
Mapping::
- Remove `_timestamp` and `_ttl` on 5.x indices.
- Add a soft limit on the mapping depth.
- Disable fielddata on text fields by defaults.
- Add limit to total number of fields in mapping
- Change the field mapping index time boost into a query time boost.
- Deprecate string in favor of text/keyword.
- Term vector APIs should no longer update mappings
- Remove the `format` option of the `_source` field.
- Remove transform
Packaging::
- Rename service.bat to elasticsearch-service.bat
- Remove -D handling in args for windows plugin script
- Set default min heap equal to default max heap
- Remove allow running as root
- Require /bin/bash in packaging
- Remove plugin script parsing of system properties
- Add JVM options configuration file
Parent/Child::
- Removed `total` score mode in favour for `sum` score mode.
- Removed pre 2.x parent child implementation
Percolator::
- Remove `.percolator` type in favour of `percolator` field type
- Change the percolate api to not dynamically add fields to mapping
Plugin Delete By Query::
- Remove Delete-By-Query plugin
Plugin Lang Painless::
- Remove all date 'now' methods from Painless
- Make Painless the Default Language
Plugins::
- Plugins cleanup
- Rename bin/plugin in bin/elasticsearch-plugin
- Change the inner structure of the plugins zip
- Remove multicast plugin
- Plugins: Remove site plugins
Query DSL::
- Lessen leniency of the query dsl.
- Function score query: remove deprecated support for boost_factor
- Remove support for deprecated queries.
REST::
- Change separator for shards preference
- Parameter improvements to Cluster Health API wait for shards
- Switch indices.exists_type from `{index}/{type}` to
`{index}/_mapping/{type}`.
- Only use `PUT` for index creation, not POST.
- Remove camelCase support
- Remove 'case' parameter from rest apis
- Disallow unquoted field names
- Limit the accepted length of the _id
Scripting::
- Hardcode painless as the default scripting lang and add legacy script
default for stored scripts
- Remove deprecated 1.x script and template syntax
- Allow only a single extension for a scripting engine
- Remove 'sandbox' option for script settings, allow only registering a
single language.
Search::
- Rename `fields` to `stored_fields` and add `docvalue_fields`
- Remove only node preference
- Add search preference to prefer multiple nodes
- Add a soft limit on the number of shards that can be queried in a single
search request.
- Remove deprecated reverse option from sorting
- Remove some deprecations
- Remove search exists api
- Remove the scan and count search types.
Search Refactoring::
- Remove deprecated parameter from field sort builder.
- Remove "query" query and fix related parsing bugs
Settings::
- Default max local storage nodes to one
- Persistent Node Names
- Remove support for properties
- Rename boostrap.mlockall to bootstrap.memory_lock
- Register `indices.query.bool.max_clause_count` setting
- Remove settings and system properties entanglement
- Remove `action.get.realtime` setting
- Remove ability to specify arbitrary node attributes with `node.` prefix
- Enforce `discovery.zen.minimum_master_nodes` is set when bound to a public
ip
- Prevent index level setting from being configured on a node level
- Remove support for node.client setting
- Remove es.max-open-files flag
- Enforce node level limits if node is started in production env
- Make settings validation strict
- Remove the ability to fsync on every operation and only schedule fsync
task if really needed
- Script settings
- Remove index.flush_on_close entirely
- Restore chunksize of 512kb on recovery and remove configurability
- Remove ancient deprecated and alternative recovery settings
Similarities::
- Renames `default` similarity into `classic`
Snapshot/Restore::
- Change the default of `include_global_state` from true to false for
snapshot restores
- Fail closing or deleting indices during a full snapshot
Stats::
- Modify load average format
- Reintroduce five-minute and fifteen-minute load averages on Linux
- Add system CPU percent to OS stats
Term Vectors::
- Remove DFS support from TermVector API
Translog::
- Drop support for simple translog and hard-wire buffer to 8kb
- Simplify translog-based flush settings
Warmers::
- Remove query warmers and the warmer API.
=== Breaking Java changes
Aggregations::
- getKeyAsString and key_as_string should be the same for terms aggregation
on boolean field
Allocation::
- Move parsing of allocation commands into REST and remove support for
plugins to register allocation commands
- Simplify shard balancer interface
Analysis::
- Simplify Analysis registration and configuration
CRUD::
- Removing isCreated and isFound from the Java API
Cache::
- Refactor IndicesRequestCache to make it testable.
- Fold IndexCacheModule into IndexModule
Core::
- Remove ability to plug-in TransportService
- Register thread pool settings
- Bootstrap does not set system properties
- Remove es.useLinkedTransferQueue
Discovery::
- Introduce node handshake
- Include pings from client nodes in master election
Highlighting::
- Register Highlighter instances instead of classes
Internal::
- Remove TransportService#registerRequestHandler leniency
- Consolidate search parser registries
- Move all FetchSubPhases to o.e.search.fetch.subphase
- Squash the rest of o.e.rest.action
- Clean up BytesReference
- Cleanup ClusterService dependencies and detached from Guice
- Simplify SubFetchPhase interface
- Simplify FetchSubPhase registration and detach it from Guice
- Remove duplicate getters from DiscoveryNode and DiscoveryNodes
- Cli: Switch to jopt-simple
- Replace ContextAndHeaders with a ThreadPool based ThreadLocal
implementation
- Remove NodeBuilder
- Fix IndexSearcherWrapper interface to not depend on the EngineConfig
- Cleanup query parsing and remove IndexQueryParserService
- Remove circular dependency between IndicesService and IndicesStore
- Remove guice injection from IndexStore and friends
- Replace IndicesLifecycle with a per-index IndexEventListener
- Simplify similarity module and friends
- Refactor SearchRequest to be parsed on the coordinating node
Java API::
- Add a dedicated client/transport project for transport-client
- Remove setRefresh
- Remove the count api
- IdsQueryBuilder to accept only non null ids and types
Mapping::
- [Mapping] Several MappingService cleanups
Network::
- Factor out abstract TCPTransport* classes to reduce the netty footprint
- Remove ability to disable Netty gathering writes
Parent/Child::
- Cleanup ParentFieldMapper
- Several other parent/child cleanups
Percolator::
- Move the percolator from core to its own module
- Remove percolator cache
Plugins::
- Cleanup sub fetch phase extension point
- Remove IndexTemplateFilter
- Switch custom ShardsAllocators to pull based model
- Make custom allocation deciders use pull based extensions
- Migrate query registration from push to pull
- Add components getter as bridge between guice and new plugin init world
- Remove CustomNodeAttributes extension point
- Add RepositoryPlugin interface for registering snapshot repositories
- Simplified repository api for snapshot/restore
- Switch most search extensions from push to pull
- Move RestHandler registration to ActionModule and ActionPlugin
- Pull actions from plugins
- Switch analysis from push to pull
- Remove guice from Mapper plugins
- Fail to start if plugin tries broken onModule
- Simplify ScriptModule and script registration
- Cut over settings registration to a pull model
- Enforce isolated mode for all plugins
- Don't use guice for QueryParsers
- Remove guice from the index level
- Remove shard-level injector
Query DSL::
- Remove the MissingQueryBuilder which was deprecated in 2.2.0.
- Remove NotQueryBuilder
Scripting::
- Remove o.e.script.Template class and move template query to lang-mustache
module
- Move search template to lang-mustache module
- Remove LeafSearchScript.runAsFloat(): Nothing calls it.
Search::
- Remove FetchSubPhaseParseElement
- Refactor of query profile classes to make way for other profile
implementations
- Query refactoring: split parse phase into fromXContent and toQuery for all
queries
Search Refactoring::
- Refactored inner hits parsing and intoduced InnerHitBuilder
- Remove support for query_binary and filter_binary
- Validate query api: move query parsing to the coordinating node
Settings::
- Remove `node.mode` and `node.local` settings
- Remove Settings.settingsBuilder.
- Move remaining settings in NettyHttpServerTransport to the new infra
- Replace IndexSettings annotation with a full-fledged class
- Fix ping timeout settings inconsistencies
Snapshot/Restore::
- Removes extra writeBlob method in BlobContainer
Store::
- Standardize state format type for global and index level metadata
Suggesters::
- Remove suggest threadpool
- Remove suggest transport action
=== Deprecations
CRUD::
- Deprecate found and created in delete and index rest responses
Plugin Discovery Azure Classic::
- Deprecate discovery-azure and rename it to discovery-azure-classic
Plugin Mapper Attachment::
- Deprecate mapper-attachments plugin
Query DSL::
- Deprecate Indices query
- Deprecate mlt, in and geo_bbox query name shortcuts
Query Refactoring::
- Splits `phrase` and `phrase_prefix` in match query into
`MatchPhraseQueryBuilder` and `MatchPhrasePrefixQueryBuilder`
Scripting::
- Deprecate Groovy, Python, and Javascript
Search::
- Deprecate fuzzy query
Templates::
- Deprecate template query
=== New features
Aggregations::
- Split regular histograms from date histograms.
- Adds aggregation profiling to the profile API
- New Matrix Stats Aggregation module
Aliases::
- Add an alias action to delete an index
Allocation::
- Add API to explain why a shard is or isn't assigned
Analysis::
- Exposing lucene 6.x minhash filter.
- Add `fingerprint` token filter and `fingerprint` analyzer
Circuit Breakers::
- Circuit break on aggregation bucket numbers with request breaker
Discovery::
- Add two phased commit to Cluster State publishing
Geo::
- Cut over geo_point field and queries to new LatLonPoint type
Index APIs::
- Add rollover API to switch index aliases given some predicates
Ingest::
- ingest-useragent plugin
- Add a Sort ingest processor
- Add date_index_name processor
- Merge feature/ingest branch into master branch
Java REST Client::
- Introduce async performRequest method
- Low level Rest Client
Mapping::
- Add `scaled_float`.
- Expose half-floats.
- Add a text field.
- Add a new `keyword` field.
Percolator::
- index the query terms from the percolator query
Plugin Analysis ICU::
- Adding support for customizing the rule file in ICU tokenizer
Plugin Discovery File::
- File-based discovery plugin
Plugin Ingest Attachment::
- Ingest: Add attachment processor
Plugin Mapper Attachment::
- Migrate mapper attachments plugin to main repository
Plugin Repository HDFS::
- HDFS Snapshot/Restore plugin
Plugin Repository S3::
- Add support for path_style_access
Query DSL::
- Adds a rewrite phase to queries on the shard level
Reindex API::
- Reindex from remote
- Port Delete By Query to Reindex infrastructure
- Merge reindex to master
Scripting::
- Exceptions and Infinite Loop Checking
- Added a new scripting language (PlanA)
Scroll::
- Add the ability to partition a scroll in multiple slices.
Search::
- Add the ability to disable the retrieval of the stored fields entirely
- Add `search_after` parameter in the SearchAPI
Settings::
- Add infrastructure to transactionally apply and reset dynamic settings
Snapshot/Restore::
- Add Google Cloud Storage repository plugin
Stats::
- Extend field stats to report searchable/aggregatable fields
- API for listing index file sizes
Store::
- Expose MMapDirectory.preLoad().
- Add primitive to shrink an index into a single shard
Suggesters::
- Add support for returning documents with completion suggester
- Add document-oriented completion suggester
Task Manager::
- Add task cancellation mechanism
- Make the Task object available to the action caller
- Task Management: Add framework for registering and communicating with
tasks
Translog::
- Add `elasticsearch-translog` CLI tool with `truncate` command
=== Enhancements
Aggregations::
- Make the heuristic to compute the default shard size less aggressive.
- Add _bucket_count option to buckets_path
- Remove AggregationStreams
- Migrate serial_diff aggregation to NamedWriteable
- Migrate most remaining pipeline aggregations to NamedWriteable
- Migrate moving_avg pipeline aggregation to NamedWriteable
- Migrate matrix_stats to NamedWriteable
- Migrate derivative pipeline aggregation to NamedWriteable
- Migrate top_hits, histogram, and ip_range aggregations to NamedWriteable
- Migrate nested, reverse_nested, and children aggregations to
NamedWriteable
- Migrate geohash_grid and geo_bounds aggregations to NamedWriteable
- Clean up significant terms aggregation results
- Migrate range, date_range, and geo_distance aggregations to NamedWriteable
- Migrate terms aggregation to NamedWriteable
- Migrate sampler and missing aggregations to NamedWriteable
- Migrate global, filter, and filters aggregation to NamedWriteable
- Migrate the cardinality, scripted_metric, and geo_centroid aggregations to
NamedWriteable
- Use a static default precision for the cardinality aggregation.
- Migrate more aggregations to NamedWriteable
- Migrate stats and extended stats to NamedWriteable
- Migrate sum, min, and max aggregations over to NamedWriteable
- Start migration away from aggregation streams
- Automatically set the collection mode to breadth_first in the terms
aggregation when the cardinality of the field is unknown or smaller than
the requested size.
- Rename PipelineAggregatorBuilder to PipelineAggregationBuilder.
- AggregatorBuilder and PipelineAggregatorBuilder do not need generics.
- Rename AggregatorBuilder to AggregationBuilder
- Add the ability to use the breadth_first mode with nested aggregations
(such as `top_hits`) which require access to score information.
- Make significant terms work on fields that are indexed with points.
- Add tests and documentation for using `time_zone` in date range
aggregation
- Fixes serialisation of Ranges
Allocation::
- Verify AllocationIDs in replication actions
- Mark shard as stale on non-replicated write, not on node shutdown
- Add routing changes API to RoutingAllocation
- Primary shard allocator observes limits in forcing allocation
- Use primary terms as authority to fail shards
- Add recovery source to ShardRouting
- Allow `_shrink` to N shards if source shards is a multiple of N
- Only filter intial recovery (post API) when shrinking an index
- Estimate shard size for shrinked indices
- Only fail relocation target shard if failing source shard is a primary
- Simplify delayed shard allocation
- Limit retries of failed allocations per index
- Immutable ShardRouting
- Add the shard's store status to the explain API
- Write shard state metadata as soon as shard is created / initializing
- Reuse existing allocation id for primary shard allocation
- Remove version in ShardRouting (now obsolete)
- Prefer nodes that previously held primary shard for primary shard
allocation
- Extend reroute with an option to force assign stale primary shard copies
- Allocate primary shards based on allocation IDs
- Persist currently started allocation IDs to index metadata
- Use ObjectParser to parse AllocationID
- Persist allocation ID with shard state metadata on nodes
Analysis::
- Stop using cached component in _analyze API
- Specify custom char_filters/tokenizer/token_filters in the analyze API
- Add a MultiTermAwareComponent marker interface to analysis factories.
- Add Flags Parameter for Char Filter
- Core: better error message when analyzer created without tokenizer or…
- Move AsciiFolding earlier in FingerprintAnalyzer filter chain
- Improve error message if resource files have illegal encoding
Benchmark::
- Add client-benchmark-noop-api-plugin to stress clients even more in
benchmarks
CAT API::
- Add health status parameter to cat indices API
- Includes the index UUID in the _cat/indices API
- Add node name to Cat Recovery
- Add support for documented byte/size units and for micros as a time unit
in _cat API
- Add _cat/tasks
- Cat health supports ts=0 option
- Expose http address in cat/nodes
- [cat/recovery] Make recovery time a TimeValue()
- :CAT API: remove space at the end of a line
CRUD::
- Renaming operation to result and reworking responses
- Adding _operation field to index, update, delete response.
- CRUD: Allow to get and set ttl as a time value/string
Cache::
- Enable option to use request cache for size > 0
- Cache FieldStats in the request cache
- Allow the query cache to be disabled.
- Enable the indices request cache by default
Circuit Breakers::
- Cluster Settings Updates should not trigger circuit breakers.
- Circuit break the number of inline scripts compiled per minute
Cluster::
- Add clusterUUID to RestMainAction output
- Batch process node left and node failure
- Index creation waits for write consistency shards
- Inline reroute with process of node join/master election
- Index creation does not cause the cluster health to go RED
- Cluster Health class improvements
- Adds tombstones to cluster state for index deletions
- Enable acked indexing
- Cluster Health should run on applied states, even if waitFor=0
- Resolve index names to Index instances early
- Remove DiscoveryNode#shouldConnectTo method
- Fail demoted primary shards and retry request
- Illegal shard failure requests
- Shard failure requests for non-existent shards
- Add handling of channel failures when starting a shard
- Wait for new master when failing shard
- Master should wait on cluster state publication when failing a shard
- Split cluster state update tasks into roles
- Add timeout mechanism for sending shard failures
- Add listener mechanism for failures to send shard failed
Core::
- Add production warning for pre-release builds
- Add serial collector bootstrap check
- Rename Netty TCP transports thread factories from http_* to transport_*
- Do not log full bootstrap checks exception
- Mark halting the virtual machine as privileged
- Makes index creation more friendly
- Clearer error when handling fractional time values
- Read Elasticsearch manifest via URL
- Throw if the local node is not set
- Bootstrap check for OnOutOfMemoryError and seccomp
- Log OS and JVM on startup
- Add GC overhead logging
- Refactor JvmGcMonitorService for testing
- Default to server VM and add client VM check
- Add system bootstrap checks escape hatch
- Avoid sliced locked contention in internal engine
- Add heap size bootstrap check
- Remove hostname from NetworkAddress.format
- Bootstrapping bootstrap checks
- Add max map count check
- Remove PROTOTYPE from BulkItemResponse.Failure
- Throw an exception if Writeable.Reader reads null
- Remove PROTOTYPE from RescorerBuilders
- Port Primary Terms to master
- Use index UUID to lookup indices on IndicesService
- Add -XX+AlwaysPreTouch JVM flag
- Add max size virtual memory check
- Use and test relative time in TransportBulkAction
- Bump Elasticsearch version to 5.0.0-SNAPSHOT
- Assert that we can write in all data-path on startup
- Add G1GC check on startup
- Shards with heavy indexing should get more of the indexing buffer
- Remove and ban ImmutableMap
- Finish banning ImmutableSet
- Removes and bans ImmutableSet
- Remove and ban ImmutableMap#entrySet
- Forbid ForwardingSet
Dates::
- Improve TimeZoneRoundingTests error messages
- Support full range of Java Long for epoch DateTime
Discovery::
- Do not log cluster service errors at after joining a master
- Log warning if minimum_master_nodes set to less than quorum
- Add a dedicate queue for incoming ClusterStates
Engine::
- Only try to read new segments info if we really flushed the index
- Use _refresh instead of reading from Translog in the RT GET case
- Remove writeLockTimeout from InternalEngine
- Don't guard IndexShard#refresh calls by a check to isRefreshNeeded
- Never call a listerner under lock in InternalEngine
- Use System.nanoTime() to initialize Engine.lastWriteNanos
- Flush big merges automatically if shard is inactive
- Remove Engine.Create
- Remove the disabled autogenerated id optimization from InternalEngine
Exceptions::
- Improve startup exception
- Make NotMasterException a first class citizen
- Do not catch throwable
- Make the index-too-old exception more explicit
- Add index name in IndexAlreadyExistsException default message
- Fix typos in exception/assert/log messages in core module.
- Add field names to several mapping errors
- Add serialization support for more important IOExceptions
- Adds exception objects to log messages.
- Add stack traces to logged exceptions where missing
- Remove reflection hacks from ElasticsearchException
- Rename QueryParsingException to a more generic ParsingException
- Add *Exception(Throwable cause) constructors/ call where appropriate
Expressions::
- improve date api for expressions/painless fields
- Support geo_point fields in lucene expressions
- Add support for .empty to expressions, and some docs improvements
Geo::
- GeoBoundingBoxQueryBuilder should throw IAE when topLeft and bottomRight
are the same coordinate
- Enhanced lat/long error handling
- Fix a potential parsing problem in GeoDistanceSortParser
- Geo: Add validation of shapes to ShapeBuilders
- Make remaining ShapeBuilders implement Writeable
- Geo: Remove internal `translated` flag from LineStringBuilder
- Make PointBuilder, CircleBuilder & EnvelopeBuilder implement Writable
- Merging BaseLineString and BasePolygonBuilder with subclass
- Moving static factory methods to ShapeBuilders
- Remove InternalLineStringBuilder and InternalPolygonBuilder
Highlighting::
- Switch Highlighting to ObjectParser
- Use HighlightBuilder in SearchSourceBuilder
- Joint parsing of common global Hightlighter and subfield parameters
- Enable HighlightBuilder to create SearchContextHighlight
- Add fromXContent method to HighlightBuilder
Index APIs::
- Add date-math support to `_rollover`
- Add Shrink request source parser to parse create index request body
- Fail hot_threads in a better way if unsupported by JDK
Index Templates::
- Add "version" field to Templates
- Parse and validate mappings on index template creation
Ingest::
- Add "version" field to Pipelines
- Make it possible for Ingest Processors to access AnalysisRegistry
- add ignore_missing option to convert,trim,lowercase,uppercase,grok,rename
- Add support for parameters to the script ingest processor
- introduce the JSON Processor
- Allow rename processor to turn leaf fields into branch fields
- remove ability to set field value in script-processor configuration
- Add REST _ingest/pipeline to get all pipelines
- Show ignored errors in verbose simulate result
- update foreach processor to only support one applied processor.
- Skip the execution of an empty pipeline
- Add `ignore_failure` option to all ingest processors
- new ScriptProcessor for Ingest
- Expose underlying processor to blame for thrown exception within
CompoundProcessor
- Avoid string concatentation in IngestDocument.FieldPath
- add ability to specify multiple grok patterns
- add ability to disable ability to override values of existing fields in
set processor
- Streamline option naming for several processors
- add automatic type conversion support to ConvertProcessor
- Give the foreach processor access to the rest of the document
- Added ingest statistics to node stats API
- Add `ingest_took` to bulk response
- Add ingest info to node info API, which contains a list of available
processors
- Use diffs for ingest metadata in cluster state
- hide null-valued metadata fields from WriteableIngestDocument#toXContent
- Ingest: use bulk thread pool for bulk request processing (was index
before)
- Add foreach processor
- revert PipelineFactoryError handling with throwing
ElasticsearchParseException in ingest pipeline creation
- Add processor tags to on_failure metadata in ingest pipeline
- catch processor/pipeline factory exceptions and return structured error
responses
- Ingest: move get/put/delete pipeline methods to ClusterAdminClient
- Geoip processor: remove redundant latitude and longitude fields and make
location an object with lat and lon subfields
Inner Hits::
- Change scriptFields member in InnerHitBuilder to set
Internal::
- Remove poor-mans compression in InternalSearchHit and friends
- Don't register SearchTransportService handlers more than once
- Unguice SearchModule
- Deguice SearchService and friends
- NodeStats classes to implement Writeable rather then Streamable
- More info classes to implement Writeable rather than Streamable
- Internal: Split disk threshold monitoring from decider
- Switching LockObtainFailedException over to ShardLockObtainFailedException
- update and delete by query requests to implement
IndicesRequest.Replaceable
- VersionFetchSubPhase should not use Versions#loadDocIdAndVersion
- Remove useless PK lookup in IndicesTTLService
- ignore some docker craziness in seccomp environment checks
- Make Priority an enum
- Snapshot UUIDs in blob names
- Add RestController method for deprecating in one step
- Tighten ensure atomic move cleanup
- Enable checkstyle ModifierOrder
- Expose task information from NodeClient
- Changed rest handler interface to take NodeClient
- Deprecate ExceptionsHelper.detailedMessage
- Factor out ChannelBuffer from BytesReference
- Cleanup Compressor interface
- Hot methods redux
- Remove forked joda time BaseDateTime class
- Support optional ctor args in ConstructingObjectParser
- Remove thread pool from page cache recycler
- Do not automatically close XContent objects/arrays
- Remove use of a Fields class in snapshot responses
- Removes multiple toXContent entry points for SnapshotInfo
- Removes unused methods in the o/e/common/Strings class
- Determine content length eagerly in HttpServer
- Consolidate query generation in QueryShardContext
- Make reset in QueryShardContext private
- Remove Strings#splitStringToArray
- Add toString() to GetResponse
- ConstructingObjectParser adapts ObjectParser for ctor args
- Makes Script type writeable
- FiltersAggregatorBuilder: Don't create new context for inner parsing
- Clean up serialization on some stats
- Normalize registration for SignificanceHeuristics
- Make (read|write)NamedWriteable public
- Use try-with-resource when creating new parser instances where possible
- Don't pass XContentParser to ParseFieldRegistry#lookup
- Internal: Remove threadlocal from document parser
- Cut range aggregations to registerAggregation
- Remove ParseFieldMatcher from AbstractXContentParser
- Remove parser argument from methods where we already pass in a parse
context
- Switch SearchAfterBuilder to writeGenericValue
- Remove StreamableReader
- Cleanup nested, has_child & has_parent query builders for inner hits
construction
- Make AllocationCommands NamedWriteables
- Isolate StreamableReader
- Create registration methods for aggregations similar to those for queries
- Remove PROTOTYPEs from QueryBuilders
- Remove registerQueryParser
- ParseField#getAllNamesIncludedDeprecated to not return duplicate names
- Rework a query parser and improve registration
- Clean up QueryParseContext and don't hold it inside
QueryRewrite/ShardContext
- Remove PROTOTYPE from MLT.Item
- Remove PROTOTYPE from VersionType
- Remove PROTOTYPEs from highlighting
- Remove PROTOTYPEs from ingest
- Start to rework query registration
- Factor out slow logs into Search and IndexingOperationListeners
- Remove PROTOTYPE from Suggesters
- Remove PROTOTYPE from SortBuilders
- Remove PROTOTYPE from ShapeBuilders
- Replace FieldStatsProvider with a method on MappedFieldType.
- Stop using PROTOTYPE in NamedWriteableRegistry
- Support scheduled commands in current context
- Thread limits
- Remove leniency from segments info integrity checks
- Rename SearchServiceTransportAction to SearchTransportService
- Decouple the TransportService and ClusterService
- Refactor bootstrap checks
- Add LifecycleRunnable
- Hot inlined methods in your area
- Move IndicesQueryCache and IndicesRequestCache into IndicesService
- Forbid use of java.security.MessageDigest#clone()
- Make IndicesWarmer a private class of IndexService
- Simplify IndicesFieldDataCache and detach from guice
- Uppercase ells ('L') in long literals
- ShardId equality and hash code inconsistency
- Ensure all resources are closed on Node#close()
- Make index uuid available in Index, ShardRouting & ShardId
- Move RefreshTask into IndexService and use since task per index
- Make IndexingMemoryController private to IndicesService
- Cleanup IndexingOperationListeners infrastructure
- Remove and forbid use of j.u.c.ThreadLocalRandom
- Fix IntelliJ query builder type inference issues
- Remove and forbid use of Collections#shuffle(List) and Random#<init>()
- Remove and forbid use of the type-unsafe empty Collections fields
- Move IndicesService.canDeleteShardContent to use IndexSettings
- Simplify MonitorService construction and detach from guice
- Use Supplier for StreamInput#readOptionalStreamable
- Add variable-length long encoding
- Extend usage of IndexSetting class
- Fold SimilarityModule into IndexModule
- Move to lucene BoostQuery
- Use built-in method for computing hash code of longs
- Refactor ShardFailure listener infrastructure
- Add methods for variable-length encoding integral arrays
- Fold IndexAliasesService into IndexService
- Remove unneeded Module abstractions
- Query refactoring: simplify IndexQueryParserService parse methods
- Remove and forbid use of com.google.common.collect.Iterators
- Remove and forbid use of com.google.common.collect.ImmutableCollection
- Remove and forbid use of com.google.common.io.Resources
- Remove and forbid use of com.google.common.hash.*
- Remove and forbid use of com.google.common.net.InetAddresses
- Remove and forbid use of com.google.common.collect.EvictingQueue
- Replace Guava cache with simple concurrent LRU cache
- Remove ClusterSerivce and IndexSettingsService dependency from IndexShard
- Start making RecoverySourceHandler unittestable
- Remove IndexService dep. from IndexShard
- Remove ES internal deletion policies in favour of Lucenes implementations
- Move ShardTermVectorService to be on indices level as TermVectorService
- Move ShardPercolateService creation into IndexShard
- Remove `ExpressionScriptCompilationException` and
`ExpressionScriptExecutionException`
- Reduced the number of ClusterStateUpdateTask variants
- Add a BaseParser helper for stream parsing
- Remove and forbid use of com.google.common.primitives.Ints
- Remove and forbid use of com.google.common.math.LongMath
- Remove and forbid use of com.google.common.base.Joiner
- Replace and ban next batch of Guava classes
- Remove and forbid use of com.google.common.collect.Iterables
- Replace LoadingCache usage with a simple ConcurrentHashMap
- Use Supplier instead of Reflection
- Remove and forbid use of com.google.common.base.Preconditions
- Remove and forbid use of guava Function, Charsets, Collections2
- Remove and forbid use of com.google.common.collect.ImmutableSortedMap
- Remove and forbid use of several com.google.common.util. classes
- Cleanup SearchRequest & SearchRequestBuilder
- Remove and forbid use of com.google.common.collect.Queues
- Remove and forbid use of com.google.common.base.Preconditions#checkNotNull
- Remove and forbid use of com.google.common.collect.Sets
- Remove and forbid use of com.google.common.collect.Maps
- Remove use of underscore as an identifier
- Remove and forbid the use of com.google.common.base.Predicate(s)?
- This commit removes com.google.common.io
Java API::
- Ensure PutMappingRequest.buildFromSimplifiedDef input are pairs
- Start from a random node number so that clients do not overload the first
node configured
- Switch QueryBuilders to new MatchPhraseQueryBuilder
- Improve adding clauses to `span_near` and `span_or` query
- QueryBuilder does not need generics.
- Remove copy constructors from request classes and TransportMessage type
Java REST Client::
- Add support for a RestClient path prefix
- Add "Async" to the end of each Async RestClient method
- Allow RestClient to send array-based headers
- Add response body to ResponseException error message
- Simplify Sniffer initialization and automatically create the default
HostsSniffer
- Remove duplicate dependency declaration for http client
- Add callback to customize http client settings
- Rest Client: add short performRequest method variants without params
and/or body
Logging::
- Ensure logging is initialized in CLI tools
- Give useful error message if log config is missing
- Complete Elasticsearch logger names
- Add node name to decider trace logging
- Logging shutdown hack
- Disable console logging
- Skip loading of jansi from log4j2
- Configure AWS SDK logging configuration
- Warn if unsupported logging configuration present
- Size limit deprecation logs
- Increase visibility of deprecation logger
- Add log message about enforcing bootstrap checks
- Improve logging for batched cluster state updates
- Send HTTP Warning Header(s) for any Deprecation Usage from a REST request
- Throw IllegalStateException when handshake fails due to version or cluster
mismatch
Mapping::
- Automatically downgrade text and keyword to string on indexes imported
from 2.x
- Do not parse numbers as both strings and numbers when not included in
`_all`.
- Don't index the `_version` field
- The root object mapper should support updating `numeric_detection`,
`date_detection` and `dynamic_date_formats`.
- Automatically upgrade analyzed string fields that have `index_options` or
`position_increment_gap` set.
- Mappings: Support dots in field names in mapping parsing
- Save one utf8 conversion in KeywordFieldMapper.
- Do not parse the created version from the settings every time a field is
parsed.
- Elasticsearch should reject dynamic templates with unknown
`match_mapping_type`.
- Upgrade `string` fields to `text`/`keyword` even if `include_in_all` is
set.
- Adds a methods to find (and dynamically create) the mappers for the
parents of a field with dots in the field name
- Automatically upgrade analyzed strings with an analyzer to `text`.
- Support dots in field names when mapping already exists
- Use the new points API to index numeric fields.
- Simplify AllEntries, AllField and AllFieldMapper:
- Make `parseMultiField` part of `parseField`.
- Automatically add a sub keyword field to string dynamic mappings.
- Remove friction from the mapping changes in 5.0.
- Rework norms parameters for 5.0.
- Moved dynamic field handling in doc parsing to end of parsing
- Remove the MapperBuilders utility class.
- Make the `index` property a boolean.
- Remove the ability to enable doc values with the `fielddata.format`
setting.
- Be stricter about parsing boolean values in mappings.
- Fix default doc values to be enabled when a field is not indexed.
- Dynamically map floating-point numbers as floats instead of doubles.
- Simplify MetaDataMappingService.
- Remove MergeMappingException.
Network::
- Avoid early initializing Netty
- Network: Allow to listen on virtual interfaces.
- Explicitly tell Netty to not use unsafe
- Enable Netty 4 extensions
- Modularize netty
- Simplify TcpTransport interface by reducing send code to a single send
method
- Do not start scheduled pings until transport start
Packaging::
- Add quiet option to disable console logging
- Explicitly disable Netty key set replacement
- Remove explicit parallel new GC flag
- Use JAVA_HOME or java.exe in PATH like the Linux scripts do
- Don't mkdir directly in deb init script
- Increase default heap size to 2g
- Switch init.d scripts to use bash
- Switch scripts to use bash
- Further simplifications of plugin script
- Pass ES_JAVA_OPTS to JVM for plugins script
- Remove unnecessary sleep from init script restart
- Explicitly set packaging permissions
- rpm uses non-portable `--system` flag to `useradd`
- Adding JAVA_HOME to documents and env config file
- Added RPM metadata
- Elasticsearch ownership for data, logs, and configs
- Fail early on JDK with compiler bug
- Make security non-optional
- Remove RuntimePermission("accessDeclaredMembers")
- Remove Guava as a dependency
- Remove Guava as a dependency
Percolator::
- Also support query term extract for queries wrapped inside a
FunctionScoreQuery
- Add support for synonym query to percolator query term extraction
- Add percolator query extraction support for dismax query
- Improve percolate query performance by not verifying certain candidate
matches
- Improve percolator query term extraction
- PercolatorQueryBuilder cleanup by using MemoryIndex#fromDocument(...)
helper
- Add scoring support to the percolator query
- Add query extract support for the blended term query and the common terms
query
- Add support for several span queries in ExtractQueryTermsService
- Add support for TermsQuery in ExtractQueryTermsService
- Replace percolate APIs with a percolator query
Plugin Analysis Kuromoji::
- Add nbest options and NumberFilter
Plugin Discovery EC2::
- Use `DefaultAWSCredentialsProviderChain` AWS SDK class for credentials
- Support new Asia Pacific (Mumbai) ap-south-1 AWS region
- Add support for proxy authentication for s3 and ec2
Plugin Discovery GCE::
- Allow `_gce_` network when not using discovery gce
Plugin Ingest Attachment::
- Minor attachment processor improvements
Plugin Lang Painless::
- Disable regexes by default in painless
- Catch OutOfMemory and StackOverflow errors in Painless
- Change Painless Tree Structure for Variable/Method Chains
- Add replaceAll and replaceFirst
- Painless Initializers
- Add augmentation
- Infer lambda arguments/return type
- Fix explicit casts and improve tests.
- Add lambda captures
- improve Debugger to print code even if it hits exception
- Move semicolon hack into lexer
- Add flag support to regexes
- improve lambda syntax (allow single expression)
- Remove useless dropArguments in megamorphic cache
- non-capturing lambda support
- fix bugs in operators and more improvements for the dynamic case
- improve unary operators and cleanup tests
- Add support for the find operator (=~) and the match operator (==~)
- Remove casts and boxing for dynamic math
- Refactor def math
- Add support for /regex/
- Array constructor references
- Method references to user functions
- Add } as a delimiter.
- Add Lambda Stub Node
- Add capturing method references
- Add Functions to Painless
- Add Method to Get New MethodWriters
- Static For Each
- Method reference support
- Add support for the new Java 9 MethodHandles#arrayLength() factory
- Improve painless compile-time exceptions
- add java.time packages to painless whitelist
- Add Function Reference Stub to Painless
- improve painless whitelist coverage of java api
- Definition cleanup
- Made def variable casting consistent with invokedynamic rules
- Use Java 9 Indy String Concats, if available
- Add method overloading based on arity
- Refactor WriterUtils to extend ASM GeneratorAdapter
- Whitelist expansion
- Remove boxing when loading and storing values in "def" fields/arrays,
remove boxing onsimple method calls of "def" methods
- Some cleanups
- Use isAssignableFrom instead of relying on ClassCastException
- Build descriptor of array and field load/store in code
- Rename the dynamic call site factory to DefBootstrap
- Cleanup of DynamicCallSite
- Improve exception stacktraces
- Make Line Number Available in Painless
- Remove input, support params instead
- Decouple ANTLR AST from Painless
- _value support in painess?
- Long priority over Float
- _score as double, not float
- Add 'ctx' keyword to painless.
- Painless doc access
- Retrieve _score directly from Scorer
- Implement needsScore() correctly.
- Add synthetic length property as alias to Lists, so they can be used like
arrays
- Use better typing for dynamic method calls
- Array load/store and length with invokedynamic
- Switch painless dynamic calls to invokedynamic, remove perf hack/cheat
- Add fielddata accessors (.value/.values/.distance()/etc)
- painless: optimize/simplify dynamic field and method access
- Painless: Single-Quoted Strings
- Painless Clean Up
- Make Painless a Module
- Minor Clean up
- Remove Extra String Concat Token
Plugin Mapper Attachment::
- minor attachments cleanups: IDE test support and EPUB format
Plugin Mapper Size::
- Add doc values support to the _size field in the mapper-size plugin
Plugin Repository Azure::
- Support global `repositories.azure.` settings
- Add timeout settings (default to 5 minutes)
- Remove AbstractLegacyBlobContainer
Plugin Repository HDFS::
- merge current hdfs improvements to master
Plugin Repository S3::
- Extract AWS Key from KeyChain instead of using potential null value
- Check that S3 setting `buffer_size` is always lower than `chunk_size`
Plugins::
- Revert "Display plugins versions"
- Provide error message when plugin id is missing
- Print message when removing plugin with config
- Plugins: Update official plugin location with unified release
- Allow plugins to upgrade global custom metadata on startup
- Switch aggregations from push to pull
- Display plugins versions
- Add ScriptService to dependencies available for plugin components
- Make NamedWriteableRegistry immutable and add extension point for named
writeables
- Log one plugin info per line
- Make rest headers registration pull based
- Add resource watcher to services available for plugin components
- Add some basic services to createComponents for plugins
- Make plugins closeable
- Plugins: Add status bar on download
- Add did-you-mean for plugin cli
- Plugins: Remove name() and description() from api
- Emit nicer error message when trying to install unknown plugin
- Add plugin information for Verbose mode
- Cli: Improve output for usage errors
- Cli: Add verbose output with zip url when installing plugin
- PluginManager: Add xpack as official plugin
- CliTool: Cleanup and document Terminal
- Plugin cli: Improve maven coordinates detection
- Enforce plugin zip does not contain zip entries outside of the plugin dir
- CliTool: Allow unexpected exceptions to propagate
- Reduce complexity of plugin cli
- Remove Plugin.onIndexService.
- Open up QueryCache and SearcherWrapper extension points
Query DSL::
- Throw exception when multiple field names are provided as part of query
short syntax
- Query parsers to throw exception when multiple field names are provided
- Allow empty json object in request body in `_count` API
- Treat zero token in `common` terms query as MatchNoDocsQuery
- Handle empty query bodies at parse time and remove EmptyQueryBuilder
- Enforce MatchQueryBuilder#maxExpansions() to be strictly positive
- Don't allow `fuzziness` for `multi_match` types `cross_fields`, `phrase`
and `phrase_prefix`
- Add MatchNoDocsQuery, a query that matches no documents and prints the
reason why in the toString method.
- Adds `ignore_unmapped` option to geo queries
- Adds `ignore_unmapped` option to nested and P/C queries
- SimpleQueryParser should call MappedFieldType.termQuery when appropriate.
- An `exists` query on an object should query a single term.
- Function Score Query: make parsing stricter
- Parsers should throw exception on unknown objects
- UNICODE_CHARACTER_CLASS fix
Query Refactoring::
- Add infrastructure to rewrite query builders
- Switch geo validation to enum
REST::
- Add a REST spec for the create API
- Add response params to REST params did you mean
- Add did you mean to strict REST params
- Add exclusion support to response filtering
- Only write forced_refresh if we forced a refresh
- Add Location header to the index, update, and create APIs
- Add support for `wait_for_events` to the `_cluster/health` REST endpoint
- Rename Search Template REST spec names
- Adding status field in _msearch error request bodies
- Add semicolon query string parameter delimiter
- Enable HTTP compression by default with compression level 3
- Allow JSON with unquoted field names by enabling system property
- More robust handling of CORS HTTP Access Control
- Add option to exclude based on paths in XContent
Recovery::
- Pass on maxUnsafeAutoIdTimestamp on recovery / relocation
- Non-blocking primary relocation hand-off
- index shard should be able to cancel check index on close.
- TransportNodesListGatewayStartedShards should fall back to disk based
index metadata if not found in cluster state
- Recover broken IndexMetaData as closed
- Relocation source should be marked as relocating before starting recovery
to primary relocation target
- Operation counter for IndexShard
- Primary relocation handoff
- Remove recovery threadpools and throttle outgoing recoveries on the master
- Refactor StoreRecoveryService to be a simple package private util class
Reindex API::
- Only ask for `_version` we need it
- Use fewer threads when reindexing-from-remote
- Support authentication with reindex-from-remote
- Support requests_per_second=-1 to mean no throttling in reindex
- Implement ctx.op = "delete" on _update_by_query and _reindex
- Make Reindex cancellation tests more uniform
- Makes DeleteByQueryRequest implements IndicesRequest
- Teach reindex to retry on search failures
- Remove ReindexResponse in favor of BulkIndexByScrollResponse
- Stricter validation of Reindex's requests_per_second
- Properly mark reindex's child tasks as child tasks
- Make reindex throttling dynamic
- Throttling support for reindex
- Add ingest pipeline support to reindex
Scripting::
- Parse script on storage instead of on retrieval
- Migrate elasticsearch native script examples to the main repo
- Remove ClusterState from compile api
- Mustache: Render Map as JSON
- Compile each Groovy script in its own classloader
- Include script field even if it value is null
- Skipping hidden files compilation for script service
- Rename Plan A to Painless
- Add plumbing for script compile-time parameters
- Factor mustache -> modules/lang-mustache
Scroll::
- Add an index setting to limit the maximum number of slices allowed in a
scroll request.
Search::
- Limit batch size when scrolling
- Record method counts while profiling query components
- Change default similarity to BM25
- Add a parameter to cap the number of searches the msearch api will
concurrently execute
- Introduces GeoValidationMethod to GeoDistanceSortBuilder
- Switches from empty boolean query to matchNoDocs
- Allow binary sort values.
- Fail query if it contains very large rescores
- Type filters should not have a performance impact when there is a single
type.
- Store _all payloads on 1 byte instead of 4.
- Refuse to load fields from _source when using the `fields` option and
support wildcards.
- Add response into ClearScrollResponse
- Shuffle shards for _only_nodes + support multiple specifications like
cluster API
Search Refactoring::
- Removes the now obsolete SearchParseElement implementations
- Remove RescoreParseElement
- Remove HighlighterParseElement
- Move top level parsing of sort element to SortBuilder
- Switch to using refactored SortBuilder instead of using BytesReference in
serialization
- Add build() method to SortBuilder implementations
- Refactoring of Suggestions
- Move sort `order` field up into SortBuilder
- Moves SortParser:parse(...) to only require QueryShardContext
- Change internal representation of suggesters
- Make GeoDistanceSortBuilder serializable, 2nd try
- Move missing() from SortBuilder interface to class
- Remove deprecated parameters from ScriptSortBuilder
- Refactor GeoSortBuilder
- Refactor FieldSortBuilder
- Make sort order enum writable.
- Make DistanceUnit writable.
- RescoreBuilder: Add parsing and creating of RescoreSearchContext
- Make RescoreBuilder and nested QueryRescorer Writable
- Explain api: move query parsing to the coordinating node
- Switch query parsers to use ParseField
- Refactoring of Aggregations
Sequence IDs::
- Persist sequence number checkpoints
- Add sequence numbers to cat shards API
Settings::
- Add precise logging on unknown or invalid settings
- Make `action.auto_create_index` setting a dynamic cluster setting
- Removes space between # and the setting in elasticsearch.yml
- Validates new dynamic settings from the current state
- Improve error message if a setting is not found
- Cleanup placeholder replacement
- Switch to registered Settings for all IndexingMemoryController settings
- Add guard against null-valued settings
- Useful error message for null property placeholder
- Archive cluster level settings if unknown or broken
- Improve error message if setting is not found
- Improve upgrade experience of node level index settings
- Settings with complex matchers should not overlap
- Moves GCE settings to the new infra
- Add filtering support within Setting class
- Migrate AWS settings to new settings infrastructure
- Remove `gateway.initial_meta` and always rely on min master nodes
- Rewrite SettingsFilter to be immutable
- Simplify azure settings
- Convert PageCacheRecycler settings
- Monitor settings
- Cut over tribe node settings to new settings infra
- Convert multcast plugin settings to the new infra
- Convert `request.headers.*` to the new settings infra
- Migrate Azure settings to new settings infrastructure
- Validate logger settings and allow them to be reset via API
- Switch NodeEnvironment's settings to new settings
- Simplify AutoCreateIndex and add more tests
- Convert several pending settings
- Migrate query caching settings to the new settings infra.
- Convert `action.auto_create_index` and `action.master.force_local` to the
new settings infra
- Convert `cluster.routing.allocation.type` and `processors` to the new
settings infra.
- Validate tribe node settings on startup
- Move node.client, node.data, node.master, node.local and node.mode to new
settings infra
- Moved http settings to the new settings infrastructure
- Migrate network service to the new infra
- Convert client.transport settings to new infra
- Move discovery.* settings to new Setting infrastructure
- Change over to o.e.common.settings.Setting for http settings
- Convert "path.*" and "pidfile" to new settings infra
- Migrate repository settings to the new settings API
- Convert "indices.*" settings to new infra.
- Migrate gateway settings to the new settings API.
- Convert several node and test level settings
- Run Metadata upgrade tool on every version
- Check for invalid index settings on metadata upgrade
- Validate the settings key if it's simple chars separated by `.`
- Validate known global settings on startup
- Cut over all index scope settings to the new setting infrastrucuture
- Remove updatability of `index.flush_on_close`
- Move all dynamic settings and their config classes to the index level
- Always require units for bytes and time settings
- Make MetaData parsing less lenient.
- Move async translog sync logic into IndexService
- Remove `index.merge.scheduler.notify_on_failure` and default to `true`
- Remove cache concurrency level settings that no longer apply
Similarities::
- Defining a global default similarity
Snapshot/Restore::
- Delete differing files in the store before restoring
- Adds ignoreUnavailable option to the snapshot status API
- Check restores in progress before deleting a snapshot
- Snapshot repository cleans up empty index folders
- BlobContainer#writeBlob no longer can overwrite a blob
- More resilient blob handling in snapshot repositories
- Adding repository index generational files
- Raised IOException on deleteBlob
- Adds UUIDs to snapshots
- Clarify the semantics of the BlobContainer interface
- Change BlobPath.buildAsString() method
- Remove the Snapshot class in favor of using SnapshotInfo
Stats::
- Add mem section back to cluster stats
- Add network types to cluster stats
- Add missing field type in the FieldStats response.
- Expose the ClusterInfo object in the allocation explain output
- Add total_indexing_buffer/_in_bytes to nodes info API
- Allow FieldStatsRequest to disable cache
- Remove index_writer_max_memory stat from segment stats
- Move DocStats under Engine to get more accurate numbers
- Do not return fieldstats information for fields that exist in the mapping
but not in the index.
- Add whether the shard state fetch is pending to the allocation explain API
- Add Failure Details to every NodesResponse
- Add I/O statistics on Linux
- Add points to SegmentStats.
- Remove FieldStats.Float.
- Show configured and remaining delay for an unassigned shard.
- indexing stats now contain indexing ops from recovery [ISSUE]
- Normalize unavailable load average
- Add load averages to OS stats on FreeBSD
- Expose pending cluster state queue size in node stats
Store::
- Use `mmapfs` by default.
- Remove support for legacy checksums
- Rename index folder to index_uuid
Suggesters::
- Move SuggestUtils methods to their respective caller classes
- Remove payload option from completion suggester
- Add bwc support for reading pre-5.0 completion index
Task Manager::
- Rename Task Persistence into Storing Task Results
- Fetch result when wait_for_completion
- Create get task API that falls back to the .tasks index
- Add ability to store results for long running tasks
- Move parentTaskId into TransportRequest
- Shorten the serialization of the empty TaskId
- Expose whether a task is cancellable in the _tasks list API
- Add ability to group tasks by common parent
- Add start time and duration to tasks
- Combine node name and task id into single string task id
- Add task status
- Extend tracking of parent tasks to master node, replication and broadcast
actions
Translog::
- Fsync documents in an async fashion
- Add checksumming and versions to the Translog's Checkpoint files
- Beef up Translog testing with random channel exceptions
- Do not replay into translog on local recovery
- FSync translog outside of the writers global lock
- Remove ChannelReference and simplify Views
- Simplify TranslogWriter to always write to a stream
- Remove TranslogService and fold it into synchronous IndexShard API
=== Bug fixes
Aggregations::
- Fixed writeable name from range to geo_distance
- Fix date_range aggregation to not cache if now is used
- The `top_hits` aggregation should compile scripts only once.
- Fix agg profiling when using breadth_first collect mode
- Throw exception when maxBounds greater than minBounds
- Undeprecates `aggs` in the search request
- Change how `nested` and `reverse_nested` aggs know about their nested
depth level
- Make ExtendedBounds immutable
- Aggregations fix: support include/exclude strings for IP and dates
- Fix xcontent rendering of ip terms aggs.
- Improving parsing of sigma param for Extended Stats Bucket Aggregation
- Fixes NPE when no window is specified in moving average request
- Fixes Filter and FiltersAggregation to work with empty query
- Fixes the defaults for `keyed` in the percentiles aggregations
- Correct typo in class name of StatsAggregator
Allocation::
- Keep a shadow replicas' allocation id when it is promoted to primary
- IndicesClusterStateService should clean local started when re-assigns an
initializing shard with the same aid
- IndexRoutingTable.initializeEmpty shouldn't override supplied primary
RecoverySource
- Update incoming recoveries stats when shadow replica is reinitialized
- `index.routing.allocation.initial_recovery` limits replica allocation
- Upon being elected as master, prefer joins' node info to existing cluster
state
- Fix NPE when initializing replica shard has no UnassignedInfo
- Make shard store fetch less dependent on the current cluster state, both
on master and non data nodes
- Fix recovery throttling to properly handle relocating non-primary shards
- Replica shards must be failed before primary shards
Analysis::
- Named analyzer should close the analyzer that it wraps
- Can load non-PreBuiltTokenFilter in Analyze API
- Fix analyzer alias processing
Bulk::
- Add not-null precondition check in BulkRequest
CAT API::
- Fixes cat tasks operation in detailed mode
- Add index pattern wildcards support to _cat/shards
CRUD::
- GET operations should not extract fields from `_source`.
- Squash a race condition in RefreshListeners
- Prevent TransportReplicationAction to route request based on stale local
routing table
- Resolves the conflict between alias routing and parent routing by applying
the alias routing and ignoring the parent routing.
Cache::
- Prevent requests that use scripts or now() from being cached
- Serialize index boost and phrase suggest collation keys in a consistent
order
Circuit Breakers::
- Never trip circuit breaker in liveness request
- Free bytes reserved on request breaker
Cluster::
- Fixes issue with dangling index being deleted instead of re-imported
- Allow routing table to be filtered by index pattern
- Use executor's describeTasks method to log task information in cluster
service
- Acknowledge index deletion requests based on standard cluster state
acknowledgment
- Dangling indices are not imported if a tombstone for the index exists
- Fix issue with tombstones matching active indices in cluster state
- Shard state action channel exceptions
Core::
- Makes `m` case sensitive in TimeValue
- Guard against negative result from FileStore.getUsableSpace when picking
data path for a new shard
- Handle rejected execution exception on reschedule
- Fix concurrency bug in IMC that could cause it to check too infrequently
- Iterables.flatten should not pre-cache the first iterator
- Avoid race while retiring executors
- Refactor UUID-generating methods out of Strings
- Node names cleanup
- NullPointerException from IndexingMemoryController when a version conflict
happens during recovery
- Handle RejectedExecution gracefully in TransportService during shutdown
Discovery::
- Update discovery nodes after cluster state is published
- Add current cluster state version to zen pings and use them in master
election
Engine::
- Take refresh IOExceptions into account when catching ACE in InternalEngine
- Don't suppress AlreadyClosedException
Expressions::
- replace ScriptException with a better one
Geo::
- Incomplete results when using geo_distance for large distances [ISSUE]
- Fix multi-field support for GeoPoint types
- Enforce distance in distance query is > 0 [ISSUE]
Highlighting::
- Enable BoostingQuery with FVH highlighter
Index APIs::
- Fixes active shard count check in the case of `all` shards
- Add zero-padding to auto-generated rollover index name increment
Ingest::
- no null values in ingest configuration error messages
- JSON Processor was not properly added
- Don't rebuild pipeline on every cluster state update
- Add dotexpander processor
- Fix NPE when simulating a pipeline with no id
- Change foreach processor to use ingest metadata for array element
- No other processors should be executed after on_failure is called
- rethrow script compilation exceptions into ingest configuration exceptions
- Rename from `ingest-useragent` plugin to `ingest-user-agent` and its
processor from `useragent` to `user_agent`
- Fix ignore_failure behavior in _simulate?verbose and more cleanup
- Pipeline Stats: Fix concurrent modification exception
- Validate properties values according to database type
- Ingest does not close its factories
- Handle regex parsing errors in Gsub and Grok Processors
- add on_failure exception metadata to ingest document for verbose simulate
- The IngestDocument copy constructor should make a deep copy
Inner Hits::
- Ensure that that InnerHitBuilder uses rewritten queries
Internal::
- Prevent AbstractArrays from release bytes more than once
- IndicesAliasesRequest should not implement CompositeIndicesRequest
- Ensure elasticsearch doesn't start with unuspported indices
- Remove ListTasksResponse#setDiscoveryNodes()
- Priority values should be unmodifiable
- Extract AbstractBytesReferenceTestCase
- Add XPointValues
- Fix BulkItemResponse.Failure.toString
- Enable unmap hack for java 9
- Fix issues with failed cache loads
- Allow parser to move on the START_OBJECT token when parsing search source
- Ensure searcher is release if wrapping fails
- Avoid deadlocks in Cache#computeIfAbsent
Java API::
- fix IndexResponse#toString to print out shards info
- Add NamedWriteables from plugins to TransportClient
- Fix potential NPE in SearchSourceBuilder
Java REST Client::
- Rest Client: add slash to log line when missing between host and uri
- Rest Client: HostsSniffer to set http as default scheme
Logging::
- Fix logger when you can not create an azure storage client
- Avoid unnecessary creation of prefix loggers
- Fix logging hierarchy configs
- Fix prefix logging
- Hack around Log4j bug rendering exceptions
- Avoid prematurely triggering logger initialization
- Only log running out of slots when out of slots
Mapping::
- Allow position_gap_increment for fields in indices created prior to 5.0
- Validate blank field name
- Better error message when mapping configures null
- Make doc_values accessible for _type
- Fix and test handling of `null_value`.
- Fail automatic string upgrade if the value of `index` is not recognized.
- Fix dynamic check to properly handle parents
- Fix array parsing to remove its context when finished parsing
- Disallow fielddata loading on text fields that are not indexed.
- Make dynamic template parsing less lenient.
- Fix dynamic mapper when its parent already has an update
- Fix copy_to when the target is a dynamic object field.
- Preserve existing mappings on batch mapping updates
Network::
- Fix connection close header handling
- Ensure port range is readable in the exception message
- Fix expect 100 continue header handling
- Fixes netty4 module's CORS config to use defaults
- Fix various concurrency issues in transport
- Verify lower level transport exceptions don't bubble up on disconnects
Packaging::
- [Packaging] Do not remove scripts directory on upgrade
- [Package] Remove bin/lib/modules directories on RPM uninstall/upgrade
- Fix handling of spaces for jvm.options on Windows
- Disable service in pre-uninstall
- Remove extra bin/ directory in bin folder
- Filter client/server VM options from jvm.options
- Preserve config files from RPM install
- Fix typo in message for variable setup ES_MAX_MEM
- Don't run `mkdir` when $DATA_DIR contains a comma-separated list
- Fix exit code
- Set MAX_OPEN_FILES to 65536
- [windows] Service command still had positional start command
- Do not pass double-dash arguments on startup
Parent/Child::
- Make sure that no `_parent#null` gets introduces as default _parent
mapping
Percolator::
- Fail indexing percolator queries containing either a has_child or
has_parent query
- Add support for MatchNoDocsQuery in percolator's query terms extract
service
- Let PercolatorQuery's explain use the two phase iterator
Plugin Discovery Azure Classic::
- Make discovery-azure plugin work again
Plugin Discovery EC2::
- Fix EC2 discovery settings
- Add TAG_SETTING to list of allowed tags for the ec2 discovery plugin.
- Fix EC2 Discovery settings
Plugin Discovery GCE::
- Fix NPE when GCE region is empty
Plugin Ingest Attachment::
- Adds content-length as number
Plugin Ingest GeoIp::
- [ingest-geoip] update geoip to not include null-valued results from
Plugin Lang Painless::
- Fix String Concatenation Bug In Painless
- Fix break bug in for/foreach loops.
- Fix compound assignment with string concats
- Fix horrible capture
- Fix Casting Bug
- Remove Grammar Ambiguities
- Remove if/else ANTLR ambiguity.
- Fix insanely slow compilation
- Fix Bug in Painless Assignment
- Fix bracket shortcuts
Plugin Repository Azure::
- Register group setting for repository-azure accounts
- Fix azure files removal
Plugin Repository S3::
- Fixes leading forward slash in S3 repository base_path
- Add missing permission to repository-s3
- Fix repository S3 Settings and add more tests
Plugin Store SMB::
- Fix calling ensureOpen() on the wrong directory (master forwardport)
Plugins::
- Use sysprop like with es.path.home to pass conf dir
- Quote path to java binary
- CliTool: Messages printed in Terminal should have percent char escaped
Query DSL::
- Fixes MultiMatchQuery so that it doesn't provide a null context
- Fix silently accepting malformed queries
- query_string_query should take term length into consideration when
fuzziness is auto
- Throw ParsingException if a query is wrapped in an array
- Restore parameter name auto_generate_phrase_queries
- Resolve string dates and date math to millis before evaluating for rewrite
in range query
- `constant_score` query should throw error on more than one filter
- Single IPv4 addresses in IP field term queries
- Make strategy optional in GeoShapeQueryBuilder readFrom and writeTo
Query Refactoring::
- Query refactoring: set has_parent & has_child types context properly
- Make sure equivalent geohashCellQueries are equal after toQuery called
REST::
- Remove lenient URL parameter parsing
- Fixes CORS handling so that it uses the defaults
- Get XContent params from request in Nodes rest actions
- Fixes reading of CORS pre-flight headers and methods
Recovery::
- Fix concurrency issues between cancelling a relocation and marking shard
as relocated
- Move `reset recovery` into RecoveriesCollection
- Fix replica-primary inconsistencies when indexing during primary
relocation with ongoing replica recoveries
- Invoke `IndexingOperationListeners` also when recovering from store or
remote
- Prevent interruption while store checks lucene files for consistency
- Mark shard as recovering on the cluster state thread
Reindex API::
- Fix reindex with transport client
- Fix a race condition in reindex's rethrottle
- Reindex should never report negative throttled_until
- Reindex should gracefully handle when _source is disabled
Scripting::
- Add support for booleans in scripts
- Fix Javascript OOM build Failure
- Fix propagating the default value for script settings
- Catch and wrap AssertionError and NoClassDefFoundError in groovy scripts
Search::
- Do not cache script queries.
- Throw error when trying to fetch fields from source and source is disabled
- Source filtering should keep working when the source contains numbers
greater than `Long.MAX_VALUE`.
- Fix NPE when running a range query on a `scaled_float` with no upper
bound.
- Fix NPE during search with source filtering if the source is disabled.
- Restore assignment of time value when deserializing a scroll instance
- Fix explain output for dfs query
- Don't recursively count children profile timings
- fix explain in function_score if no function filter matches
- Fix NPEs due to disabled source
- Require timeout units when parsing query body
- Close SearchContext if query rewrite failed
- Fix parsing single `rescore` element in SearchSourceBuilder
- Fail queries on not indexed fields.
- Fix for search after
- Do not be lenient when parsing CIDRs
Settings::
- Fix Setting.timeValue() method
- Add a hard limit for `index.number_of_shard`
- Include complex settings in settings requests
- Fix filter cache setting to allow percentages
- Move cluster.routing.allocation.same_shard.host setting to new settings
infrastructure
- Validate settings against dynamic updaters on the master
- Register "cloud.node.auto_attributes" setting in EC2 discovery plugin
- Use object equality to compare versions in IndexSettings
- fix exists method for list settings when using numbered setting format
- convert settings for ResourceWatcherService to new infrastructure
- Register bootstrap settings
- Add settings filtering to node info requests
- Ban write access to system properties
Snapshot/Restore::
- Better handling of an empty shard's segments_N file
- Fix race condition in snapshot initialization
- Fix the semantics for the BlobContainer interface
Stats::
- Fix FieldStats deserialization of `ip` field
- Fix serialization bug in allocation explain API.
- Allocation explain: Also serialize `includeDiskInfo` field
- Add missing builder.endObject() in FsInfo
Store::
- Tighten up concurrent store metadata listing and engine writes
- Make static Store access shard lock aware
- Catch assertion errors on commit and turn it into a real exception
Task Manager::
- Shard level tasks in Bulk Action lose reference to their parent tasks
- Take filterNodeIds into consideration while sending task requests to nodes
Term Vectors::
- Fix calculation of took time of term vectors request
Translog::
- Fix RAM usage estimation of LiveVersionMap.
- Fix translog replay multiple operations same doc
- Snapshotting and sync could cause a dead lock TranslogWriter
- Move translog recover outside of the engine
- Mark shard active during recovery; push settings after engine finally
inits
=== Regressions
Highlighting::
- Handle SynonymQuery extraction for the FastVectorHighlighter
=== Upgrades
Core::
- Upgrade to Lucene 6.2.0
- Update to jackson 2.8.1
- Upgrade to Lucene 6.1.0.
- Upgrade to lucene-6.1.0-snapshot-3a57bea.
- Upgrade to Lucene 6.0.1.
- Upgrade to lucene 6 release
- Upgrade to lucene-6.0.0-f0aa4fc.
- upgrade to lucene 6.0.0-snapshot-bea235f
- Upgrade to Jackson 2.7.1
Ingest::
- Update MaxMind geoip2 version to 2.6
Internal::
- Bump master (3.0-snapshot) to java 8
Network::
- Upgrade to Netty 4.1.5
- Dependencies: Upgrade to netty 4.1.4
- Introduce Netty 4
Packaging::
- Upgrade JNA to 4.2.2 and remove optionality
Plugin Discovery EC2::
- Update aws sdk to 1.10.69 and add use_throttle_retries repository setting
Scripting::
- Dependencies: Updates to mustache 0.9.3
Search Templates::
- Update mustache.java to version 0.9.1
5.0.1 (2016-11-02)
- Fixed performance regression in scan helper
5.0.0 (2016-10-19)
- Version compatible with elasticsearch 5.0
- when using SSL certificate validation is now on by default.
Install certifi or supply root certificate bundle.
- elasticsearch.trace logger now also logs failed requests, signature
of internal logging method log_request_fail has changed, all custom
connection classes need to be updated
- added headers arg to connections to support custom http headers
- passing in a keyword parameter with None as value will cause that
param to be ignored
Upstream changes:
version 0.0100 at 2016-10-09 04:13:59 +0000
-------------------------------------------
Change: 1a805013fbef23417d4911ad2dae6b88d30df82a
Author: Naveed Massjouni <naveed@vt.edu>
Date : 2016-10-09 00:10:17 +0000
v0.0100
Change: 365201e343fe133a78c22e7977a6c66524d3d6e1
Author: Naveed Massjouni <naveedm9@gmail.com>
Date : 2016-10-08 23:48:50 +0000
Merge pull request #3 from hvoers/master
Add functions 'get_config' and 'add_schema_to_config'
Change: fcabbc9f2ffc171062a428e6e4d6a1d5adccf9f3
Author: Henk van Oers <hvo.pm@xs4all.nl>
Date : 2016-08-20 15:12:40 +0000
Add function 'add_schema_to_config'
add_schema_to_config
This function does not touch the existing config. It can be used if
some
other part of your app has configured DBICx::Sugar but did not know
about
the part that uses an extra schema.
add_schema_to_config('schema_name', { dsn => ... });
Change: 587923ac6bae4a7c3044286859741bd4d794d0e7
Author: Henk van Oers <hvo.pm@xs4all.nl>
Date : 2016-08-20 13:40:33 +0000
Remove 'use Memoize', add function 'get_config'
Memoize is not used, so remove.
For introspection add function get_config.
Change: e58f1936ccec6275aa000dd969d6ef3e9f790596
Author: Henk van Oers <hvo.pm@xs4all.nl>
Date : 2016-08-20 13:12:17 +0000
Save the found config
Save the found config like
DBICx::Sugar::config(LoadFile($config_path)->{dbicx_sugar}); would
do.
Change: 48b48aac50969e76645e3c8960576bddad36097f
Author: Naveed Massjouni <naveed@vt.edu>
Date : 2015-03-29 06:01:49 +0000
updated synopsis
* Added SQLITE_FCNTL_WIN32_GET_HANDLE file control opcode.
Bug Fixes:
* Fix the VACUUM command so that it spills excess content to disk rather than holding everything in memory, and possible causing an out-of-memory error for larger database files. This fixes an issue introduced by version 3.15.0.
* Fix a case (present since 3.8.0 - 2013-08-26) where OR-connected terms in the ON clause of a LEFT JOIN might cause incorrect results.
* Fix a case where the use of row values in the ON clause of a LEFT JOIN might cause incorrect results.
Redis 3.2.5 Released Wed Oct 26 09:16:40 CEST 2016
===========================================================================
Upgrade urgency LOW: This release only fixes a compilation issue due to the
missing -ldl at linking time.
zach shipko in commit 4736407:
BSDs don't have -ldl
1 file changed, 15 insertions(+), 5 deletions(-)
antirez in commit 9ada818:
Fix modules compilation when libc malloc is used.
1 file changed, 2 insertions(+), 2 deletions(-)
=== 4.40.0 (2016-10-28)
* Make column_select plugin not raise an exception if the model's table does not exist (jeremyevans)
* Make dataset_associations plugin correctly handle (many|one)_through_many associations with single join table (jeremyevans) (#1253)
* Add s extension, with adds Sequel::S module that includes private #S method for calling Sequel.expr, including use as refinement (jeremyevans)
* Add symbol_as and symbol_as_refinement extensions so that :column.as(:alias) is treated as Sequel.as(:column, :alias) (jeremyevans)
* Add symbol_aref and symbol_aref_refinement extensions so that :table[:column] is treated as Sequel.qualify(:table, :column) (jeremyevans)
* Add Sequel.split_symbols=, to support the disabling of splitting symbols with double/triple underscores (jeremyevans)
* Make SQL::QualifiedIdentifier convert SQL::Identifier arguments to strings, fixing Sequel[:schema][:table] usage in schema methods (jeremyevans)
* Do not attempt to combine non-associative operators (jeremyevans) (#1246)
* Automatically add NOT NULL to columns when adding primary keys if the database doesn't handle it (jeremyevans)
* Make prepared_statements plugin correctly handle lookup on joined datasets (jeremyevans) (#1244)
* Make Database#tables with :qualify=>true option handle table names with double underscores correctly (jeremyevans) (#1241)
* Add SQL::Identifier#[] and SQL::QualifiedIdentifier#[] for creating qualified identifiers (jeremyevans)
* Add support for Dataset#insert_conflict :conflict_where option, for a predicate to use in ON CONFLICT clauses (chanks) (#1240)
* Freeze Dataset::NON_SQL_OPTIONS, add private Dataset#non_sql_options, fixing thread safety issues during require (jeremyevans)
* Make the callable returned by Database#rollback_checker thread safe (jeremyevans)
* Make lazy_attributes and dataset_associations plugins work if insert_returning_select plugin is loaded before on model with no dataset (jeremyevans)
Release 0.2.2 (Oct 22, 2016)
----------------------------
Enhancements
* Add comma_first option: When splitting list "comma first" notation
is used (issue141).
Bug Fixes
* Fix parsing of incomplete AS (issue284, by vmuriart).
* Fix parsing of Oracle names containing dollars (issue291).
* Fix parsing of UNION ALL (issue294).
* Fix grouping of identifiers containing typecasts (issue297).
* Add Changelog to sdist again (issue302).
Internal Changes
* `is_whitespace` and `is_group` changed into properties
OpenSSL removed old DES API which used des_* functions.
24956ca00f
In order to link with libcrypto from recent OpenSSL releases, we need
to replace the older API des_* functions by the newer API DES_* functions.
Submitted upstream as ITS#8525
http://www.openldap.org/its/index.cgi/Incoming?id=8525
2.8.5
- Starting docs on sqliteq
- Use parentheses for compound select with MySQL.
- Remove "clean_prefetch_subquery" as I'm not sure why it exists in the
first place.
2.8.4
- New playhouse extension module for working with SQLite in
multi-threaded / concurrent environments. The new module is called
playhouse.sqliteq and it works by serializing queries using a dedicated
worker thread (or greenlet). The performance is quite good, hopefully
this proves useful to someone besides myself! You can learn more by
reading the sqliteq documentation.
- #1061 - @akrs patched a bug in TimestampField which affected the
accuracy of sub-second timestamps (for resolution > 1).
- #1071, small python 3 fix.
- #1072, allow DeferredRelation to be used multiple times if there are
multiple references to a given deferred model.
- #1073, fixed regression in the speedups module that caused SQL
functions to always coerce return values, regardless of the coerce
flag.
- #1083, another Python 3 issue - this time regarding the use of
exc.message.
=== Enhancements
Allocation::
- Change DiskThresholdDecider's behavior when factoring in leaving shards
Cluster::
- Add clusterUUID to RestMainAction output
=== Bug fixes
Core::
- Guard against negative result from FileStore.getUsableSpace when pick...
Highlighting::
- skip GeoPointMultiTermQuery when highlighting
- Fix highlighting of MultiTermQuery within a FunctionScoreQuery
Index APIs::
- Fix IndexNotFoundException in multi index search request.
Internal::
- Don't fail replica if FlushNotAllowedEngineException is thrown
Network::
- Don't send exception responses twice
Packaging::
- Fix Windows GC options
Query DSL::
- Fail parsing when match query contains an array of terms
REST::
- Correct the description for refresh
Reindex API::
- Make reindex tests a little less flaky
Scripting::
- Native scripts should be created once per index, not per segment.
Settings::
- Validate max thread/merge settings
0.4.5
New Features
* Add new connection argument :ssl_mode to Mysql2::Client#new
* Prepared statements now support DateTime arguments
Bugfixes
* Fix segfault when wrapper->result is used after it is freed
* Raise an exception but don't crash on non-string encoding argument
* Raise an exception but don't crash on nil argument to Mysql2::Client#new
* Avoid RangeError on integers larger than LONG_LONG
* Fix a BigDecimal value binding in Prepared Statements
* Avoid type error when using connect_timeout, read_timeout and
write_timeout in a DATABASE_URL env variable
Changes
* Travis CI matrix now includes MySQL 8.0
* Travis CI matrix defaults to MySQL 5.6
* AppVeyor CI matrix switched to MySQL 5.7
* Fix test that implicitly creates a passwordless user
* Use RSpec expect output instead of StringIO
* Move macro REQUIRE_CONNECTED to client.c
* Add a note about casting boolean columns
* Suppress rubocop's invalid UTF-8 literal warning
pkgsrc changes
==============
Bind this package with databases/sqlite3 to get immediate updates along
with the sqlite3 package.
Set new versioning policy and concatenate versions of lemon and sqlite3.
The reasoning for it is as follows:
- currently lemon is an integral part of sqlite3
- lemon has its own conservative versioning regardless of changes in its code
- leave room for possible standalone lemon package with bumped versions
- reflect reality and make it human readable without checking the sources
Set LICENSE to public-domain.
Install documentation in the HTML format.
Compile with LDFLAGS set.
Finally don't use databases/sqlite3/Makefile.common as lemon is not
distributed in the same archive. Make use of Makefile.version that does the
same job of tracking upstream.
Do not set PKGCONFIG_OVERRIDE in Makefile.common, it is not accessible in
sqlite3-tcl.
Upstream changelog
==================
Changes are unknown, but at least the program acquired a -T command line
option used by brlcad.
New features:
- Notification Modules
- Connection Schedules
- Query Router Modules
Full changelog:
- fixed mysql set isolation level query
- updated mysql connection to run commit/rollback at the end of every
session even if only selects were run, to make sure metadata locks are
released
- renamed sqlrclientexitstatus_t to clientsessionexitstatus_t
- updated all db connection modules to reinit the column count during
prepare rather than execute
- fixed bug where server-side errors set by conn/cursor->setError()
could inadverntantly be overriden during the next call to
conn/cursor->errorMessage()
- added several more queries to mysql stmt-api blacklist
- configure option --disable-odbc-driver actually works now
- filters can specify an error string and error number now
- added support for systemd
- fixed a memory leak by applying and updating a patch from Kasyanov
Dmitry to deallocate the error message in C++ API destructor
- legacy_stdio_definitions.lib is now included when building ODBC with
VS2015
- added support for PHP7
- added -wait option to sqlr-start for non-Windows
- disabled -disable-new-window option to sqlr-start for non-Windows
- non-ascii character encodings work with the C# API now
- rudiments prompt class is used instead of using readline directly now
- renamed "logger-events" to just "events"
- added notification framework and "events" module
- added connection schedule framework and "cron" module
- applied sec/usec patch from samchuck at neowiz to custom_nw logger to
fix subtle time calculation error
- applied a patch from samchuck at neowiz to the sqlrclient protocol
module to deallocate storage for bind variables after logging the
query to resolve a reference-after-free bug
- added router module framework with "regex", "userlist" and
"clientiplist" modules
- when router detects a possible integrity violation now, it raises an
event which can be logged or trigger a notification and disables the
instance
- router calls begin, commit, and rollback on all connections now, even
if they're executed as queries rather than using the api methods
- removed tls_userlist/krb_userlist auth modules and updated the
userlist auth module to support tls and kerberos auth
- converted most of the doc source to wikitext
- fixed ODBC driver bug that could corrupt memory and trick the driver
manager into thinking that some basic functions are unavailable
- ODBC SQLTables works more correctly now
- fixed an ODBC bug that caused the first row to be fetched twice when
using SQLBindCol
Upstream changes:
2016-10-19 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.038)
* Version 4.037_1 had fixes for MySQL 8.0 provided
Bernt Johnsen @ Oracle that were not in the Changelogs
(https://github.com/perl5-dbi/DBD-mysql/pull/56)
* Fixes for compiling against newer libmysqlclient on Windows (kmx)
* Fix unit test for 40server_prepare_crash on Windows (pali)
* Perl's IV in scalar can store 64bit integer when perl was compiled
with 64 bit support (default on 64bit linux with gcc). Use this
feature and stores MYSQL_TYPE_LONGLONG as integers instead of strings
when possible. (pali, https://github.com/perl5-dbi/DBD-mysql/pull/57)
2016-10-14 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.037_01)
* Newest versions of libmysqlclient and the MariaDB C connector no longer
export the __WIN__ macro. If this macro is not present we would not
compile in the poll.h-based async-support. Changed to use the _WIN32
macro instead. Thanks to Sergei Golubchik for suggesting the fix.
* Fix from Pali Roh獺r to not use unsafe sprintf with variable lengt,
changes to bind logic, and added test 40server_prepare_crash.
2016-10-03 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.037)
* Security release to patch possible buffer overflow in prepared
statements. Reported and fixed by Pali Roh獺r. This vulnerability
is present in all releases at least back to versions 3.0 of the
driver, which were released in 2005.
The CVE identifier for this vulnerability is CVE-2016-1246.
Release 0.2.1 (Aug 13, 2016)
---------------------------
Notable Changes
* PostgreSQL: Function bodys are parsed as literal string. Previously
sqlparse assumed that all function bodys are parsable psql
strings (see issue277).
Bug Fixes
* Fix a regression to parse streams again (issue273, reported and
test case by gmccreight).
* Improve Python 2/3 compatibility when using parsestream (isseu190,
by phdru).
* Improve splitting of PostgreSQL functions (issue277).
Release 0.2.0 (Jul 20, 2016)
----------------------------
IMPORTANT: The supported Python versions have changed with this release.
sqlparse 0.2.x supports Python 2.7 and Python >= 3.3.
Thanks to the many contributors for writing bug reports and working
on pull requests who made this version possible!
Internal Changes
* sqlparse.SQLParseError was removed from top-level module and moved to
sqlparse.exceptions.
* sqlparse.sql.Token.to_unicode was removed.
* The signature of a filter's process method has changed from
process(stack, stream) -> to process(stream). Stack was never used at
all.
* Lots of code cleanups and modernization (thanks esp. to vmuriart!).
* Improved grouping performance. (sjoerdjob)
Enhancements
* Support WHILE loops (issue215, by shenlongxing).
* Better support for CTEs (issue217, by Andrew Tipton).
* Recognize USING as a keyword more consistently (issue236, by koljonen).
* Improve alignment of columns (issue207, issue235, by vmuriat).
* Add wrap_after option for better alignment when formatting
lists (issue248, by Dennis Taylor).
* Add reindent-aligned option for alternate formatting (Adam Greenhall)
* Improved grouping of operations (issue211, by vmuriat).
Bug Fixes
* Leading whitespaces are now removed when format() is called with
strip_whitespace=True (issue213, by shenlongxing).
* Fix typo in keywords list (issue229, by cbeloni).
* Fix parsing of functions in comparisons (issue230, by saaj).
* Fix grouping of identifiers (issue233).
* Fix parsing of CREATE TABLE statements (issue242, by Tenghuan).
* Minor bug fixes (issue101).
* Improve formatting of CASE WHEN constructs (issue164, by vmuriat).
Release 0.1.19 (Mar 07, 2016)
-----------------------------
Bug Fixes
* Fix IndexError when statement contains WITH clauses (issue205).
Release 0.1.18 (Oct 25, 2015)
-----------------------------
Bug Fixes
* Remove universal wheel support, added in 0.1.17 by mistake.
Release 0.1.17 (Oct 24, 2015)
-----------------------------
Enhancements
* Speed up parsing of large SQL statements (pull request: issue201, fixes the
following issues: issue199, issue135, issue62, issue41, by Ryan Wooden).
Bug Fixes
* Fix another splitter bug regarding DECLARE (issue194).
Misc
* Packages on PyPI are signed from now on.
Release 0.1.16 (Jul 26, 2015)
-----------------------------
Bug Fixes
* Fix a regression in get_alias() introduced in 0.1.15 (issue185).
* Fix a bug in the splitter regarding DECLARE (issue193).
* sqlformat command line tool doesn't duplicat newlines anymore (issue191).
* Don't mix up MySQL comments starting with hash and MSSQL
temp tables (issue192).
* Statement.get_type() now ignores comments at the beginning of
a statement (issue186).
Release 0.1.15 (Apr 15, 2015)
-----------------------------
Bug Fixes
* Fix a regression for identifiers with square bracktes
notation (issue153, by darikg).
* Add missing SQL types (issue154, issue155, issue156, by jukebox).
* Fix parsing of multi-line comments (issue172, by JacekPliszka).
* Fix parsing of escaped backslashes (issue174, by caseyching).
* Fix parsing of identifiers starting with underscore (issue175).
* Fix misinterpretation of IN keyword (issue183).
Enhancements
* Improve formatting of HAVING statements.
* Improve parsing of inline comments (issue163).
* Group comments to parent object (issue128, issue160).
* Add double precision builtin (issue169, by darikg).
* Add support for square bracket array indexing (issue170, issue176,
issue177 by darikg).
* Improve grouping of aliased elements (issue167, by darikg).
* Support comments starting with '#' character (issue178).
Added support for row values.
Allow deterministic SQL functions in the WHERE clause of a partial index.
Added the "modeof=filename" URI parameter on the unix VFS
Added support for SQLITE_DBCONFIG_MAINDBNAME.
Added the ability to VACUUM an ATTACH-ed database.
Enhancements to the command-line shell:
Add the ".testcase" and ".check" dot-commands.
Added the --new option to the ".open" dot-command, causing any prior content in the database to be purged prior to opening.
Enhance the fts5vocab virtual table to handle "ORDER BY term" efficiently.
Miscellaneous micro-optimizations reduce CPU usage by more than 7% on common workloads. Most optimization in this release has been on the front-end (sqlite3_prepare_v2()).
Bug Fixes:
The multiply operator now correctly detects 64-bit integer overflow and promotes to floating point in all corner-cases.
Correct handling of columns with redundant unique indexes when those columns are used on the LHS of an IN operator.
Skip NULL entries on range queries in indexes on expressions.
Ensure that the AUTOINCREMENT counters in the sqlite_sequence table are initialized doing "Xfer Optimization" on "INSERT ... SELECT" statements.
Make sure the ORDER BY LIMIT optimization (from check-in 559733b09e) works with IN operators on INTEGER PRIMARY KEYs.
Security Notes
--------------
* Incompatible Change: For STANDALONE and WIN builds, the default secure_file_priv value has changed from the empty string to NULL. This is a secure-by-default setting because it disables import and export operations. To permit those operations, set secure_file_priv to the path name of the directory to use for those operations.
* The linked OpenSSL library for the MySQL Commercial Server has been updated to version 1.0.1u. For a description of issues fixed in this version, see 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.
Functionality Added or Changed
------------------------------
* yaSSL was upgraded to version 2.4.2. This upgrade corrects issues with: Potential AES side channel leaks; DSA padding for unusual sizes; the SSL_CTX_load_verify_locations() OpenSSL compatibility function failing to handle long path directory names.
Packaging Notes
---------------
RPM and Debian packages now create the /var/lib/mysql-files directory, which is now the default value of the secure_file_priv system variable that specifies a directory for import and export operations.
Security Notes
--------------
Incompatible Change: The secure_file_priv system variable is used to limit the effect of data import and export operations.
Functionality Added or Changed
------------------------------
yaSSL was upgraded to version 2.4.2. This upgrade corrects issues with: Potential AES side channel leaks; DSA padding for unusual sizes; the SSL_CTX_load_verify_locations() OpenSSL compatibility function failing to handle long path directory names.
Packaging Notes
---------------
RPM packages now create the /var/lib/mysql-files directory, which is now the default value of the secure_file_priv system variable that specifies a directory for import and export operations.
Security Notes
--------------
Incompatible Change: The secure_file_priv system variable is used to limit the effect of data import and export operations.
Functionality Added or Changed
------------------------------
yaSSL was upgraded to version 2.4.2. This upgrade corrects issues with: Potential AES side channel leaks; DSA padding for unusual sizes; the SSL_CTX_load_verify_locations() OpenSSL compatibility function failing to handle long path directory names.
* Fix build with boost 1.62.0
* Use fsync(2) instead of fdatasync(2) on NetBSD
When fdatasync(2) is used, journaling support does not work
on 7.99.39 and 7.0.1
Changelog:
MongoDB 3.2.10 is out and is ready for production deployment. This release contains only fixes since 3.2.9, and is a recommended upgrade for all 3.2 users.
Fixed in this release:
SERVER-12048 Calling "service mongod start" with mongod running prevents "service mongod stop" from working
SERVER-16801 Update considers a change in numerical type to be a noop
SERVER-20306 75% excess memory usage under WiredTiger during stress test
SERVER-24885 The systemd MaxTasks feature can prevent mongod from accepting new connections
SERVER-24971 Excessive memory held by sessions when application threads do evictions
SERVER-25478 Use wtimeout in sh.setBalancerState
SERVER-25951 Report additional metrics in getMore slowms logging
SERVER-25974 Application threads stall for extended period when cache fills
TOOLS-1429 mongostat panic when monitored server is restarted
WT-2026 Maximum pages size at eviction too large
WT-2924 Ensure we are doing eviction when threads are waiting for it
=== 4.39.0 (2016-10-01)
* Make active_model plugin use rollback_checker instead of after_rollback hook (jeremyevans)
* Add Database#rollback_checker, which returns a proc that returns whether the in progress transaction is rolled back (jeremyevans)
* Add Sequel::Database.set_shared_adapter_scheme to allow external adapters to support the mock adapter (jeremyevans)
* Make hook_class_methods plugin not use after commit/rollback model hooks (jeremyevans)
* Support add_column :after and :first options on MySQL (AnthonyBobsin, jeremyevans) (#1234)
* Support ActiveSupport 5 in pg_interval extension when weeks/hours are used in ActiveSupport::Duration objects (chanks) (#1233)
* Support IntegerMigrator :relative option, for running only the specified number of migrations up or down (jeremyevans)
* Make the touch plugin also touch associations on create in addition to update and delete (jeremyevans)
* Add :allow_manual_update timestamps plugin option for not overriding a manually set update timestamp (jeremyevans)
* Add Sequel.[] as an alias to Sequel.expr, for easier expression creation (jeremyevans)
* Add PostgreSQL full_text_search :to_tsquery=>:phrase option, for using PostgreSQL 9.6+ full text search phrase searching (jeremyevans)
* Add JSONBOp#insert in pg_json_ops extension, for jsonb_insert support on PostgreSQL 9.6+ (jeremyevans)
* Support add_column :if_not_exists option on PostgreSQL 9.6+ (jeremyevans)
== v0.19.0 [2016-09-21] Michael Granger <ged@FaerieMUD.org>
- Deprecate Ruby 1.9
Enhancements:
- Respect and convert character encoding of all strings sent
to the server. #231
- Add PostgreSQL-9.5 functions PQsslInUse(), PQsslAttribute()
and PQsslAttributeNames().
- Various documentation fixes and improvements.
- Add mechanism to build without pg_config:
gem install pg -- --with-pg-config=ignore
- Update Windows binary gems to Ruby-2.3, PostgreSQL 9.5.4 and
OpenSSL 1.0.2f.
- Add JSON coders and add them to BasicTypeMapForResults and
BasicTypeMapBasedOnResult
- Allow build from git per bundler.
Bugfixes:
- Release GVL while calling PQsetClientEncoding(). #245
- Add __EXTENSIONS__ to Solaris/SmartOS for Ruby >= 2.3.x. #236
- Fix wrong exception when running SQL while in Connection#copy_data
block for output
LuaSQL is a simple interface from Lua to a DBMS. It enables a Lua program to:
* Connect to ODBC, Oracle, MySQL and PostgreSQL databases;
* Execute arbitrary SQL statements;
* Retrieve results in a row-by-row cursor fashion;
This package provides access to SQLite 3.x.
LuaSQL is a simple interface from Lua to a DBMS. It enables a Lua program to:
* Connect to ODBC, Oracle, MySQL and PostgreSQL databases;
* Execute arbitrary SQL statements;
* Retrieve results in a row-by-row cursor fashion;
This package provides access to SQLite 2.x.
LuaSQL is a simple interface from Lua to a DBMS. It enables a Lua program to:
* Connect to ODBC, Oracle, MySQL and PostgreSQL databases;
* Execute arbitrary SQL statements;
* Retrieve results in a row-by-row cursor fashion;
This package provides access to PostgreSQL.
LuaSQL is a simple interface from Lua to a DBMS. It enables a Lua program to:
* Connect to ODBC, Oracle, MySQL and PostgreSQL databases;
* Execute arbitrary SQL statements;
* Retrieve results in a row-by-row cursor fashion;
This package provides access to MySQL.
- builds cleanly on recent Linux and Oracle clients
- Added extended support for 64 bit clients
- Added support for DCRP (Database Resident Connection Pooling)
- Dropped Oraperl
mongo-c-driver 1.4.2
- Fixes bugs in "minPoolSize" logic, see CDRIVER-1558 for details.
mongo-c-driver 1.4.1
- mongoc_client_get_server_descriptions could return a list
including NULLs
- Tailable cursors on MongoDB 3.2 only worked with
MONGOC_QUERY_AWAIT_DATA
- Spurious warnings with MONGOC_DISABLE_SHM
======
- Add support for Protocol Buffers 3
- Add View support (without DDL)
- Implement get_default_schema() method in BaseSchema
- DevAPI: Per ReplicaSet SQL execution
- DevAPI: XSession accepts a list of routers
- DevAPI: Define action on adding empty list of documents
- BUG23729357: Fix fetching BIT datatype
- BUG23583381: Add who_am_i and am_i_real methods to DatabaseObject
- BUG23568257: Add fetch_one method to mysqlx.result
- BUG23550743: Add close method to XSession and NodeSession
- BUG23550057: Add support for URI as connection data
This is a Redis critical release in order to fix a security issue
which is documented clearly here:
6d9f8e2462
Thanks to Cory Duplantis of Cisco Talos for reporting the issue.
IMPACT:
The gist is that using CONFIG SET calls (or by manipulating
redis.conf) an attacker is able to compromise certain fields of
the "server" global structure, including the aof filename pointer,
that could be made pointing to something else. In turn the AOF
name is used in different contexts such as logging, rename(2) and
open(2) syscalls, leading to potential problems.
Please note that since having access to CONFIG SET also means to
be able to change the AOF filename (and many other things)
directly, this issue actual real world impact is quite small, so I
would not panik: if you have CONFIG SET level of access, you can
do more and more easily.
AFFECTED VERSIONS:
- All Redis 3.2.x versions are affected.
OTHER CHANGES IN THIS RELEASE:
- TCP binding bug fixed when only certain addresses were available
for a given port.
- A much better crash report that includes part of the Redis binary:
this will allow to fix bugs even when we just have a crash log and
no other help from the original poster oft the issue.
- A fix for Redis Cluster redis-trib displaying of info after
creating a new cluster.
Changelog: https://docs.mongodb.com/manual/release-notes/3.2-changelog/
3.2.9 Changelog
Security
SERVER-17856 users on mongods should always be able to run currentOp and killOp on their own operations
Sharding
SERVER-23958 DBConfig::_loadIfNeeded will not do a reload even in cases where a force reload is needed
SERVER-24810 Swap movePrimary command for ShardingTest::ensurePrimaryShard
SERVER-24842 ShardingStateRecovery::recover cleanup should not wait for replication
SERVER-24892 "Creating first chunks failed: Data inconsistency detected amongst config servers" when using 3.2.3+ without replica set config servers
SERVER-25029 Segmentation fault in mongos when config servers not available
SERVER-25052 csrs_upgrade_set_shard_version.js test is racy
SERVER-25254 Only advance config server optime in response to messages from cluster members
SERVER-25258 Improve parsing of killOp opID in mongos
Replication
SERVER-22136 Attach term metadata to UpdatePosition command
SERVER-23795 master/slave looks at on-disk size on a resync
SERVER-24630 Mongos erroneously advances config optime for writes that fail write concern
SERVER-24933 Clean shutdown of secondaries should occur in between oplog batches, not during
SERVER-25353 Clean shutdown should leave secondaries without the batch-in-progress flag
Query
SERVER-24693 group7.js should deterministically check for yields
SERVER-24761 Queries being planned with the subplanner can ignore when the PlanExecutor is killed
Storage
SERVER-16910 sorth.js makes invalid assumption about order of results
WiredTiger
SERVER-23659 Provide useful message when wiredTigerJournalCompressor is changed
SERVER-24334 Support conditional files in WiredTiger builds
WT-2711 Change statistics log configuration options
WT-2730 cursor next/prev can return the wrong key/value pair when crossing a page boundary
WT-2760 Fix a bug in backup related to directory sync. Change the filesystem API to make durable the default
WT-2798 Crash vulnerability with nojournal after create during checkpoint
WT-2802 Transaction commit causes heap-use-after free
Operations
SERVER-20239 Built-in sampling heap profiler
SERVER-22347 Mongo shell replica set connections must use legacy readMode
SERVER-22383 mongo shell should permit mongodb:// URI without database name
SERVER-23069 Improve tcmalloc freelist statistics
SERVER-23145 Shell sharding helpers should give feedback on success
SERVER-23409 Add tunability to tcmalloc serverStatus detail
SERVER-23830 On RHEL7/Centos7 mongod can't stop if pid location in conf differs from the init.d script
SERVER-24335 Shell sharding helpers should use wtimeout and respond appropriately
Build and Packaging
SERVER-7285 Support systemd in future compatible distributions
SERVER-19986 clang-format.py lint fails in mci if files were deleted
SERVER-21820 Export "endian" option from SConstruct
SERVER-21830 Import the edit "endian" option in SConscript
SERVER-24849 Vendor SCons
Tools
TOOLS-1336 Make -version spit out a bit more information.
Internals
SERVER-23226 Port resmoke.py's CheckReplDBHash hook to javascript
SERVER-23306 Check collection attributes during (js) testing
SERVER-23661 $sample takes disproportionately long time on newly created collection
SERVER-23902 Failing to create a thread should fail with a useful error message
SERVER-24073 Update system perf, longevity, and distributed correctness projects to use dedicated work directory
SERVER-24346 Run jstestfuzz on rhel55-test instead of rhel55
SERVER-24593 virtualenv used for ese test should not use system-site-package
SERVER-24716 Remove the CheckReplDBHashDeprecated hook
SERVER-24758 Move initial_sync suite of tests into its own tasks in sys-perf project
SERVER-24820 move push tasks to use relevant ec2 distro rather than rhel55
SERVER-24919 Perf.yml should consistently call pip install in venv
SERVER-24925 add url_raw field to resmoke
SERVER-24946 Evergreen.yml test for storageEngineCacheSizeGB cannot use [[ ]]
SERVER-24990 Update command_line_parsing.js to ignore cacheSizeGB in configuration comparison
SERVER-25006 Connection Pool ASIO must indicate use separately from non-error
SERVER-25074 make performance analysis run with log analysis
SERVER-25146 JS replset dbhash hook fails when checking nindexes with a collection containing a background index
SERVER-25169 for all branches earlier than master, change rhel55 compile distro to rhel55-large
SERVER-25193 Update system_perf.yml to simplify patch builds
SERVER-25198 Increase scons stack size for eslint
SERVER-25199 performance project: enable time logic for log analysis
SERVER-25212 work around stale dbhash value on v3.2
SERVER-25259 Drop temporary databases in dbhash testing hook
SERVER-25273 Concurrency suite dbHash check should call checkDBHashesFsyncLocked
SERVER-25274 Make checkDBHashesFsyncLocked from jstests/hooks/check_repl_dbhash.js, an internal function
SERVER-25302 turn on YCSB throughput analysis for YCSB tasks in sys-perf
SERVER-25330 Update system_perf.yml to use different test_control file for replica and sharded ycsb
TOOLS-1079 write_concern_mongos jstests are flaky
TOOLS-1176 -dumpDbUsersAndRoles without users creates broken dumps
Ocamldap is an implementation of the Light Weight Directory Access Protocol,
and a set of useful tools built around it. It includes high level libraries for
creating ldap clients and ldap servers.
It also includes many of the auxiliary tools needed for building intelligent
solutions, and interoperating with other directories. These include, an rfc2252
schema parser, and an schema checker, an ldif parser and printer, a search
filter parser (but no printer yet), and a rudimentary ldap url parser.
=== Breaking changes
Network::
- Single comma-delimited response header for multiple values
=== Deprecations
Geo::
- Deprecate optimize_bbox on geodistance queries
- Deprecate geohash parameters for geo_point parser
Mapping::
- Add deprecation logging for '_timestamp' and '_ttl'.
Query DSL::
- Deprecate soon-to-be-unsupported queries.
REST::
- Deprecate camelCase usages
Search::
- Deprecate sort option reverse.
Settings::
- Deprecate bootstrap.mlockall
- Deprecate camelCase settings magic
Snapshot/Restore::
- Adds deprecation notices on removed BlobContainer methods
=== New features
Geo::
- Add CONTAINS relation to geo_shape query
Plugin Cloud AWS::
- Add support for path_style_access
Reindex API::
- Backport: Reindex's throttling
=== Enhancements
Circuit Breakers::
- Limit request size
Cluster::
- Batch process node left and node failure 2.x
Core::
- Improve performance of applyDeletedShards
- Sliced lock contention 2.x
- Kill thread local leak
- Remove hostname from NetworkAddress.format (2.x)
Dates::
- Improve TimeUnitRounding for edge cases and DST transitions
Internal::
- Turn RestChannel into an interface
- Require executor name when calling scheduleWithFixedDelay
- Implement available for all StreamInput classes
Java API::
- Add created flag to IndexingOperationListener#postIndex
Logging::
- Add shardId and node name in search slow log
Mapping::
- Mappings: Allow to force dots in field names
Network::
- Exclude admin / diagnostic requests from HTTP request limiting
- Netty request/response tracer should wait for send
- Exclude specific transport actions from request size limit check
- Provide better error message when an incompatible node connects
to a node
Packaging::
- Increase default max open files to 65536
- Allow configuring Windows service name, description and user
Parent/Child::
- Allow adding additional child types that point to an existing
parent type
Query DSL::
- Fixed QueryParsingException in multi match query
REST::
- CORS handling triggered whether User-Agent is a browser or not
Reindex API::
- Switch default batch size for reindex to 1000
Scripting::
- Mustache: Add util functions to render JSON and join array
values
- Compile each Groovy script in its own classloader
=== Bug fixes
Aggregations::
- Fix potential AssertionError with include/exclude on terms
aggregations.
- Pass resolved extended bounds to unmapped histogram aggregator
- Fix "key_as_string" for date histogram and
epoch_millis/epoch_second format with time zone
- Fix TimeUnitRounding for hour, minute and second units
- Adds serialisation of sigma to extended_stats_bucket pipeline
aggregation
- ExtendedStatsAggregator should also pass sigma to emtpy aggs.
- Prevents exception being raised when ordering by an aggregation
which wasn't collected
- Setting 'other' bucket on empty aggregation
Allocation::
- Rebalancing policy shouldn't prevent hard allocation decisions
Analysis::
- Add 'Character.MODIFIER_SYMBOL' to the list of symbol
categories.
Bulk::
- Copy headers and context to individual requests inside a bulk
CAT API::
- Fix merge stats rendering in RestIndicesAction
- Expand wildcards to closed indices in '/_cat/indices'
- Fix column aliases in '_cat/indices', '_cat/nodes' and
'_cat/shards' APIs
CRUD::
- Prevent TransportReplicationAction to route request based on
stale local routing table
Cluster::
- Fix block checks when no indices are specified
- Cluster stats: fix memory available that is always set to 0
Core::
- Throw exception if using a closed transport client
- Fix misplaced cast when parsing seconds
- Don't try to compute completion stats on a reader after we
already closed it
Dates::
- Make sure TimeIntervalRounding is monotonic for increasing dates
- Fix invalid rounding value for TimeIntervalRounding close to DST
transitions
- Fix problem with TimeIntervalRounding on DST end
Highlighting::
- Plain highlighter should ignore parent/child queries
- Let fast vector highlighter also extract terms from the nested
query's inner query.
- Skip all geo point queries in plain highlighter
- Exclude all but string fields from highlighting if wildcards are
used
Indexed Scripts/Templates::
- Don't ignore custom sharding settings in create index request
for '.scripts' index
Internal::
- Fix filtering of node ids for TransportNodesAction
Logging::
- Add missing index name to search slow log.
Mapping::
- Mapping updates on objects should propagate 'include_an_all'.
- Mappings: Fix detection of metadata fields in documents
- Fix not_analyzed string fields to error when
position_increment_gap is set
- Automatically created indices should honor
'index.mapper.dynamic'.
- Process dynamic templates in order.
- Fix cross type mapping updates for 'boolean' fields.
- Fail if an object is added after a field with the same name.
Packaging::
- RESTART_ON_UPGRADE incorrectly named ES_RESTART_ON_UPGRADE in
sysconfig
Percolator::
- Set the SC and QPC type always to '.percolator' in percolate api
- Fixed NPE when percolator filter option is "empty".
Plugin Analysis Kuromoji::
- Prebuild Japanese Stop Words Token Filter
Plugin Cloud AWS::
- Support specific key/secret for EC2
- Add missing permission for S3 repository
Plugin Cloud Azure::
- Make discovery-azure work again on 2.4 branch
- Fix remove of azure files
Plugin Cloud GCE::
- Fix NPE when GCE region is empty
Query DSL::
- Make parsing of bool queries stricter
- Fix NullPointerException in SimpleQueryParser when analyzing
text produces a null query
- Apply the default operator on analyzed wildcard in
simple_query_string builder
- Apply the default operator on analyzed wildcard in query_string
builder
REST::
- Do not decode path when sending error
- CORS should permit same origin requests
- Allow CORS requests to work with HTTP compression enabled
- Fixes reading of CORS pre-flight headers and methods
- Fix OOM in AbstractXContentParser
Recovery::
- Backports Notify GatewayRecoveryListener on failure
Reindex API::
- Make reindex and lang-javascript compatible
Search::
- AllTermQuery must implement equals/hashCode.
- Add ref-counting to SearchContext to prevent accessing already
closed readers
- Fix '_only_nodes' preferences
- Speed up named queries.
Snapshot/Restore::
- Handle 'indices=["_all"]' when restoring a snapshot
- On restore, selecting concrete indices can select wrong index
Stats::
- Fix sync flush total shards statistics
Translog::
- Translog can delete valid .ckp file when views are closed after
the translog
- Call ensureOpen on Translog#newView() to prevent
IllegalStateException
=== Upgrades
Core::
- Update jackson to version 2.8.1 (on 2.4 branch)
- Upgrade lucene to 5.5.2
Dates::
- Upgrade joda-time to 2.9.4
Internal::
- Update Jackson 2.6.2 -> 2.6.6 (latest and final 2.6 patch)
Network::
- Upgrade to netty 3.10.6.Final
Plugin Cloud AWS::
- Update aws sdk to 1.10.69 and add throttle_retries repository
setting
Features
- Add v5 protocol failure map
- Don't return from initial connect on first error
- Indicate failed column when deserialization fails
- Let Cluster.refresh_nodes force a token map rebuild
- Refresh UDTs after "keyspace updated" event with v1/v2 protocol
- EC2 Address Resolver
- Speculative query retries
- Expose paging state in API
- Don't mark host down while one connection is active
- Query request size information
- Avoid quadratic ring processing with invalid replication factors
- Improve Connection/Pool creation concurrency on startup
- Add beta version native protocol flag
- cqlengine: Connections: support of multiple keyspaces and
sessions
Bug Fixes
- Race when adding a pool while setting keyspace
- Update results_metadata when prepared statement is reprepared
- CQL Export for Thrift Tables
- cqlengine: default value not applied to UserDefinedType
- cqlengine: columns are no longer hashable
- cqlengine: remove clustering keys from where clause when
deleting only static columns
Net::FileMaker provides an interface to FileMaker's various HTTP-based
interfaces, at present only the XML API is supported, but further support
to include XSLT and other means is planned.
popular database language in the world. MySQL is a client-server implementation
that consists of a server daemon `mysqld' and many different client
programs/libraries.
The main goals of MySQL are speed and robustness.
The base upon which MySQL is built is a set of routines that have been used in
a highly demanding production environment for many years. While MySQL is still
in development it already offers a rich and highly useful function set.
----- 7.4.12
Changes in MySQL Cluster NDB 7.4.12 (5.6.31-ndb-7.4.12) (2016-07-18)
MySQL Cluster NDB 7.4.12 is a new release of MySQL Cluster 7.4,
based on MySQL Server 5.6 and including features in version 7.4 of
the NDB storage engine, as well as fixing recently discovered bugs
in previous MySQL Cluster releases.
This release also incorporates all bugfixes and changes made in
previous MySQL Cluster releases, as well as all bugfixes and feature
changes which were added in mainline MySQL 5.6 through MySQL 5.6.31
(see Changes in MySQL 5.6.31 (2016-06-02)).
Functionality Added or Changed
ClusterJ: To make it easier for ClusterJ to handle fatal errors
that require the SessionFactory to be closed, a new public
method in the SessionFactory interface,
getConnectionPoolSessionCounts(), has been created. When it
returns zeros for all pooled connections, it means all sessions
have been closed, at which point the SessionFactory can be
closed and reopened. See Reconnecting to a MySQL Cluster for
more detail. (Bug #22353594)
Bugs Fixed
Incompatible Change: When the data nodes are only partially
connected to the API nodes, a node used for a pushdown join
may get its request from a transaction coordinator on a different
node, without (yet) being connected to the API node itself. In
such cases, the NodeInfo object for the requesting API node
contained no valid info about the software version of the API
node, which caused the DBSPJ block to assume (incorrectly) when
aborting to assume that the API node used NDB version 7.2.4 or
earlier, requiring the use of a backward compatability mode to
be used during query abort which sent a node failure error
instead of the real error causing the abort.
Now, whenever this situation occurs, it is assumed that, if
the NDB software version is not yet available, the API node
version is greater than 7.2.4. (Bug #23049170)
Although arguments to the DUMP command are 32-bit integers,
ndb_mgmd used a buffer of only 10 bytes when processing them.
(Bug #23708039)
During shutdown, the mysqld process could sometimes hang after
logging NDB Util: Stop ... NDB Util: Wakeup. (Bug #23343739)
References: See also: Bug #21098142.
During an online upgrade from a MySQL Cluster NDB 7.3 release
to an NDB 7.4 (or later) release, the failures of several data
nodes running the lower version during local checkpoints (LCPs),
and just prior to upgrading these nodes, led to additional node
failures following the upgrade. This was due to lingering
elements of the EMPTY_LCP protocol initiated by the older nodes
as part of an LCP-plus-restart sequence, and which is no longer
used in NDB 7.4 and later due to LCP optimizations implemented
in those versions. (Bug #23129433)
Reserved send buffer for the loopback transporter, introduced
in MySQL Cluster NDB 7.4.8 and used by API and management nodes
for administrative signals, was calculated incorrectly. (Bug
#23093656, Bug #22016081)
References: This issue is a regression of: Bug #21664515.
During a node restart, re-creation of internal triggers used
for verifying the referential integrity of foreign keys was
not reliable, because it was possible that not all distributed
TC and LDM instances agreed on all trigger identities. To fix
this problem, an extra step is added to the node restart
sequence, during which the trigger identities are determined
by querying the current master node. (Bug #23068914)
References: See also: Bug #23221573.
Following the forced shutdown of one of the 2 data nodes in a
cluster where NoOfReplicas=2, the other data node shut down as
well, due to arbitration failure. (Bug #23006431)
The ndbinfo.tc_time_track_stats table uses histogram buckets
to give a sense of the distribution of latencies. The sizes of
these buckets were also reported as HISTOGRAM BOUNDARY INFO
messages during data node startup; this printout was redundant
and so has been removed. (Bug #22819868)
A failure occurred in DBTUP in debug builds when variable-sized
pages for a fragment totalled more than 4 GB. (Bug #21313546)
mysqld did not shut down cleanly when executing ndb_index_stat.
(Bug #21098142)
References: See also: Bug #23343739.
DBDICT and GETTABINFOREQ queue debugging were enhanced as follows:
Monitoring by a data node of the progress of GETTABINFOREQ
signals can be enabled by setting DictTrace >= 2.
Added the ApiVerbose configuration parameter, which enables
NDB API debug logging for an API node where it is set
greater than or equal to 2.
Added DUMP code 1229 which shows the current state of the
GETTABINFOREQ queue. (See DUMP 1229.)
See also The DBDICT Block. (Bug #20368450)
References: See also: Bug #20368354.
Cluster API: Deletion of Ndb objects used a dispoportionately
high amount of CPU. (Bug #22986823)
----- 7.4.11
Changes in MySQL Cluster NDB 7.4.11 (5.6.29-ndb-7.4.11) (2016-04-20)
MySQL Cluster NDB 7.4.11 is a new release of MySQL Cluster 7.4,
based on MySQL Server 5.6 and including features in version 7.4 of
the NDB storage engine, as well as fixing recently discovered bugs
in previous MySQL Cluster releases.
This release also incorporates all bugfixes and changes made in
previous MySQL Cluster releases, as well as all bugfixes and feature
changes which were added in mainline MySQL 5.6 through MySQL 5.6.29
(see Changes in MySQL 5.6.29 (2016-02-05)).
Functionality Added or Changed
Cluster API: Added the Ndb::setEventBufferQueueEmptyEpoch()
method, which makes it possible to enable queuing of empty
events (event type TE_EMPTY). (Bug #22157845)
Bugs Fixed
Important Change: The minimum value for the BackupDataBufferSize
data node configuration parameter has been lowered from 2 MB
to 512 KB. The default and maximum values for this parameter
remain unchanged. (Bug #22749509)
Microsoft Windows: Performing ANALYZE TABLE on a table having
one or more indexes caused ndbmtd to fail with an InvalidAttrInfo
error due to signal corruption. This issue occurred consistently
on Windows, but could also be encountered on other platforms.
(Bug #77716, Bug #21441297)
During node failure handling, the request structure used to
drive the cleanup operation was not maintained correctly when
the request was executed. This led to inconsistencies that were
harmless during normal operation, but these could lead to
assertion failures during node failure handling, with subsequent
failure of additional nodes. (Bug #22643129)
The previous fix for a lack of mutex protection for the internal
TransporterFacade::deliver_signal() function was found to be
incomplete in some cases. (Bug #22615274)
Compilation of MySQL with Visual Studio 2015 failed in
ConfigInfo.cpp, due to a change in Visual Studio's handling of
spaces and concatenation. (Bug #22558836, Bug #80024)
When setup of the binary log as an atomic operation on one SQL
node failed, this could trigger a state in other SQL nodes in
which they appeared to detect the SQL node participating in
schema change distribution, whereas it had not yet completed
binary log setup. This could in turn cause a deadlock on the
global metadata lock when the SQL node still retrying binary
log setup needed this lock, while another mysqld had taken the
lock for itself as part of a schema change operation. In such
cases, the second SQL node waited for the first one to act on
its schema distribution changes, which it was not yet able to
do. (Bug #22494024)
Duplicate key errors could occur when ndb_restore was run on
a backup containing a unique index. This was due to the fact
that, during restoration of data, the database can pass through
one or more inconsistent states prior to completion, such an
inconsistent state possibly having duplicate values for a column
which has a unique index. (If the restoration of data is preceded
by a run with --disable-indexes and followed by one with
--rebuild-indexes, these errors are avoided.)
Added a check for unique indexes in the backup which is performed
only when restoring data, and which does not process tables
that have explicitly been excluded. For each unique index found,
a warning is now printed. (Bug #22329365)
Restoration of metadata with ndb_restore -m occasionally failed
with the error message Failed to create index... when creating
a unique index. While disgnosing this problem, it was found
that the internal error PREPARE_SEIZE_ERROR (a temporary error)
was reported as an unknown error. Now in such cases, ndb_restore
retries the creation of the unique index, and PREPARE_SEIZE_ERROR
is reported as NDB Error 748 Busy during read of event table.
(Bug #21178339)
References: See also: Bug #22989944.
When setting up event logging for ndb_mgmd on Windows, MySQL
Cluster tries to add a registry key to HKEY_LOCAL_MACHINE,
which fails if the user does not have access to the registry.
In such cases ndb_mgmd logged the error Could neither create
or open key, which is not accurate and which can cause confusion
for users who may not realize that file logging is available
and being used. Now in such cases, ndb_mgmd logs a warning
Could not create or access the registry key needed for the
application to log to the Windows EventLog. Run the application
with sufficient privileges once to create the key, or add the
key manually, or turn off logging for that application. An
error (as opposed to a warning) is now reported in such cases
only if there is no available output at all for ndb_mgmd event
logging. (Bug #20960839)
NdbDictionary metadata operations had a hard-coded 7-day timeout,
which proved to be excessive for short-lived operations such
as retrieval of table definitions. This could lead to unnecessary
hangs in user applications which were difficult to detect and
handle correctly. To help address this issue, timeout behaviour
is modified so that read-only or short-duration dictionary
interactions have a 2-minute timeout, while schema transactions
of potentially long duration retain the existing 7-day timeout.
Such timeouts are intended as a safety net: In the event of
problems, these return control to users, who can then take
corrective action. Any reproducible issue with NdbDictionary
timeouts should be reported as a bug. (Bug #20368354)
Optimization of signal sending by buffering and sending them
periodically, or when the buffer became full, could cause
SUB_GCP_COMPLETE_ACK signals to be excessively delayed. Such
signals are sent for each node and epoch, with a minimum interval
of TimeBetweenEpochs; if they are not received in time, the
SUMA buffers can overflow as a result. The overflow caused API
nodes to be disconnected, leading to current transactions being
aborted due to node failure. This condition made it difficult
for long transactions (such as altering a very large table),
to be completed. Now in such cases, the ACK signal is sent
without being delayed. (Bug #18753341)
An internal function used to validate connections failed to
update the connection count when creating a new Ndb object.
This had the potential to create a new Ndb object for every
operation validating the connection, which could have an impact
on performance, particularly when performing schema operations.
(Bug #80750, Bug #22932982)
When an SQL node was started, and joined the schema distribution
protocol, another SQL node, already waiting for a schema change
to be distributed, timed out during that wait. This was because
the code incorrectly assumed that the new SQL node would also
acknowledge the schema distribution even though the new node
joined too late to be a participant in it.
As part of this fix, printouts of schema distribution progress
now always print the more significant part of a bitmask before
the less significant; formatting of bitmasks in such printouts
has also been improved. (Bug #80554, Bug #22842538)
Settings for the SchedulerResponsiveness data node configuration
parameter (introduced in MySQL Cluster NDB 7.4.9) were ignored.
(Bug #80341, Bug #22712481)
MySQL Cluster did not compile correctly with Microsoft Visual
Studio 2015, due to a change from previous versions in the VS
implementation of the _vsnprintf() function. (Bug #80276, Bug
#22670525)
When setting CPU spin time, the value was needlessly cast to
a boolean internally, so that setting it to any nonzero value
yielded an effective value of 1. This issue, as well as the
fix for it, apply both to setting the SchedulerSpinTimer
parameter and to setting spintime as part of a ThreadConfig
parameter value. (Bug #80237, Bug #22647476)
Processing of local checkpoints was not handled correctly on
Mac OS X, due to an uninitialized variable. (Bug #80236, Bug
#22647462)
A logic error in an if statement in
storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp rendered
useless a check for determining whether ZREAD_ERROR should be
returned when comparing operations. This was detected when
compiling with gcc using -Werror=logical-op. (Bug #80155, Bug
#22601798)
References: This issue is a regression of: Bug #21285604.
The ndb_print_file utility failed consistently on Solaris 9
for SPARC. (Bug #80096, Bug #22579581)
Builds with the -Werror and -Wextra flags (as for release
builds) failed on SLES 11. (Bug #79950, Bug #22539531)
When using CREATE INDEX to add an index on either of two NDB
tables sharing circular foreign keys, the query succeeded but
a temporary table was left on disk, breaking the foreign key
constraints. This issue was also observed when attempting to
create an index on a table in the middle of a chain of foreign
keysthat is, a table having both parent and child keys, but on
different tables. The problem did not occur when using ALTER
TABLE to perform the same index creation operation; and subsequent
analysis revealed unintended differences in the way such
operations were performed by CREATE INDEX.
To fix this problem, we now make sure that operations performed
by a CREATE INDEX statement are always handled internally in
the same way and at the same time that the same operations are
handled when performed by ALTER TABLE or DROP INDEX. (Bug
#79156, Bug #22173891)
NDB failed to ignore index prefixes on primary and unique keys,
causing CREATE TABLE and ALTER TABLE statements using them to
be rejected. (Bug #78441, Bug #21839248)
Cluster API: Executing a transaction with an NdbIndexOperation
based on an obsolete unique index caused the data node process
to fail. Now the index is checked in such cases, and if it
cannot be used the transaction fails with an appropriate error.
(Bug #79494, Bug #22299443)
Integer overflow could occur during client handshake processing,
leading to a server exit. (Bug #22722946)
For busy servers, client connection or communication failure
could occur if an I/O-related system call was interrupted. The
mysql_options() C API function now has a MYSQL_OPT_RETRY_COUNT
option to control the number of retries for interrupted system
calls. (Bug #22336527)
References: See also: Bug #22389653.
Ok from OWNER, darcy.
Version 5.0.2 (2016-09-08)
--------------------------
- Fixed an infinite recursion problem in the DB wrapper class of the classic
module that could occur when the underlying connection could not be properly
opened (bug report by Justin Pryzby).
Version 5.0.1 (2016-08-18)
--------------------------
- The update() and delete() methods of the DB wrapper now use the OID instead
of the primary key if both are provided. This restores backward compatibility
with PyGreSQL 4.x and allows updating the primary key itself if an OID exists.
- The connect() function of the DB API 2.0 module now accepts additional keyword
parameters such as "application_name" which will be passed on to PostgreSQL.
- PyGreSQL now adapts some queries to be able to access older PostgreSQL 8.x
databases (as suggested on the mailing list by Andres Mejia). However, these
old versions of PostgreSQL are not officially supported and tested any more.
- Fixed an issue with Postgres types that have an OID >= 0x80000000 (reported
on the mailing list by Justin Pryzby).
- Allow extra values that are not used in the command in the parameter dict
passed to the query_formatted() method (as suggested by Justin Pryzby).
- Improved handling of empty arrays in the classic module.
- Unused classic connections were not properly garbage collected which could
cause memory leaks (reported by Justin Pryzby).
- Made C extension compatible with MSVC 9 again (this was needed to compile for
Python 2 on Windows).
Security update
CVE-2016-6662: Remote Root Code Execution / Privilege Escalation (0day)
(Fixed in 5.5.51, MDEV-10465)
XXX put the distfile on nbftp manually as most mirrors don't have it yet
and pullup.
Changes:
Revision #0da39ca 2016-09-12 16:18:07 +0200
fix BIGINT+MEDIUMINT type aggregation
Revision #347eeef 2016-09-11 20:55:11 +0200
don't use my_copystat in the server
Revision #611dc0d 2016-09-11 20:53:16 +0200
missing element in prelocked_mode_name[] array
Revision #a229091 2016-09-11 20:52:00 +0200
potential signedness issue
Revision #7ae555c 2016-09-11 20:51:09 +0200 - Merge branch 'mysql/5.5' into 5.5
Revision #b9631e3 2015-11-10 12:41:26 +0100
MDEV-8833 Crash of server on prepared statement with conversion to semi-join
Revision #ee97274 2016-08-25 09:50:04 +0300
DEV-10595 MariaDB daemon leaks memory with specific query
Revision #a92a8cc 2016-08-19 17:11:20 +0000
Windows packaging : use /d switch to sign MSI, to prevent installer showing randomly generated name in UAC prompt
Revision #723488b 2016-08-04 15:43:52 +0400
MDEV-10424 - Assertion `ticket == null' failed in MDL_request::set_type
Revision #09cb646 2016-08-11 19:35:53 +0000
Windows : fix search for WiX root directory when using 64bit cmake
Revision #5ad0206 2016-08-09 16:15:10 +0300
MDEV-10341: InnoDB: Failing assertion: mutex_own(mutex) - mutex_exit_func
Revision #0098d78 2016-08-09 13:25:40 +0200
MDEV-10465 general_log_file can be abused
Revision #a3f6424 2016-08-08 12:58:27 +0200
MDEV-6128:[PATCH] mysqlcheck wrongly escapes '.' in table names
Revision #2a54a53 2016-08-08 10:27:22 +0200
MDEV-10465 general_log_file can be abused
Revision #a7c43a6 2016-01-26 14:49:25 +0200
MDEV-9304: MariaDB crash with specific query
Revision #5269d37 2016-08-08 18:37:02 +0400
MDEV-10468 Assertion `nr >= 0.0' failed in Item_sum_std::val_real()
Revision #1b3430a 2016-08-08 16:04:40 +0400
MDEV-10500 CASE/IF Statement returns multiple values and shifts further result values to the next column
Revision #5e23b63 2016-08-07 11:02:42 +0200
MDEV-10506 Protocol::end_statement(): Assertion `0' failed upon ALTER TABLE
Revision #93d5cdf 2016-08-04 13:14:45 +0300
MDEV-9946: main.xtradb_mrr fails sporadically
Revision #c0cb84b 2016-08-04 10:57:55 +0200 - Merge branch 'bb-5.5-serg' into 5.5
Revision #470f259 2016-08-03 20:56:24 +0200
MDEV-10465 general_log_file can be abused
Revision #0214115 2016-08-01 16:53:57 +0200
trivial cleanup
Revision #03dec1a 2016-08-03 18:05:29 +0200
MDEV-10350 "./mtr --report-features" doesn't work
Revision #9d2f892 2016-08-03 17:58:56 +0200
MDEV-7329 plugins.pam_cleartext fails sporadically in buildbot
Revision #75891ed 2016-08-03 17:50:45 +0200
improve pam_cleartext.test a bit
Revision #5265243 2016-08-03 20:44:08 +0200 - Merge branch 'merge/merge-xtradb-5.5' into 5.5
Revision #e316c46 2016-08-03 20:43:29 +0200
5.5.50-38.0
Revision #19fe10c 2016-08-03 20:39:47 +0200
MDEV-6581 Writing to TEMPORARY TABLE not possible in read-only
Revision #a350e53 2016-08-03 20:38:25 +0200 - Merge branch 'mysql/5.5' into 5.5
Revision #eb32dfd 2016-08-03 11:49:35 +0400
MDEV-10365 - Race condition in error handling of INSERT DELAYED
Revision #511313b 2016-08-03 13:42:46 +0000
MDEV-10010 - potential deadlock on windows due to recursive SRWLock acquisition
Revision #141f88d 2016-08-03 12:41:38 +0000
MDEV-10357 my_context_continue() does not store current fiber on Windows
Revision #ecb7ce7 2016-08-03 15:55:48 +0400
MDEV-10467 Assertion `nr >= 0.0' failed in Item_sum_std::val_real() Backporting MDEV-5781 from 10.0.
Revision #35c9c85 2016-08-03 13:40:53 +0300
MDEV-10217: innodb.innodb_bug59641 fails sporadically in buildbot: InnoDB: Failing assertion: current_rec != insert_rec in file page0cur.c line 1052
Revision #6b71a6d 2016-08-02 18:52:51 +0200
MDEV-10383 Named pipes : multiple servers can listen on the same pipename
Revision #5fdb3cf 2016-07-29 18:21:08 +0200
MDEV-10419: crash in mariadb 10.1.16-MariaDB-1trusty
Revision #c6aaa2a 2016-07-30 10:53:01 +0300
MDEV-10228: update test results
Revision #15ef38d 2016-07-27 00:38:51 +0300
MDEV-10228: Delete missing rows with OR conditions
Revision #1b5da2c 2016-07-21 15:32:28 +0400
MDEV-10316 - main.type_date fails around midnight sporadically
Revision #5cf49cd 2016-07-15 23:51:30 +0300
MDEV-10248 Cannot Remove Test Tables
Revision #4e19aa3 2016-07-12 12:13:31 +0200
MDEV-10318 unset params in --ps --embedded
Revision #97ded96 2016-07-11 17:03:03 +0000
MDEV-10318 : Fix crash in embedded, in case prepared statement has parameter placeholders, but does not bind parameters
Revision #e81455bb 2015-05-04 08:32:05 +0200
MDEV-7973 bigint fail with gcc 5.0
Revision #a7814d4 2016-06-30 12:59:52 +0400
MDEV-10311 - funcs_1.processlist_priv_no_prot fails sporadically
Revision #79f852a 2016-06-22 14:17:06 +0200
MDEV-10050: Crash in subselect
Revision #ef92aaf 2016-06-22 22:37:28 +0300
MDEV-10083: Orphan ibd file when playing with foreign keys
Revision #a482e76 2016-06-20 16:12:54 +0200
fix a mysql-5.5.50 merge: mysqlcheck
Revision #95bf696 2016-06-19 14:51:03 +0200
MDEV-9749 InnoDB receives 'Bad file descriptor' error, possibly related to feedback plugin
Revision #7f38a07 2016-06-17 18:54:11 +0400
MDEV-10043 - main.events_restart fails sporadically in buildbot (crashes upon shutdown)
Revision #7ff86b4 2016-06-17 14:59:17 +0300
MDEV-10247 TokuDB assertion error when building with DEBUG
Revision #12ae840 2016-06-16 22:04:24 +0300
Fix typo bug that cause myisam repair to fail
Revision #c7eef02 2016-06-16 22:00:16 +0300
Increase the number of default build thread ids possibilities
Revision #7ab7abd 2016-06-16 18:52:46 +0300
Fix compilation failure when compiling with std=c90
Revision #b644661 2016-06-14 22:29:24 +0200
MDEV-9256 : Crashes on Windows x64 with aria_pagecache_buffer_size > 4GB
Revision #34a104b 2016-06-14 12:28:05 +0300
MDEV-10229: TokuDB fails to build with CLang
Revision #1bf2509 2016-06-13 23:32:50 +0300
MDEV-10162: Update repair testcase
Revision #2b47832 2015-12-10 03:56:31 +0200
Fixed compilation failure using clang
Revision #6a34ba3 2016-02-16 16:15:22 +0200
[Code cleanup] Refactor duplicate code within myisam and maria sort.cc
Revision #bfef17b 2016-06-13 18:30:02 +0300
MDEV-9433: [PATCH} cppcheck reported a number of minor coding errors
Revision #0089af8 2016-06-13 18:11:31 +0300
MDEV-9433: [PATCH] cppcheck reported a number of minor coding errors
Revision #cf721d2 2015-12-10 17:00:14 +1100
MDEV-9257: Increase limit on parallel workers in mysql-test-run
Revision #05bb3b9 2016-06-14 16:28:07 +0200
fix main.ssl_ca test for windows
Revision #a4cfd32 2016-06-14 14:52:43 +0200
main.openssl_1 failure
Revision #c73b987 2016-06-14 13:18:05 +0200
MDEV-8328 Evaluation of two "!" operators depends on space in beetween
Revision #c3c272c 2016-06-10 13:47:00 +0200
MDEV-10166 probes_mysql_nodtrace.h is not provided anymore by mariadb-10.0.25
Revision #260699e 2016-06-14 13:59:41 +0200 - Merge branch 'merge-xtradb-5.5' into 5.5
Revision #f54dcf1 2016-06-14 12:38:47 +0200
5.5.49-37.9
Revision #90eb302 2016-06-14 13:57:49 +0200
fix main.ssl_ca from mysql-5.5.50
Revision #ae29ea2 2016-06-14 13:55:28 +0200 - Merge branch 'mysql/5.5' into 5.5
Revision #1b50d59 2016-06-14 14:44:09 +0400
MDEV-9945 - main.kill_processlist-6619 fails sporadically
Revision #d6a1bae 2016-06-13 17:10:31 +0400
MDEV-10218 - rpl.rpl_binlog_errors fails in buildbot with valgrind warnings - bytes are possibly lost
Revision #2db724c 2016-06-13 15:54:12 +0400
MDEV-10218 - rpl.rpl_binlog_errors fails in buildbot with valgrind warnings - bytes are possibly lost
Revision #3c77a00 2016-03-08 13:27:18 +0200
MDEV-8012: Wrong exit code when asking for help
Revision #416006a 2016-06-12 22:45:15 +0300
MDEV-8012: Wrong exit code when asking for help
Revision #67b4a6f 2016-06-12 20:14:51 +0300
MDEV-8859 rpl.rpl_mdev382 sporadically fails to finish due to disappeared expect file
Revision #87007dc 2016-06-08 15:03:18 +0400
MDEV-9994 - Aria service threads are not "joined"
Revision #4155d09 2016-06-10 17:06:38 +0400
MDEV-8402 Bug #77473 Truncated data with subquery & UTF8
Revision #df14488 2016-06-10 15:50:19 +0400
MDEV-10181 Illegal mix of collation for a field and an ASCII string as a view field
Revision #7adf04e 2016-01-05 22:48:50 +0100
MDEV-9366 : do_shutdown_server fails to detect server shutdown on Windows. Fix test whether process is alive in mysqltest.
Revision #a4848e9 2016-06-08 19:04:12 +0400
MDEV-9972 Least function retuns date in date time format
Revision #b31976f 2016-06-08 15:15:55 +0200 - Merge branch 'mdev9991' into mdev9991-5.5
Revision #196d96c 2016-06-08 15:12:44 +0200
Fix compiler check for stack unwind hint
Revision #0f25270 2016-06-08 08:40:10 +0300
MDEV-7139: Sporadic failure in innodb.innodb_corrupt_bit on P8
Revision #ff832e0 2016-05-24 17:37:23 +0200
Restore COMPONENT Embedded for Windows embedded libs.
Revision #221adbc 2016-05-24 17:01:08 +0200
Fix warnings on Windows, compiler option -ggdb3 option is nonexistent
Revision #535160b 2016-05-24 16:57:03 +0200
MDEV-10117 - update HeidiSQL to current version
Revision #9eb0fbd 2016-05-24 14:20:53 +0200
MDEV-10071 Block installation on XP/Windows 2003 Server(they are no more supported)
Revision #18487ed 2016-05-24 14:18:55 +0200
MDEV-10108 Fix errors in installations by domain user
Revision #964c4f0 2016-05-10 19:13:06 +0400
MDEV-10052 Illegal mix of collations with DAYNAME(date_field)<>varchar_field
Revision #672bbcd 2016-04-27 16:13:14 +0200
MDEV-9973 : Do not set permissions for serviceaccount user (Win7 and later) This appears to break some installation, and it did not do anything useful anyway.
Revision #4f1ad43 2016-04-26 16:15:15 +0400
MDEV-9987 - gen_lex_hash leaks memory, making LeakSanitizer builds fail
Revision #29868de 2016-04-26 12:58:14 +0200
MDEV-9986 Full-text search of the utf8mb4 column causes crash
Revision #7f5ceb7 2016-04-26 11:49:35 +0200
disable main.wait_timeout_not_windows for embedded
Revision #2220480 2016-04-25 18:59:41 +0200
MDEV-7775 Wrong error message (Unknown error) when idle sessions are killed after wait_timeout
Revision #a98ecc2 2016-04-23 12:19:40 +0200
support SEARCH_RANGE in search_pattern_in_file.inc
Revision #2b7573e 2016-04-24 13:36:51 +0400
MDEV-9975 - main.partition_innodb_plugin fails sporadically
Revision #19e3597 2016-04-07 10:47:46 +0300
MDEV-9142 :Adding Constraint with no database reference results in ERROR 1046 (3D000) at line 13: No database selected.
Revision #0ea4c73 2016-04-23 12:15:18 +0400
Fixed compilation failure due to unused var.
Revision #618e300 2016-04-22 12:57:39 +0400
MDEV-9970 - main.sp-threads fails sporadically
Revision #bd75ee7 2016-04-22 09:10:00 -0400
bump the VERSION
Revision #3f0d07e 2016-04-22 16:04:20 +0400
MDEV-9372 select 100 between 1 and 9223372036854775808 returns false
Revision #0991e19e 2016-04-20 20:25:46 +0200 - Merge branch 'bb-5.5-serg' into 5.5
Revision #63c834e 2016-04-20 18:56:41 +0200 - Merge branch 'merge-xtradb-5.5' into 5.5
Revision #c9e56d5 2016-04-18 17:38:05 +0200
5.5.48-37.8
Revision #24ac546 2016-04-20 18:27:23 +0200
use consistent error messaging for IGNORE
Revision #9e826bf 2016-04-20 15:28:44 +0200
trivial optimization
Revision #8f1f869 2016-04-20 15:26:37 +0200
another test case for ER_DATA_OUT_OF_RANGE on insert
Revision #b069d19 2016-04-20 15:25:55 +0200 - Merge branch 'mysql/5.5' into 5.5
Revision #1bc0b0b 2016-04-19 11:08:16 +0200
fix a couple of dbug tests not to write to /tmp
Revision #cc04a9f 2016-04-18 18:30:42 +0200
MDEV-9835 Valid password is not working after server restart
Revision #608c0e1 2016-04-18 11:57:34 +0200
MDEV-5982 `make` fail @ ".../libmysql_versions.ld:155:9: invalid use of VERSION in input file"
Revision #ce35530 2016-04-17 19:52:15 +0200
MDEV-9885 Client doesn't start if 'TERM' unknown
Revision #95fe71a 2016-04-17 18:51:54 +0200
MDEV-9707 MAX(timestamp(6) column) in correlated sub-query returns non-existent row data in original table
Revision #3294cd1 2016-04-16 17:36:47 +0200
MDEV-9929 MariaDB segfaults on command "mysqld --version" with ignore-db-dir option on /etc/my.cnf
Revision #4f133fb 2016-04-16 12:39:20 +0200
MDEV-9493 --tc-heuristic-recover option values off by one
Revision #edf71fd 2016-04-16 10:28:03 +0200
MDEV-9928 LC_TIME_NAMES=de_AT; unusual name for february
Revision #9c64735 2016-03-29 12:50:56 +0200
MDEV-9748 Include Twin (mysys_err.h is included twice in mysys/my_copy.c)
Revision #2a45fa9 2016-04-20 19:03:59 +0200
MDEV-9836 Connection lost when using SSL
Revision #0c0a865 2016-04-19 16:16:13 +0400
MDEV-9943 - TokuDB fails to compile with gcc 5.2.1
Revision #62122ba 2016-04-20 00:36:58 +0300
MDEV-9953 Debian packages install broken 'maria' test suite which cannot be run
Revision #e90f8b7 2016-04-20 11:11:13 +0400
MDEV-9413 "datetime >= coalesce(c1(NULL))" doesn't return expected NULL
Revision #2564650 2016-04-20 11:02:34 +0400
MDEV-9662 Assertion `precision || !scale' failed in my_decimal_precision_to_length_no_truncation(uint, uint8, bool)
Revision #9a98714 2016-04-20 08:53:30 +0400
MDEV-9745 Crash with CASE WHEN TRUE THEN COALESCE(CAST(NULL AS UNSIGNED)) ELSE 4 END
Revision #6c0e231 2016-04-19 14:05:52 +0400
MDEV-9945 - main.kill_processlist-6619 fails sporadically
Revision #18ff6f6 2016-04-19 12:38:00 +0400
MDEV-9944 - main.events_2 fails sporadically
Revision #6fd54c0 2016-04-18 23:15:15 +0400
MDEV-9521 Least function returns 0000-00-00 for null date columns instead of null
Revision #777c213 2016-04-02 00:04:47 +0400
MDEV-9862 Illegal mix of collation, when comparing column with CASE expression
Revision #11b77e9 2016-03-18 16:55:11 +0100
MDEV-9527 build FAILs with GCC 5.1 with release supported "-std=c+11"
Revision #fc2c1e4 2016-03-17 21:29:52 +0100
MDEV-9733 Server crashes in lf_pinbox_real_free on replication slaves
Revision #0b9fb9a 2016-03-17 10:45:15 +0100
MDEV-9568 mysqlcheck crashes with nonexistent table name
Revision #c29e450 2016-02-26 03:02:07 +0200
MDEV-4070 sys_vars.secure_file_priv fails sporadically if it's executed with --mem
Revision #ceba41c 2016-01-24 17:41:11 +0100
MDEV-9299 Test main.events_2 incompatible with Debian reproducibility testing framework
Revision #e1385f2 2016-02-15 12:59:47 +0100
fix buffer overrun
Revision #3889b19 2016-02-14 22:19:27 +0100
more strict ipv6_ok check in mtr
Revision #8f5030e 2016-02-14 22:17:38 +0100
fix my_gethwaddr() for solaris
Revision #95740bc 2016-02-14 22:16:50 +0100
dtrace in cmake
Revision #a5d9597 2016-02-14 22:15:16 +0100
better inline check
Revision #5f078cc 2016-02-14 20:57:48 +0100
compilation errors on sparc sun studio 10
Revision #2a47817 2016-02-14 18:33:20 +0200
MDEV-9225 mysql_upgrade segfault due to missing /etc/my.cnf.d
Revision #b7dc830 2016-02-14 18:31:06 +0200
Fix memory leak when failing to read config file
Revision #93e9d81 2016-02-12 12:04:11 +0400
Errorneous PSI declaration line fixed.
Revision #a9a08b1 2016-02-10 10:03:47 +0400
MDEV-9371 select insert('a',2,1,'b') doesn't return expected 'a'
Revision #3c5c04b 2016-02-10 03:49:11 +0200
MDEV-7122: Assertion `0' failed in subselect_hash_sj_engine::init
Revision #6b614c6 2016-02-09 13:50:48 +0100
MDEV-7765: Crash (Assertion `!table || (!table->write_set || bitmap_is_set(table->write_set, field_index) || bitmap_is_set(table->vcol_set, field_index))' fails) on using function over not created table
Revision #775cccc 2016-02-08 22:53:40 +0200
MDEV-7122: Assertion `0' failed in subselect_hash_sj_engine::init
Revision #01628ce 2016-02-09 14:08:36 +0100
Merge branch 'bb-5.5-serg' into 5.5
Revision #afce541 2016-02-09 14:06:45 +0100
Merge branch 'merge-xtradb-5.5' into 5.5
Revision #5d478f5 2016-02-08 20:07:38 +0100
Bug#19817021
Revision #6703e5b 2016-02-08 20:07:09 +0100
Bug#20691429 ASSERTION `CHILD_L' FAILED IN STORAGE/MYISAMMRG/HA_MYISAMMRG.CC:631
Revision #dece4bc 2016-02-09 11:28:44 +0100
cleanup: make assert more readable
Revision #63d3ccd 2016-02-08 20:04:39 +0100
Bug#21205695 DROP TABLE MAY CAUSE SLAVES TO BREAK
Revision #f3444df 2016-02-09 11:27:40 +0100
Merge branch 'mysql/5.5' into 5.5
Revision #ea0c3fc 2016-02-09 05:17:41 +0400
MDEV-9438 backport feedback-http-proxy to 5.5 and 10.0. The http-proxy option to the FEEDBACK plugin backported.
Revision #b17a435 2016-02-09 02:31:47 +0300
MDEV-6859: scalar subqueries in a comparison produced unexpected result
Revision #3cfd36b 2016-02-09 00:13:25 +0100
5.5.47-37.7
Revision #d443d70 2016-02-09 01:46:53 +0300
MDEV-7823: Server crashes in next_depth_first_tab on nested IN clauses with SQ inside
Revision #c4cb240 2016-02-06 22:41:58 +0100
MDEV-9024 Build fails with VS2015
Revision #1e361f2 2016-02-06 13:57:59 +0100
MDEV-4664 mysql_upgrade crashes if root's password contains an apostrophe/single quotation mark
Revision #9e4e412 2016-02-06 13:56:37 +0100
unit test for dynstr_append_os_quoted()
Revision #41021c0 2016-02-03 17:15:22 +0100
MDEV-9462: Out of memory using explain on 2 empty tables
Revision #ad94790 2016-02-04 14:47:46 +0100
MDEV-9453 mysql_upgrade.exe error when mysql is migrated to mariadb
Revision #0a76ad5 2016-02-04 12:51:57 +0100
MDEV-9175 Query parser tansforms MICROSECOND into SECOND_FRAC, which does not work
Revision #a90da6e 2016-02-05 14:04:24 +0100
MDEV-9314 fatal build error: viosslfactories.c:58:5: error: dereferencing pointer to incomplete type ‘DH {aka struct dh_st}
Revision #db5f743 2016-02-06 12:37:46 +0200
Merge pull request #148 from grooverdan/5.5-rpl_reporting-cppcheck-va_end
Revision #6ecf6d8 2016-02-05 17:46:01 +0100
MDEV-7827: Assertion `!table || (!table->read_set || bitmap_is_set(table->read_set, field_index))' failed in Field_long::val_str on EXPLAIN EXTENDED
Revision #9f3b53f 2015-12-14 19:16:29 +0100
MDEV-9093 Persistent computed column is not updated when update query contains join
Revision #a3d843d 2016-02-03 15:52:26 +0200
Fix function visibility as it is used on row0mysql.c in Windows.
Revision #f66d016 2016-02-03 11:32:51 +0200
MDEV-9471: Server crashes or returns an error while trying to alter partitioning on a table moved from Windows to Linux
Revision #603c096 2016-02-03 00:43:00 +0100
MDEV-9466 : Exception handler on Windows does not output any text, if mysqld runs as service
Revision #0e84d54 2016-02-01 16:27:12 +0100
Merge MDEV-9112 into 5.5
Revision #8cf1f50 2016-02-01 16:10:49 +0100
MDEV-9112: Non-blocking client API missing on non-x86 platforms
Revision #d0c5efc 2016-01-29 23:53:44 +0200
If one compiled with too long MYSQL_SERVER_SUFFIX this caused a memory overrun that caused some test to fail.
Revision #a1ddf01 2016-01-29 23:52:15 +0200
my_decimal didn't compile properly with debug
Revision #3e5724f 2016-01-19 14:47:41 +1100
Add va_end to make cppcheck happy
Revision #9c9d10b 2016-01-15 09:50:27 +0400
MDEV-9106 Audit plugin not working with MySQL 5.7. fixing Windows crash.
Revision #fe4823d 2016-01-13 18:02:44 +0400
MDEV-9106 Audit plugin doesnt run with MySQL 5.7. updata thread_pool_server_audit test result.
Revision #cdc9aa5 2016-01-13 15:24:33 +0400
MDEV-9106 Audit Plugin doesn't run with MySQL 5.7. MariaDB 5.5 built in debug gets unhappy with mutexes. Although everything is correct, some DBUG_ASSERT can happen. So this patch keeps safe_mutex silent.
Revision #c955253 2016-01-12 16:29:02 +0400
MDEV-9106 Audit plugin compiled with MariaDB can't install on MySQL 5.7. The audit API was seriously changed in MySQL 5.7. so we had to adapt the plugin's code to that.
Revision #5f48b61 2016-01-07 14:45:40 +0100
MDEV-9298 : Build failure when linking libmysql.
Revision #ff24820 2015-12-30 19:39:31 +0100
Fix process handle leak in buildbot. GenerateConsoleCtrlEvent sent to non-existing process will add a process handle to this non-existing process to console host process conhost.exe
Revision #61d3621 2015-12-29 18:40:41 +0400
Moving Field_blob::store_length() back from protected to public, as it's needed for Cassandra in 10.0.
Revision #e1b9be5 2015-12-29 14:17:31 +0400
MDEV-9319 ALTER from a bigger to a smaller blob type truncates too much data
Revision #e126baa 2015-12-21 10:19:02 +0100
MDEV-9249 MariaDB un-buildable on linux64: fails @ "error: ‘ERR_remove_state’ was not declared in this scope" when linking against OpenSSL 1.0.2e
Revision #591e74c 2015-06-20 16:59:22 +0800
MDEV-7526: TokuDB doesn't build on OS X
Revision #e386523 2015-12-19 13:53:43 +0200
MDEV-7526: TokuDB doesn't build on OS X
Revision #f39b9e0 2015-12-19 13:52:27 +0200
MDEV-7526: TokuDB doesn't build on OS X
Revision #6414959 2015-12-19 13:31:44 +0200
MDEV-7526: TokuDB doesn't build on OS X
Revision #f89c9fc 2015-12-19 13:25:55 +0200
MDEV-7526: TokuDB doesn't build on OS X
Revision #0ed4744 2015-12-11 17:03:55 +0100
fix main.mysqldump test on windows
Revision #ca28d90 2015-12-09 17:54:55 +0100
MDEV-7655 SHOW CREATE TABLE returns invalid DDL when using virtual columns along with a table collation
Revision #f560c1b 2015-12-10 10:32:11 +0100
revert 5e9a50efc37c233f1e2a3616f8bcb36315aba4c2
Revision #265e833 2015-12-09 21:22:37 +0100
revert 415faa122b9c683661dafac82fff414fa6864151
Revision #c19972f 2015-12-11 14:33:41 +0200
MDEV-9251: Fix MySQL Bug#20755615: InnoDB compares column names case sensitively, while according to Storage Engine API column names should be compared case insensitively. This can cause FRM and InnoDB data dictionary to go out of sync.
Revision #fa25921 2015-12-10 11:22:53 +0100
MDEV-8407 Numeric errors, server crash with COLUMN_JSON() on DECIMAL with precision > 40
Revision #d67aacb 2015-12-09 17:11:55 +0100
fix xtradb compilation on windows
Revision #fa4d4fc 2015-12-09 10:06:28 +0100
unit tests for my_getopt
Revision #584c07b 2015-10-21 11:51:15 +0200
MDEV-8978 Specify GPL version in RPM metadata
Revision #142b725 2015-12-09 12:57:04 +0100
Merge branch 'merge/merge-xtradb-5.5' into 5.5
Revision #9457139 2015-12-09 12:27:04 +0100
5.5.46-37.6
Revision #1a72c6f 2015-12-09 11:51:59 +0100
Merge branch 'bb-5.5-serg' into 5.5
Revision #abf9d35 2015-12-09 10:00:49 +0100
Merge branch 'mysql/5.5' into 5.5
Revision #dac3149 2015-12-08 17:20:34 +0400
MDEV-9001 - [PATCH] Fix DB name quoting in mysqldump --routine
Revision #50a796d 2015-12-08 10:16:41 +0100
MDEV-8825 mysql_upgrade leaks the admin password when it spawns a shell process to execute mysqlcheck
Revision #c21b927 2015-12-08 10:13:13 +0100
mysql_upgrade cleanup
Revision #f0d774d 2015-12-07 20:06:54 +0100
MDEV-9212 ssl-validate-cert incorrect hostname check
Revision #544eeda 2015-12-07 20:27:58 +0100
MDEV-8644 Using a UDF in a virtual column causes a crash when stopping the server
Revision #79d08e6 2015-12-07 15:15:43 +0100
small cleanup: udf_init()/udf_free() calls
Revision #859a736 2015-12-07 14:07:36 +0100
MDEV-9161 feedback_plugin_send in debug builds
Revision #99774f1 2015-12-06 11:51:57 +0100
feedback plugin compilation warnings
Revision #8fd24b4 2015-12-07 20:25:27 +0100
MDEV-9226 SHOW COLUMNS returns wrong column order for tables with large ENUMs
Revision #f18599a 2015-12-06 20:22:33 +0100
tokudb compilation warnings
Revision #d1fe928 2015-12-06 12:01:12 +0100
MDEV-8607 Init script doesn't check all applicable configuration groups
Revision #18954ff 2015-12-06 01:48:07 +0100
MDEV-8313 Got an error writing communication packets
Revision #354e567 2015-12-06 01:40:51 +0100
federatedx small cleanup
Revision #e05883b 2015-12-05 15:25:15 +0100
MDEV-7341 mysqld_multi doesn't recognize include directive (not following includes)
Revision #ef47b625 2015-12-05 11:29:00 +0100
MDEV-8827 Duplicate key with auto increment
Revision #c8652ee 2015-12-05 11:22:25 +0100
one more test
Revision #ee2fce5 2015-10-20 09:41:44 +0200
fix debian logrotate slow log filename
Revision #0df22a5 2015-12-07 09:34:41 +0200
MDEV-7050: MySQL#74603 - Assertion `comma_length > 0' failed in mysql_prepare_create_table
Revision #d85168e 2015-12-07 09:20:31 +0200
Correct length check in my_wc_mb_filename()
Revision #e528fe7 2015-12-05 12:21:33 +0200
Fix gcc v5.compiler errors.
Revision #082b859 2015-12-04 14:24:03 +0200
MDEV-9233: Copying MySQL 5.5 data directory to 10.0 with partition tables crashes on insert
Revision #d87bc55 2015-12-03 20:43:54 +0400
MDEV-8630 Datetime value dropped in "INSERT ... SELECT ... ON DUPLICATE KEY" Item_func_coalesce::fix_length_and_dec() calls Item_func::count_string_result_length()) which called agg_arg_charsets() with wrong flags, so the collation derivation of the COALESCE result was not properly set to DERIVATION_COERCIBLE. It erroneously stayed DERIVATION_NUMERIC. So GREATEST() misinterpreted the argument as a number rather that a string and did not calculate its own length properly.
Revision #9f07c6b 2015-12-02 16:08:54 +0400
MDEV-9001 - [PATCH] Fix DB name quoting in mysqldump --routine
Revision #33589b2 2015-12-03 13:18:10 +0200
MDEV-7762 InnoDB: Failing assertion: block->page.buf_fix_count > 0 in buf0buf.ic line 730
Revision #13ad179 2015-11-20 14:50:18 +0100
MDEV-8756 MariaDB 10.0.21 crashes during PREPARE
Revision #43a5090 2015-11-18 11:20:59 +0100
MDEV-9051 mysqld got signal 11, after upgrade to 10.1.8
Revision #7261629 2015-11-18 10:58:51 +0100
feedback plugin debug
Revision #e669a5f 2015-11-17 18:33:08 +0100
MDEV-7588 Add thd_wait_begin/end to notify threadpool of binlog waits
Revision #7e4da9b 2015-11-06 16:36:41 +0100
MDEV-8632 Segmentation fault on INSERT
Revision #5d754fc 2015-11-09 09:23:32 +0200
MDEV-8854: New warning messages are unreadable
Revision #c88ca2c 2015-11-06 17:56:56 +0100
MDEV-8701 Crash on derived query MDEV-8938 Server Crash on Update with joins
Revision #df80420 2015-10-21 14:42:56 +0200
fix events_1 test for October 2015
Revision #978c2a3 2015-10-11 17:06:03 -0400
MDEV-7640: CHANGE MASTER TO doesn't work with prepared statements
Revision #16c4b3c 2015-10-09 16:43:59 +0200
fixes for buildbot
Revision #f41a41f 2015-10-09 00:06:16 +0200
Merge branch 'merge-xtradb-5.5' into 5.5
Revision #db79f4c 2015-10-08 23:02:43 +0200
5.5.45-37.4
Revision #82e9f6d 2015-10-08 22:54:24 +0200
Merge remote-tracking branch 'mysql/5.5' into 5.5
Revision #c8d5112 2015-10-08 00:32:07 +0200
MDEV-8796 Delete with sub query with information_schema.TABLES deletes too many rows
Revision #504802f 2015-08-05 11:57:35 +0200
MDEV-7846: postreview fix
Revision #54b9981 2015-04-23 20:08:57 +0200
MDEV-7846: Server crashes in Item_subselect::fix_fields or fails with Thread stack overrun
Revision #0ab93fd 2015-04-23 19:16:57 +0200
MDEV-7445:Server crash with Signal 6 MDEV-7565: Server crash with Signal 6 (part 2)
Revision #2e3e818 2015-04-23 19:11:06 +0200
MDEV-7445: Server crash with Signal 6
Revision #7ccde2c 2015-04-23 19:04:11 +0200
MDEV-7565: Server crash with Signal 6 (part 2)
Revision #006acf7 2015-09-30 10:49:45 +0300
Bug #68148: drop index on a foreign key column leads to missing table MDEV-8845: Table disappear after modifying FK
Revision #a95711e 2015-09-29 08:39:54 +0300
MDEV-8855: innodb.innodb-fk-warnings fails on Windows
Revision #02a38fd 2015-09-24 17:25:52 +0200
MDEV-8624: MariaDB hangs on query with many logical condition
Revision #f804b74 2015-09-28 03:40:29 +0300
MDEV-8154 rpl.show_status_stop_slave_race-7126 sporadically causes internal check failure
Revision #ce7d8c5 2015-09-27 18:01:47 +0300
MDEV-7330 plugins.feedback_plugin_send fails sporadically in buildbot
Revision #bdcf370 2015-09-27 16:00:48 +0300
MDEV-7933 plugins.feedback_plugin_send depends on being executed after plugins.feedback_plugin_load
Revision #2563609 2015-09-26 02:51:29 +0300
Increased the version number
Revision #86ed494 2015-09-26 02:48:55 +0300
MDEV-8849 rpl.rpl_innodb_bug30888 sporadically fails in buildbot with testcase timeout
Revision #dca4ab9 2015-09-24 21:24:28 +0300
MDEV-8841 innodb_zip.innodb-create-options fails in buildbot
Revision #5cc149f 2015-09-24 10:28:47 +0200
The compiler warnings fixed.
Revision #29ac245 2015-09-07 13:13:52 +0200
MDEV-8473: mysqlbinlog -v does not properly decode DECIMAL values in an RBR log
Revision #102a85f 2015-09-03 18:00:43 +0200
MDEV-8663: IF Statement returns multiple values erroneously (or Assertion `!null_value' failed in Item::send(Protocol*, String*))
Revision #fa51f70 2015-08-04 23:42:44 +0200
correct the NULL-pointer test
Revision #877de3a 2015-07-30 22:08:39 +0300
MDEV-8554: Server crashes in base_list_iterator::next_fast ...
Revision #1b0c81c 2015-08-01 15:02:14 +0200
5.5.44-37.3
Revision #96badb1 2015-07-31 22:09:46 +0200
MDEV-7821 Server crashes in Item_func_group_concat::fix_fields on 2nd execution of PS
Revision #409709e 2015-07-31 20:33:10 +0200
compilation error on windows
Revision #79deefc 2015-07-31 12:31:37 +0200
MDEV-8340 Add "mysqlbinlog --binlog-row-event-max-size" support for MariaDB 5.5
Revision #4d5772c 2015-07-31 10:13:01 +0200
MDEV-7810 Wrong result on execution of a query as a PS (both 1st and further executions)
Revision #2721d69 2015-07-28 19:11:53 +0200
MDEV-8352 Increase Diffie-Helman modulus to 2048-bits
Revision #bfe2689 2015-07-31 13:13:39 +0400
MDEV-8379 - SUSE mariadb patches
Revision #360e597 2015-07-31 12:06:29 +0300
Make sure name buffer has string end marker on correct place.
Revision #1ad294e 2015-07-30 18:51:44 +0400
MDEV-7821 - Server crashes in Item_func_group_concat::fix_fields on 2nd execution of PS
Revision #fa765a4 2015-07-31 08:52:24 +0300
MDEV-6697: Improve foreign keys warnings/errors
Revision #e05cd97 2015-07-29 05:58:45 +0300
MDEV-8524: Improve error messaging when there is duplicate key or foreign key names
Revision #392df76 2015-07-23 12:50:58 +0400
MDEV-4017 - GET_LOCK() with negative timeouts has strange behavior
Revision #e40bc65 2015-07-25 15:14:40 +0300
Fixed memory loss detected on P8. This can happen when we call after_flush but never call after_rollback() or after_commit().
Revision #7115341 2015-07-23 14:57:12 +0300
Fixed warnings and errors found by buildbot
Revision #7a96702 2015-07-21 12:12:58 +0300
MDEV-8474: InnoDB sets per-connection data unsafely
Revision #00d3b20 2015-07-17 00:06:27 +0300
MDEV-8432 Slave cannot replicate signed integer-type values with high bit set to 1
Revision #44de090 2015-07-17 00:02:25 +0300
MDEV-8432 Slave cannot replicate signed integer-type values with high bit set to 1
Revision #bc30046 2015-06-26 14:48:22 +0300
Fix for MDEV-8301; Statistics for a thread could be counted twice in SHOW STATUS while thread was ending
Revision #67c56ab 2015-06-25 23:34:54 +0300
Simple cleanups - Removing use of calls to current_thd - More DBUG_PRINT - Code style changes - Made some local functions static Ensure that calls to print_keyuse are locked with mutex to get all lines in same debug packet
Revision #8c81575 2015-06-25 23:26:29 +0300
Problem was that for cases like: SELECT ... WHERE XX IN (SELECT YY) this was transformed to something like: SELECT ... WHERE IF_EXISTS(SELECT ... HAVING XX=YY)
Revision #2e941fe 2015-06-25 23:18:48 +0300
Fixed crashing bug when using ONLY_FULL_GROUP_BY in a stored procedure/trigger that is repeatedly executed. This is MDEV-7601, including its sub tasks MDEV-7594, MDEV-7555, MDEV-7590, MDEV-7581, MDEV-7589
Revision #d199a0f 2015-06-11 17:47:52 +0200
more renames after tokudb merge
Revision #b96c196 2015-06-11 16:48:10 +0200
Item_cache::safe_charset_converter() fixes
Revision #7c98e8a 2015-06-11 16:43:56 +0200
fix after the tokudb ft-index merge
Revision #5a44e1a 2015-06-09 22:11:22 +0200
tests for MDEV-7937: Enforce SSL when --ssl client option is used
Revision #80f6b22 2015-06-09 16:08:09 +0400
MDEV-3870 - Valgrind warnings on OPTIMIZE MyISAM or Aria TABLE with disabled keys
Revision #3a50a8c 2015-06-09 13:50:43 +0400
MDEV-363 - Server crashes in intern_plugin_lock on concurrent installing semisync plugin and setting rpl_semi_sync_master_enabled
Revision #49a3392 2015-06-09 11:57:31 +0400
MDEV-363 - Server crashes in intern_plugin_lock on concurrent installing semisync plugin and setting rpl_semi_sync_master_enabled
Revision #e5005ce 2015-06-09 18:06:41 +0200
disable ssl for ssl-disabled tests
Revision #992d782 2015-06-09 18:56:09 +0300
MDEV-6735: Range checked for each record used with key (also MDEV-7786, MDEV-7923)
Revision #5d57e2d 2015-06-09 16:46:45 +0300
Fix tests for 7937
Revision #be5035b 2015-06-09 15:59:29 +0300
Added tests for MDEV-7937
Revision #4ef7497 2015-06-09 14:08:44 +0300
MDEV-7937: Enforce SSL when --ssl client option is used
Revision #56e2d83 2015-05-02 08:45:10 +0200
MDEV-7695 MariaDB - ssl - fips: can not connect with --ssl-cipher=DHE-RSA-AES256-SHA - handshake failure
Revision #92b3659 2015-06-09 12:05:06 +0400
MDEV-7268 Column of table cannot be converted from type 'decimal(0,?)' to type ' 'decimal(10,7)' Changing the error message to: "...from type 'decimal(0,?)/*old*/' to type ' 'decimal(10,7)'..." So it's now clear that the master data type is OLD decimal.
Revision #b1e1039 2015-06-09 07:36:24 +0400
MDEV-8286 Likely a redundant declaration of Item_cache::used_table_map
Revision #a4d93e0 2015-06-05 20:05:08 +0200
MDEV-8050 sphinx test cases cannot run with sphinxsearch-2.2.6
Revision #b41ad55 2015-06-08 15:09:20 +0200
update tokudb version
Revision #1707cfc 2015-06-08 21:55:52 +0500
MDEV-8211 plugins.server_audit fails sporadically in buildbot. More fixes to assure the order of queries in the log.
Revision #87088b9 2015-06-08 21:44:13 +0500
MDEV-8211 plugins.server_audit fails sporadically in buildbot. This test also should be fixed - delay added so the connection event doesn't happen before the query.
Revision #96b3703 2015-06-08 21:40:17 +0500
MDEV-8211 plugins.server_audit fails sporadically in buildbot. Connection event can happen before the query ends. Added a delay to confirm the order.
Revision #a765cca 2015-06-08 20:50:40 +0400
MDEV-8067 correct fix for MySQL Bug # 19699237: UNINITIALIZED VARIABLE IN ITEM_FIELD::STR_RESULT
Revision #b37b52a 2015-06-08 13:47:07 +0500
MDEV-4922 Stored Procedure - Geometry parameter not working. Fhe GEOMETRY field should be handled just as the BLOB field. So that was fiexed in field_conv. One additional bug was found and fixed meanwhile - thet the geometry field subtypes should also be merged for UNION command.
Revision #69ed429 2015-06-08 12:09:13 +0500
MDEV-7500 thread_handling option in my.cnf is not passing "connect events" to audit plugin. The MYSQL_AUDIT_NOTIFY_CONNECTION_CONNECT() call moved to the login_connection() function. So that it'll be invoked in any thread handling mode.
Revision #1ae05db 2015-06-07 15:40:42 +0500
MDEV-8078 Memory disclosure/buffer overread on audit plugin. If the SET PASSWORD query doesn't have the password string, the parsing of it can fail. It manifested first in MySQL 5.6 as it started to hide password lines sent to the plugins. Fixed by checking for that case.
Revision #db0ecf2 2015-06-06 19:12:44 +0500
MDEV-8032 [PATCH] audit plugin - csv output broken. Symbols like TAB or NEWLINE should be escaped, which was forgotten in one place.
Revision #6264451 2015-06-06 16:13:51 +0200
MDEV-8114: server crash on updates with joins still on 10.0.18
Revision #9a3b975 2015-06-05 09:51:17 +0200
Merge branch '5.5' into bb-5.5-serg
Revision #a2bb9d2 2015-06-04 16:04:05 +0400
MDEV-7505 - Too large scale in DECIMAL dynamic column getter crashes mysqld
Revision #b611ac0 2015-06-03 14:30:09 +0400
MDEV-6236 - [PATCH] mysql_tzinfo_to_sql may produce invalid SQL
Revision #af2256f 2015-06-03 13:59:58 +0400
MDEV-7207 - ALTER VIEW does not change ALGORITM
Revision #ae0c576 2015-06-05 02:14:49 +0200
Merge branch 'merge/merge-xtradb-5.5' into bb-5.5-serg
Revision #f84f577 2015-06-05 02:06:51 +0200
Merge tag 'mysql-5.5.44' into bb-5.5-serg
Revision #f07b346 2015-06-05 02:04:32 +0200
do not re-populate I_S tables in subqueries
Revision #1ff423d 2015-06-04 21:12:29 +0400
MDEV-8243 configure defines to empty string, not 1
Revision #750aa8b 2015-06-04 18:58:12 +0200
5.5.43-37.2
Revision #980bdc3 2015-06-04 17:39:05 +0200
followup: CREATE SERVER tests should not be run for embedded
Revision #a477cd1 2015-06-03 23:31:05 +0300
MDEV-6500: Stale data returned after TRUNCATE PARTITION operation
Revision #08fa02c 2015-06-04 18:51:30 +0400
Some MYD files (e.g. in mysql-test/std_data) could erroneously be treated by git as text files.
Revision #9da8a8f 2015-06-04 18:49:12 +0400
MDEV-7269 mysqlbinlog Don't know how to handle column type=0 meta=0 (0000)# MDEV-8267 Add /*old*/ comment into I_S.COLUMN_TYPE for old DECIMAL
Revision #a8b8544 2015-06-04 13:00:53 +0300
MDEV-7906: InnoDB: Failing assertion: prebuilt->sql_stat_start || trx->state == 1 on concurrent multi-table update
Revision #7b05650 2015-06-03 20:24:51 +0200
Merge tag 'tokudb-engine/tokudb-7.5.7' into 5.5
Revision #e500c47 2015-06-03 19:47:46 +0200
Merge tag 'tokudb-ft-index/tokudb-7.5.7' into 5.5
Revision #934a18d 2015-06-03 19:42:34 +0200
.gitattributes: *.dat files should not be CRLF converted
Revision #c79e98e 2015-06-03 18:45:08 +0200
MDEV-8085 main.group_by failed in buildbot
Revision #5d8cee4 2015-06-03 17:11:07 +0200
MDEV-8224 Server crashes in get_server_from_table_to_cache on empty name
Revision #33d480f 2015-06-03 16:33:10 +0200
MDEV-4608 deb packages for jessie
Revision #f806b4d 2015-06-03 12:13:43 +0200
MDEV-8124 mysqlcheck: --auto-repair runs REPAIR TABLE instead of REPAIR VIEW on views
Revision #535b514 2015-06-03 10:35:34 +0200
MDEV-8123 mysqlcheck: new --process-views option conflicts with --quick, --extended and such
Revision #64569fa 2015-06-03 11:11:53 +0200
parser: better error messages for CHECK/REPAIR VIEW
Revision #0ffef5d 2015-06-03 09:54:56 +0200
MDEV-8052 abi detection incorrect with clang
Revision #8e7d665 2015-06-02 22:07:47 +0200
CRLF->LF
Revision #6bd76f8 2015-05-27 10:27:18 +0400
Merge pull request #73 from akopytov/MDEV-7658-5.5
Revision #70bc0a3 2015-05-26 23:56:00 +0300
Fixes MDEV-7658: MDEV-7026 fix reintroduces MDEV-6615 on AArch64
Revision #5d02928 2015-05-16 10:26:34 +0200
remove second @ from CONFIGURE_FILE (... @ONLY@)
Revision #6f8558b 2015-05-12 14:19:30 -0400
Fix for debug build failure
Revision #373d092 2015-05-08 17:19:48 +0300
Fix win/ files to be stored with LF in repository
Revision #23b2b95 2015-05-08 17:19:06 +0300
Update .gitattributes
Revision #6ef3c7d 2015-05-08 17:09:45 +0300
Updated .gitattributes
Revision #0014bdc 2015-05-07 22:18:34 +0200
MDEV-8115 mysql_upgrade crashes the server with REPAIR VIEW
Revision #8350ea0 2015-05-07 13:04:03 +0300
Fix compiler error if compiler does not support c99 style initializers.
Revision #f704b33 2015-05-06 16:47:23 +0300
Merge pull request #52 from openquery/MDEV-8053-c99-style-for-structure-members
Revision #4d606cb 2015-04-24 23:17:16 +1000
c99 style for assigning structure members
Lib/
* added 'strf_secs' and 'strp_secs' to ldap.functions.__all__
* fixed regression introduced with 2.4.26:
ldif.LDIFParser did not fully parse LDIF records without trailing empty
separator line
* Improved support for using the STDCALL calling convention in winsqlite3.dll.
* Fix the sqlite3_trace_v2() interface so that it is disabled if either the callback or the mask arguments are zero, in accordance with the documentation.
* Fix commenting errors and improve the comments generated on EXPLAIN listings when the -DSQLITE_ENABLE_EXPLAIN_COMMENTS compile-time option is used.
* Fix the ".read" command in the command-line shell so that it understands that its input is not interactive.
* Correct affinity computations for a SELECT on the RHS of an IN operator.
* The ORDER BY LIMIT optimization is not valid unless the inner-most IN operator loop is actually used by the query plan. Fix for ticket 0c4df46116e90f92.
* Fix an internal code generator problem that was causing some DELETE operations to no-op.
shared-mime-info 1.7 (2016-09-05)
* Add mime-types for a number of video games systems ROMS
(Atari 7800, Atari 2600, Neo Geo Pocket, Sega CD/Mega-CD, Game Boy Color,
Genesis 32X, Sega SG-1000, Sega Game Gear, Sega Pico)
* Add mime-type for .tar.lz and tar.lz4 archives
* Add mime-type for Jupyter Notebook files
* Add Flatpak mime-types and add compatibility for xdg-app ones
* Add *.dib glob to BMP images
* Use official IANA mime-types for WMF and EMF images
* Add application/raml+yaml mime-type
* Add GPX mimetypes as found in the wild
* Add application/vnd.squashfs and application/vnd.snap mime-types
* Add mime-type for IGES documents
* Add mime-types for Sass CSS pre-processor files
* Add mime-type for Twig templates
* Add alias application/nappdf for application/pdf
* Add mimetype for AppImage
* Add application/x-bsdiff mime-type
* Add Gherkin feature specifications mime-type
* Use official IANA registered type for application/vnd.chess-pgn
* Use new IANA registered type for application/geo+json
* Use official IANA registered type for application/vnd.comicbook+zip
* Use official IANA registered type for application/vnd.rar
* Use official IANA registered type for application/vnd.framemaker
* Improve VRML mime-type
* Better MPEG-2 TS magic
* Better magic for 669 tracker MOD files
* Fix misdetection of zip files as their content
* Fix multi-page DjVu detection by file
* Fix TGA magic detection
* Fixes related to AMR audio files
* Remove "*.sg" glob for Sega Master System ROM types
Bugs fixed and general changes
- #1028 - allow the ensure_join method to accept on and join_type
parameters. Thanks @paulbooth.
- #1032 - fix bug related to coercing model instances to database
parameters when the model's primary key is a foreign key.
- #1035 - fix bug introduced in 2.8.2, where I had added some
logic to try and restrict the base Model class from being
treated as a "real" Model.
- #1039 - update documentation to clarify that lists or tuples are
acceptable values when specifying SQLite PRAGMA statements.
- #1041 - PyPy user was unable to install Peewee. (Who in their
right mind would ever use PyPy?!) Bug was fixed by removing the
pre-generated C files from the distribution.
- #1043 - fix bug where the speedups C extension was not calling
the correct model initialization method, resulting in model
instances returned as results of a query having their dirty flag
incorrectly set.
- #1048 - similar to #1043, add logic to ensure that fields with
default values are considered dirty when instantiating the
model.
- #1049 - update URL to APSW.
- Fixed unreported bug regarding TimestampField with zero values
reporting the incorrect datetime.
New stuff
- djpeewee extension module now works with Django 1.9.
- TimestampField is now an officially documented field.
- #1050 - use the db_column of a ForeignKeyField for the name of
the ObjectIdDescriptor, except when the db_column and field name
are the same, in which case the ID descriptor will be named
<field_name>_id.
=== 4.38.0 (2016-09-01)
* Support :driver_options option when using the postgres adapter with pg driver (jeremyevans)
* Don't use after commit/rollback database hooks if the model instance methods are not overridden (jeremyevans)
* Add SQL::NumericMethods#coerce, allowing code such as Sequel.expr{1 - x} (jeremyevans)
* Support ** operator for exponentiation on expressions, similar to +, -, *, and / (jeremyevans)
* Add Sequel::SQLTime.date= to set the date used for SQLTime instances (jeremyevans)
Bugs Fixed
----------
Replication: mysqlbinlog --read-from-remote-server log1 log2 was opening a new connection for log2 without freeing the connection used for log1. Thanks to Laurynas Biveinis for the contribution. (Bug 81675, Bug 23540182)
For mysqld_safe, the argument to --malloc-lib now must be one of the directories /usr/lib, /usr/lib64, /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In addition, the --mysqld and --mysqld-version options can be used only on the command line and not in an option file. (Bug 24464380)
It was possible to write log files ending with .ini or .cnf that later could be parsed as option files. The general query log and slow query log can no longer be written to a file ending with .ini or .cnf. (Bug 24388753)
Privilege escalation was possible by exploiting the way REPAIR TABLE used temporary files. (Bug 24388746)
Certain internal character-handling functions could fail to handle a too-large character and cause a server exit. (Bug 23296299)
A blank server name in CREATE SERVER statements produced a server exit rather than an error. (Bug 23295288)
The optimizer failed to check a function return value for an area calculation, leading to a server exit. (Bug 23280059)
A prepared statement that used a parameter in the select list of a derived table that was part of a join could cause a server exit. (Bug 22392374, Bug 24380263)
MEDIUMINT columns used in operations with long integer values could result in buffer overflow. (Bug 19984392)
EINTR handling in the client library has been fixed so that interrupted read and write calls are retried. Previously, EINTR was ignored. (Bug 82019, Bug 23703570)
Test Suite Notes
----------------
In mysql-test-run.pl, a limit of 50 was imposed on the number of workers for parallel testing, which on systems with more than 50 CPUs resulted in exhaustion of unique thread IDs. The ID-exhaustion problem has been corrected, and the limit of 50 on number of workers has been lifted. Thanks to Daniel Black for the patch on which this change was based. Additionally, these changes were made:
To avoid idle workers, the number of parallel workers now is limited to the number of tests.
Previously, if --parallel=auto was given and the MTR_MAX_PARALLEL environment variable was not set, a limit of 8 was imposed on the number of parallel workers. This limit has been lifted.
(Bug 22342399, Bug 79585)
Functionality Added or Changed
------------------------------
CMake support for compiling with Solaris Studio 12.5 was added. (Bug 82249, Bug 24303829, Bug 81274, Bug 23212938)
Bugs Fixed
----------
InnoDB: An operation that dropped and created a full-text search table raised an assertion. (Bug 24315031)
InnoDB: Accessing full-text search auxiliary tables while dropping the indexed table raised an assertion. (Bug 24009272)
InnoDB: An online DDL operation on a table with indexed BLOB columns raised an assertion during logging of table modifications. (Bug 23760086)
Replication: mysqlbinlog --read-from-remote-server log1 log2 was opening a new connection for log2 without freeing the connection used for log1. Thanks to Laurynas Biveinis for the contribution. (Bug 81675, Bug 23540182)
Replication: With binlog_row_image=FULL, when updating single tables temporary tables were unnecessarily being used. The fix ensures single table update follows the same pattern as multi-table update. (Bug 79867, Bug 22510353)
For mysqld_safe, the argument to --malloc-lib now must be one of the directories /usr/lib, /usr/lib64, /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In addition, the --mysqld and --mysqld-version options can be used only on the command line and not in an option file. (Bug 24464380)
It was possible to write log files ending with .ini or .cnf that later could be parsed as option files. The general query log and slow query log can no longer be written to a file ending with .ini or .cnf. (Bug 24388753)
Privilege escalation was possible by exploiting the way REPAIR TABLE used temporary files. (Bug 24388746)
If the basedir system variable was set at server startup from the command line or option file, the value was not normalized (on Windows, / was not replaced with /). (Bug 23747899, Bug 82125)
In-place ALTER TABLE operations which when executed separately caused no table rebuild could when combined into a single statement result in a table rebuild. (Bug 23475211, Bug 81587)
A blank server name in CREATE SERVER statements produced a server exit rather than an error. (Bug 23295288)
A prepared statement that used a parameter in the select list of a derived table that was part of a join could cause a server exit. (Bug 22392374, Bug 24380263)
MEDIUMINT columns used in operations with long integer values could result in buffer overflow. (Bug 19984392)
A spurious ER_NO_SUCH_TABLE error could occur when attempting to execute a prepared CREATE TABLE ... SELECT statement that used a temporary table in the FROM clause and called a stored function. The same error could occur for a nonprepared version of the statement if used in a stored procedure when the procedure was re-executed. (Bug 16672723, Bug 68972)
EINTR handling in the client library has been fixed so that interrupted read and write calls are retried. Previously, EINTR was ignored. (Bug 82019, Bug 23703570)
default and bump PKGREVISION to 2.
Also, don't depend on python unless the python option is turned
on, and make the lua bindings behave themselves on netbsd where
there's a copy of lua in base.
Note that the ruby bindings are built in a separate package
(databases/ruby-rrdtool) ...probably the python bindings should be as
well. Also note that there's another apparently different set of
python bindings in databases/py-python-rrdtool. I have no idea which
is preferred.
------------------------------------------
--- 2.0.62 2016/01/30
Zebra SCM moved to GitHub https://github.com/indexdata/idzebra
Make packages for Ubuntu 15.10/Wily Werewolf.
Fix incorrect scan terms with result set limit. Closes#1
Fix documentation of of chr's equivalent directive ZEB-672
And add a few tests for the behavior.
Allow @attr 2=102 for numeric index
--- 2.0.61 2015/09/15
Upgrade to debhelper version 7
Not upgrading to version 9 now. It would move libraries and modules
to /usr/lib/{arch}.
Many documentation fixes. Thanks to David Crossley.
Build: Remove Debian squeeze. Add CentOS 7. Remove Ubuntu Saucy.
Add Ubuntu Vivid.
Fix modulePath for examples ZEB-665
Fix typo in path to oai-pmh example
--- 2.0.60 2015/02/06
Fix ICU phrase searches for terms split by ICU ZEB-664
Update Visual Studio nmake file for VS 2013.
was being checked and not the gcc toolchain's use of __aarch64__.
db6 does support the 64-bit ARM platform.
previous condition put back as it was prior.
ride PKGREVISION bump
build on aarch64 Linux
Also add '--enable-dbm' to CONFIGURE_ARGS (legacy dbm interface) in
order to be compatible with db4 builds which happens to fix obscure
build errors on aarch64 Linux with packages such as python27.
bump PKGREVISION to pick up change
Update COMMENT
Upstream changes:
bsddb3-6.2.1: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.3-3.5, and Berkeley DB 4.7, 4.8, 5.1, 5.3, 6.1 and 6.2. (20160510)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use Berkeley DB version up to (and including) 5.3. You can use that Berkeley DB version with this bindings release.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Correctly detect Berkeley DB installations in modern 64 bits Debians.
bsddb3-6.2.0: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.3-3.5, and Berkeley DB 4.7, 4.8, 5.1, 5.3, 6.1 and 6.2. (20160421)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use Berkeley DB version up to (and including) 5.3. You can use that Berkeley DB version with this bindings release.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Support Berkeley DB 6.2.x.
Declare Python 3.5 support for PyPI.
Drop support for Python 3.2. If you need compatibility with that version, you can keep using old releases of these bindings.
Drop support for Berkeley DB 5.0, 5.2 and 6.0. If you need compatibility with those versions, you can keep using old releases of these bindings.
bsddb3-6.1.1: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.2-3.5, and Berkeley DB 4.7-6.1. (20151107)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use BDB version up to (and including) 5.3.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Compatibility with Python 3.5.
Code cleanup after dropping Python 2.4/2.5 support.
PGP key changed.
Support for DB_FORCESYNCENV flag in "DB_ENV.close()".
Support for DB_LOG_NOSYNC flag in "DB_ENV.log_set_config()".
Fix tests under Windows. See https://bugs.python.org/issue22943 .
Solve an incorrect parameter verification with the "DB.compact()" method call.
Solve a compilation warning when compiling the bindings for Python 3.5 and Berkeley DB 4.8, 5.0 or 5.1.
bsddb3-6.1.0: Testsuite verified with Unix 32 bit Python 2.6-2.7 and 3.2-3.4, and Berkeley DB 4.7-6.1. (20140721)
BEWARE: Oracle Berkeley DB version 6.x is licensed under AGPL3 or have a commercial license. If you need the old Berkeley DB license, you can still use BDB version up to (and including) 5.3.
If you are going to use replication (Replication Manager or Base Replication), you should use Berkeley DB 5.1 or up.
The minimum recommended version for advanced use is Berkeley DB 4.8.30.
Changes:
Support Berkeley DB 6.1.x.
Solve a ResourceWarning when compiling.
Drop support for Python 2.4, 2.5 and 3.1. If you need compatibility with those versions, you can keep using old releases of these bindings.
Drop support for Berkeley DB 4.3, 4.4, 4.5, 4.6. If you need compatibility with those versions, you can keep using old releases of these bindings.
From now on, our support reference is Red Hat Enterprise Linux 6.
Drop modules attributes "cvsid".
Drop (hidden) $Id$ keyword in the documentation.
Upstream changes:
2016-08-23 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.036)
Stable version, to include all changes since 4.035.
2016-08-19 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035_03)
* By mistake, when DBD::mysql was compiled against libmariadb, it
did not compile in SSL support.
Reported by Jitka Plesnikova @ Red Hat
(https://rt.cpan.org/Public/Bug/Display.html?id=116959)
(https://bugzilla.redhat.com/show_bug.cgi?id=1366773)
* If the database test server was not on localhost and the test database was
not yet created, we would not correctly create the test database.
Reported by Vladimir Marek.
(https://rt.cpan.org/Ticket/Display.html?id=112072)
2016-08-11 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035_02)
* Test 56connattr.t failed when run when performance schema is enabled, but
tests were run as a user with limited permissions.
Reported by J矇r繫me �t矇v矇.
(https://rt.cpan.org/Public/Bug/Display.html?id=115980)
* In 4.033_03 we added a patch from Petr P穩sa� @ Red Hat for a problem on
64-bit big-endian systems. The patch was applied but the unit test was not,
also, there was no entry in the change log.
Unit test provided by Vladimir Marek.
t/40server_prepare.t test failed on s390x platform. Server-prepared
values of types int, smallint, and tinyint are passed to application
as 32-bit integer. The same buffer was interpreted as long integer
by DBD::MySQL. This caused misaligned read/write and bogus
interpretation of the values.
(https://rt.cpan.org/Public/Bug/Display.html?id=57266)
* Remove dropdb, createdb, reload and shutdown admin functions from perldoc.
These are deprecated by the C API.
Use 'CREATE DATABASE..', 'DROP DATABASE...' and other SQL commands instead.
* Test rt75353-innodb-lock-timeout.t fails on MySQL Server 5.1 and earlier
because innodb_lock_wait_timeout is not modifyable per session.
* Test rt25389-bin-case.t does not work on MySQL Server < 5.1, reported by
GAAS.
2016-08-01 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035_01)
* Apparently, on t/31insertid.t, there is one test that fails when compiled
against libmysqlclient 5.7 or up; issuing a SELECT statement on the same
database handle that previously executed an INSERT clears
$dbh->{mysql_insertid}, while previously this was retained.
(https://rt.cpan.org/Ticket/Display.html?id=108000)
* Removed appveyor.yml and mysql.mtest from CPAN releases.
* Converted README.pod to README.md because of installation failures on
FreeBSD, reported by Don Randolph.
(https://rt.cpan.org/Public/Bug/Display.html?id=114177)
pkgsrc changes:
* Overhaul Makefile.
- Remove use of INSTALL_DIRS and simplify install process.
- Utilize pkgsrc SUBST_*.
- Stop other pkglint warninggs.
* Drop some dot files from installation.
Quote from Changes:
4.6.4 (2016-08-16)
- issue [security] Weaknesses with cookie encryption, see PMASA-2016-29
- issue [security] Improve session cookie code for openid.php and signon.php example files
- issue [security] Full path disclosure in openid.php and signon.php example files
- issue [security] Multiple XSS vulnerabilities, see PMASA-2016-30
- issue [security] Multiple XSS vulnerabilities, see PMASA-2016-31
- issue [security] Unsafe generation of BlowfishSecret (when not supplied by the user)
- issue [security] Referrer leak when phpinfo is enabled
- issue [security] PHP code injection, see PMASA-2016-32
- issue [security] Full path disclosure, see PMASA-2016-33
- issue [security] SQL injection attack, see PMASA-2016-34
- issue [security] Local file exposure through LOAD DATA LOCAL INFILE, see PMASA-2016-35
- issue [security] Local file exposure through symlinks with UploadDir, see PMASA-2016-36
- issue [security] Path traversal with SaveDir and UploadDir, see PMASA-2016-37
- issue [security] Multiple XSS vulnerabilities, see PMASA-2016-38
- issue [security] SQL injection vulnerability as control user, see PMASA-2016-39
- issue [security] SQL injection vulnerability, see PMASA-2016-40
- issue [security] Denial-of-service attack through transformation feature, see PMASA-2016-41
- issue [security] SQL injection vulnerability as control user, see PMASA-2016-42
- issue [security] Verify data before unserializing, see PMASA-2016-43
- issue [security] Use HTTPS for wiki links
- issue Remove Swekey support
- issue [security] SSRF in setup script, see PMASA-2016-44
- issue [security] Denial-of-service attack with $cfg['AllowArbitraryServer'] = true and persistent connections, see PMASA-2016-45
- issue [security] Improve SSL certificate handling
- issue [security] Fix full path disclosure in debugging code
- issue [security] Possible circumvention of IP-based allow/deny rules with IPv6 and proxy server, see PMASA-2016-47
- issue [security] Detect if user is logged in, see PMASA-2016-48
- issue [security] Bypass URL redirection protection, see PMASA-2016-49
- issue [security] Referrer leak, see PMASA-2016-50
- issue [security] Reflected File Download, see PMASA-2016-51
- issue [security] ArbitraryServerRegexp bypass, see PMASA-2016-52
- issue [security] Denial-of-service attack by entering long password, see PMASA-2016-53
- issue [security] Remote code execution vulnerability when running as CGI, see PMASA-2016-054
- issue [security] Administrators could trigger SQL injection attack against users
- issue [security] Denial-of-service attack when PHP uses dbase extension, see PMASA-2016-55
- issue [security] Remove tode execution vulnerability when PHP uses dbase extension, see PMASA-2016-56
- issue [security] Denial-of-service attack by using for loops, see PMASA-2016-46
- issue Include X-Robots-Tag header in responses
- issue Enforce numeric field length when creating table
- issue Fixed invalid Content-Length in some HTTP responses
- issue #12394 Create view should require a view name
- issue #12391 Message with 'Change password successfully' displayed, but does not take effect
- issue Tighten control on PHP sessions and session cookies
- issue #12409 Re-enable overhead on server databases view
- issue #12414 Fixed rendering of Original theme
- issue #12413 Fixed deleting users in non English locales
- issue #12416 Fixed replication status output in Databases listing
- issue #12303 Avoid typecasting to float when not needed
- issue #12425 Duplicate message variable names in messages.inc.php
- issue #12399 Adding index to table shows wrong top navigation
- issue #12424 Fixed password change on MariaDB without auth plugin
- issue #12339 Do not error on unset server port
- issue #12422 Improvements to the original theme
- issue #12395 Do not try to load old transformation plugins
- issue #12423 Fixed replication status in database listing
- issue #12433 Copy table with prefix does not copy the indexes
- issue #12375 Search in database: Window content is not scrolling down when clicking first time on Browse link
- issue #12346 SQL Editor textareas can have their size increased from the top, distorting the page view
Security Issues
---------------
Two security holes have been closed by this release:
CVE-2016-5423: certain nested CASE expressions can cause the server to crash.
CVE-2016-5424: database and role names with embedded special characters can allow code injection during administrative operations like pg_dumpall.
The fix for the second issue also adds an option, -reuse-previous, to psql's \connect command. pg_dumpall will also refuse to handle database and role names containing line breaks after the update. For more information on these issues and how they affect backwards-compatibility, see the Release Notes.
Bug Fixes and Improvements
--------------------------
This update also fixes a number of bugs reported in the last few months. Some of these issues affect only version 9.5, but many affect all supported versions:
Fix misbehaviors of IS NULL/IS NOT NULL with composite values
Fix three areas where INSERT ... ON CONFLICT failed to work properly with other SQL features.
Make INET and CIDR data types properly reject bad IPv6 values
Prevent crash in "point ## lseg" operator for NaN input
Avoid possible crash in pg_get_expr()
Fix several one-byte buffer over-reads in to_number()
Don't needlessly plan query if WITH NO DATA is specified
Avoid crash-unsafe state in expensive heap_update() paths
Fix hint bit update during WAL replay of row locking operations
Avoid unnecessary "could not serialize access" with FOR KEY SHARE
Avoid crash in postgres -C when the specified variable is a null string
Fix two issues with logical decoding and subtransactions
Ensure that backends see up-to-date statistics for shared catalogs
Prevent possible failure when vacuuming multixact IDs in an upgraded database
When a manual ANALYZE specifies columns, don't reset changes_since_analyze
Fix ANALYZE's overestimation of n_distinct for columns with nulls
Fix bug in b-tree mark/restore processing
Fix building of large (bigger than shared_buffers) hash indexes
Prevent infinite loop in GiST index build with NaN values
Fix possible crash during a nearest-neighbor indexscan
Fix "PANIC: failed to add BRIN tuple" error
Prevent possible crash during background worker shutdown
Many fixes for issues in parallel pg_dump and pg_restore
Make pg_basebackup accept -Z 0 as no compression
Make regression tests safe for Danish and Welsh locales
- Recheck the list of slaves while OSC runs
- pt-osc should error if server is a slave in row based
replication
- pt-table-checksum should force replica table charset to utf8
- Added --create-table-engine param to pt-heartbeat
- SlowLogParser is able to handle dates in RFC339 format for MySQL
5.7
- pt-kill leaks memory each time it kills a query
- Large BLOB/TEXT/BINARY Produces NULL Checksum
- Fixed pt-archiver deletes wrong rows #103
- Added --slave-user and --slave-password to
pt-online-schema-change & pt-table-sync
- Handle GTID ranges where the left-side integer is larger than 9
- Remove extra word 'default' from the --verbose help
- add enum column type to is_char check so that values are
properly quoted
- some of the drivers now export client library functions to the
programmer via the dbi_driver_specific_function() interface
- if necessary, the drivers now support libdbi instances
- a segfault in the oracle driver caused by INSERT statements was
fixed
- the pgsql driver now supports features specific to PostgreSQL 9
and later
- drivers now support transactions and savepoints if the
underlying database engines do
- additional libdbi hint about position in a result set allows
tremendous speedup of sequential reads from MySQL result sets
- various memory leaks were plugged
- database specific test scripts allow tests without affecting
existing database clusters
- completely rewritten test kit increases coverage and improves
error reporting
Bugfixes
- libdbi now supports using custom driver functions correctly
(none of the drivers had implemented this feature before
libdbi-drivers 0.9.0, so this was not really a problem).
- a variety of other bug fixes too numerous to list here, see
ChangeLog
Improvements
- libdbi now supports several independent "instances" per
process. This makes the library safe to use in programs that
dlopen() plugins at runtime which in turn are linked against
libdbi. The new function dbi_initialize_r() creates a handle
which the functions dbi_shutdown_r(), dbi_set_verbosity_r(),
dbi_driver_list_r(), dbi_driver_open_r(), and dbi_conn_new_r()
use to operate on a particular instance. A new function
dbi_driver_get_instance() helps to determine the instance at
runtime.
The old interface (with just one instance per process which is
managed internally) is still around but deprecated. See the file
UPGRADING for detailed instructions.
- libdbi now provides functions for managing transactions and
savepoints
- libdbi now provides a hint to drivers indicating the current
position in a result set. This allows drivers to implement
additional optimizations
- the libtool library versioning numbers were now set
appropriately (they had fallen out of maintenance somehow in
the past), and starting with this release the release number
will match the libtool numbering scheme. libtool manages shared
objects in a way to allow the loader to detect whether an
application was linked against a compatible version of
a library. This will avoid runtime errors in future releases
if backwards-incompatible changes are necessary.
- pgk-config (http://pkg-config.freedesktop.org/wiki/) is now
supported
- if CFLAGS is set in the environment, it is now used
appropriately in ./configure
=== 4.37.0 (2016-08-01)
* Add support for regular expression matching on Oracle 10g+ using REGEXP_LIKE (johndcaldwell) (#1221)
* Recognize an additional disconnect error in the postgres adapter (jeremyevans)
* Make connection pool remove connections for disconnect errors not raised as DatabaseDisconnectError (jeremyevans)
* Support mysql2 0.4+ native prepared statements and bound variables (jeremyevans)
* Add Database#values for VALUES support on SQLite 3.8.3+ (jeremyevans)
* Support create_view :columns option on SQLite 3.9.0+ (jeremyevans)
* Make migration reverser handle alter_table add_constraint using a hash as the first argument (soupmatt) (#1215)
* Make ASTTransformer handle Sequel.extract (jeremyevans) (#1213)
Add flag for Darwin linker to resolve symbols from external libraries at
runtime.
Handle dylib file extension for module.
Add comment to describe patch-aa.
ok alnsn@
2.4.0 (2016-08-17)
- ping now ignores all TransportError exceptions and just returns
False
- expose scroll_id on ScanError
- increase default size for scan helper to 1000
- changed Transport.perform_request to just return the body, not
status as well.
2.3.0 (2016-02-29)
- added client_key argument to configure client certificates
- debug logging now includes response body even for failed requests
2.3.5
There are no changes in Elasticsearch 2.3.5 except for the version
bump. This is a compatibility release for bug fixes in Marvel,
Watcher, and Shield.
2.3.4
Bulk
- Copy headers and context to individual requests inside a bulk
CAT API
- Fix merge stats rendering in RestIndicesAction
- Expand wildcards to closed indices in /_cat/indices
Cluster
- Fix block checks when no indices are specified
Core
- Fix misplaced cast when parsing seconds
Highlighting
- Skip all geo point queries in plain highlighter
Internal
- Fix filtering of node ids for TransportNodesAction
Percolator
- Fixed NPE when percolator filter option is "empty".
REST
- Do not decode path when sending error
Translog
- Translog can delete valid .ckp file when views are closed after
the translog
- Dates
Upgrade joda-time to 2.9.4
* Dario Teixeira: migrate syntax extension from OCaml-pcre to OCaml-re.
* Rudi Grinberg: migrate core library from OCaml-pcre to OCaml-re.
* Rudi Grinberg: add unit tests for regular expressions.
* Evgenii Lepikhin: add support for types UUID and JSONB.
* Philippe Wang: add support for type CITEXT.
Changed default configuration setting for loadable extensions
on Mac OS X. Due to frequent installation issues the default
setting is now to turn off loadable extensions on that platform.
You will have to explicitly turn them on if you need them.
Fixed a bug finalizing user-defined functions for a database.
More build process improvements for Homebrew users.
Improved build process for Homebrew users.
Major API change that is compatible with major release series 2:
It is now possible to return errors from user-defined SQL-functions
by simply raising (arbitrary) exceptions. This somewhat
tricky internal change eliminates the need for Data.ERROR and
reestablishes compatibility with major release series 2.
Sorry for the churn, but the more elegant solution was not
quite obvious!
Added user function error handling (major API change).
Fixed a build problem due to Oasis/ocamlbuild inconsistency.
Fixed a callback locking bug when encountering rows containing
unexpected NULLs.
- The driver can now use the native TLS and crypto functions
included in Mac OS X and Windows.
- The driver implements the MongoDB Command Monitoring Spec.
- New functions mongoc_client_set_error_api and
mongoc_client_pool_set_error_api
allow applications to distinguish client and server errors.
- Unacknowledged writes (writes whose mongoc_write_concern_t "w"
value is zero) now reply with an empty document instead of one
with nInserted: 0, nUpdated: 0, and so on.
- Public API For Higher-Level Drivers
- New connection string option "localThresholdMS".
- zSeries, POWER8, and ARM 64-bit platform support.
- Performance enhancements, reduce allocation and copying in
command code.
- All man page names now begin with "mongoc_" to avoid install
conflicts.
- New function mongoc_gridfs_file_set_id.
* A performance enhancement to the page-cache "truncate" operation reduces COMMIT time by dozens of milliseconds on systems with a large page cache.
* Fix to the --rbu option of sqldiff.
Added support for WITHOUT ROWID virtual tables.
Improved the query planner so that the OR optimization can be used on virtual tables even if one or more of the disjuncts use the LIKE, GLOB, REGEXP, MATCH operators.
Added the CSV virtual table for reading RFC 4180 formatted comma-separated value files.
Added the carray() table-valued function extension.
Enabled persistent loadable extensions using the new SQLITE_OK_LOAD_PERMANENTLY return code from the extension entry point.
Added the SQLITE_DBSTATUS_CACHE_USED_SHARED option to sqlite3_db_status().
Add the vfsstat.c loadable extension - a VFS shim that measures I/O together with an eponymous virtual table that provides access to the measurements.
Improved algorithm for running queries with both an ORDER BY and a LIMIT where only the inner-most loop naturally generates rows in the correct order.
Enhancements to Lemon parser generator, so that it generates a faster parser.
The PRAGMA compile_options command now attempts to show the version number of the compiler that generated the library.
Enhance PRAGMA table_info so that it provides information about eponymous virtual tables.
Added the "win32-none" VFS, analogous to the "unix-none" VFS, that works like the default "win32" VFS except that it ignores all file locks.
The query planner uses a full scan of a partial index instead of a full scan of the main table, in cases where that makes sense.
Allow table-valued functions to appear on the right-hand side of an IN operator.
Created the dbhash.exe command-line utility.
Added two new C-language interfaces: sqlite3_expanded_sql() and sqlite3_trace_v2(). These new interfaces subsume the functions of sqlite3_trace() and sqlite3_profile() which are now deprecated.
Added the json_quote() SQL function to the json1 extension.
Disable the authorizer callback while reparsing the schema.
Added the SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION compile-time option and turned that option on by default when building the command-line shell.
Bug Fixes:
Fix the ALTER TABLE command so that it does not corrupt descending indexes when adding a column to a legacy file format database.
Fix a NULL-pointer dereference/crash that could occurs when a transitive WHERE clause references a non-existent collating sequence.
Improved the cost estimation for an index scan which includes a WHERE clause that can be partially or fully evaluated using columns in the index and without having to do a table lookup. This fixes a performance regression that occurred for some obscure queries following the ORDER BY LIMIT optimization introduced in version 3.12.0.
Bugs fixed and general cleanups
- fixed some bugs related to the Cython extension build process.
- allow blanks and perform type conversion when using the db_url
extension
- added the ability to query using the <foreign_key>_id attribute.
- ensure that peewee.OperationalError is raised consistently when
using the RetryOperationalError mixin.
- ensure that pwiz will import the appropriate extensions when
vendor-specific fields are used.
- ensure that pwiz-generated models containing UnknownField
placeholders do not blow up when you instantiate them.
- correctly limit the length of automatically-generated index
names.
- fixed bug where BlobField could not be used if it's parent model
pointed to an uninitialized database Proxy.
- greater consistency with the conversion to Python data-types
when performing aggregations, annotations, or calling scalar().
- ensure the correct data-types are used when initializing a
connection pool.
- fix bug where Signal subclasses were not returning rows affected
on save.
- added documentation about SQLite limits and how they affect
insert_many.
- better warnings regarding C extension compilation, thanks
@dhaase-de.
- fix bug where table names starting with numbers generated
invalid table names when using pwiz.
- fix bug where parameter was not being used. Thanks @jberkel.
- fixed the way SqliteExtDatabase handles the automatic rowid (and
docid) columns. Thanks for alerting me to the issue and
providing a failing test case @jberkel.
- fix obscure bug relating to cloning foreign key fields twice.
- allow set instances to be used on the right-hand side of IN
exprs.
- fix behavior where the default id primary key was inherited
regardless. When users would inadvertently include it in their
queries, it would use the table alias of it's parent class.
- add support for db_column in djpeewee
- fix the behavior of truncate_date with Postgresql. Thanks
@Zverik.
- allow DATABASE_URL as a recognized parameter to the Flask
config.
- correctly handle bytes wrapper used by PasswordField to bytes.
- when selecting and joining on multiple models, do not create
model instances when the foreign key is NULL.
- do not coerce the return value of function calls to COUNT or
SUM, since the python driver will already give us the right
Python value.
- use global state to resolve DeferredRelations, allowing for a
nicer API. Thanks @brenguyen711.
- attempt to avoid creating invalid Python when using pwiz with
MySQL database columns containing spaces. Yes, fucking spaces.
- fix bug in SQLite migrator which had a naive approach to fixing
indexes.
- explicitly check for None when determining if the database has
been set on ModelOptions. Thanks @joeyespo.
New stuff
- Added TimestampField for storing datetimes using integers.
Greater than second delay is possible through exponentiation.
- Added Database.drop_index() method.
- Added a max_depth parameter to the model_to_dict function in the
playhouse.shortcuts extension module.
- SelectQuery.first() function accepts a parameter n which applies
a limit to the query and returns the first row.
- group_by(), order_by(), window() now accept a keyward argument
extend, which, when set to True, will append to the existing
values rather than overwriting them.
- Query results support negative indexing.
- C sources are included now as part of the package. I think they
should be able to compile for python 2 or 3, on linux or
windows...but not positive.
- pt-stalk now sorts the output of transactions by id
- Added "Shared" memory info to pt-summary
- Added the --no-vertical-format option for pt-query-digest,
allowing compatibility with non-standard MySQL clients that
don't support the \G directive at the end of a statement
- Fixed error when parsing tcpdump capture with pt-query-digest
- Improved pt-online-schema-change plugin documentation
- Clarified the description of the --attribute-value-limit option
for pt-query-digest
- Fixed all PERL-based tools to return a zero exit status when run
with the --version option
- Fixed error that sometimes prevented to choose the primary key
as index, when using the -where option for pt-table-checksum
- Fixed the inability of pt-query-digest to parse the general log
generated by MySQL (and Percona Server) 5.7 instance
- Clarified the description of the --verbose option for
pt-slave-restart
Redis 3.2.3
Bugfixes:
- There was an inverted if statement logic problem in
replication.c causing
a replication delay.
- Redis-cli created the history file with insecure permissions,
allowing reding from the file.
Redis 3.2.2
- There was a bug in the List type implementation, able to cause
the crash of the server under certain (non trivial to replicate)
circumstances when the LSET command was used.
- Redis Sentinel, when monitoring multiple masters, could crash
after a Sentinel address update event.
- Redis Sentinel now checks slaves INFO state more often when
disconnected.
- It was possible, under a variety of conditions, that the AOF and
RDB children process could spawn at the same time. This is known
to trash disk I/O, AOF performances, and to ultimately create
latency in the Redis server.
- Many GEORADIUS bugs are now fixed \o/.
New features:
- Now slaves support the slave-announce-ip and slave-announce-port
options.
- The RDB check utlity is now part of Redis and uses the same RDB
code that Redis uses in order to load the dataset in memory.
Features
- Handle null values in NumpyProtocolHandler (PYTHON-553)
- Collect greplin scales stats per cluster (PYTHON-561)
- Update mock unit test dependency requirement (PYTHON-591)
- Handle Missing CompositeType metadata following C* upgrade
(PYTHON-562)
- Improve Host.is_up state for HostDistance.IGNORED hosts
(PYTHON-551)
- Utilize v2 protocol's ability to skip result set metadata for
prepared statement execution (PYTHON-71)
- Return from Cluster.connect() when first contact point
connection(pool) is opened (PYTHON-105)
- cqlengine: Add ContextQuery to allow cqlengine models to switch
the keyspace context easily (PYTHON-598)
- Standardize Validation between Ascii and Text types in Cqlengine
(PYTHON-609)
Bug Fixes
- Fix geventreactor with SSL support (PYTHON-600)
- Don't downgrade protocol version if explicitly set (PYTHON-537)
- Nonexistent contact point tries to connect indefinitely
(PYTHON-549)
- Execute_concurrent can exceed max recursion depth in failure
mode (PYTHON-585)
- Libev loop shutdown race (PYTHON-578)
- Include aliases in DCT type string (PYTHON-579)
- cqlengine: Comparison operators for Columns (PYTHON-595)
- cqlengine: disentangle default_time_to_live table option from
model query default TTL (PYTHON-538)
- cqlengine: pk__token column name issue with the equality
operator (PYTHON-584)
- cqlengine: Fix "__in" filtering operator converts True to string
"True" automatically (PYTHON-596)
- cqlengine: Avoid LWTExceptions when updating columns that are
part of the condition (PYTHON-580)
- cqlengine: Cannot execute a query when the filter contains all
columns (PYTHON-599)
- cqlengine: routing key computation issue when a primary key
column is overriden by model inheritance (PYTHON-576)
The purpose of this driver is to provide exceptionally thin glue
between MongoDB and PHP, implementing only fundemental and
performance-critical components necessary to build a fully-functional
MongoDB driver.
Countrary to php-mongo, mongodb one supports php 7.x as well as 5.5.x/5.6.x
Bugs Fixed
Replication: When using statement-based or mixed binary logging format with --read-only=ON, it was not possible to modify temporary tables.
MySQL Server upgrades performed using RPM packages failed when upgrading from MySQL 5.1 Community to MySQL 5.5 Community or MySQL 5.1 Commercial to MySQL 5.5 Commercial.
A buffer overflow in the regex library was fixed.
Certain arguments to NAME_CONST() could cause a server exit.
Installing MySQL from a yum or zypper repository resulted in /var/log/mysqld.log being created with incorrect user and group permissions.
If a stored function updated a view for which the view table had a trigger defined that updated another table, it could fail and report an error that an existing table did not exist.
If an INSTALL PLUGIN statement contained invalid UTF-8 characters in the shared library name, it caused the server to hang (or to raise an assertion in debug builds).
For multibyte character sets, LOAD DATA could fail to allocate space correctly and ignore input rows as a result.
Bugs Fixed
InnoDB: Full-text search auxiliary tables could be dropped by one session while being access by another.
InnoDB: Selecting full-text index information schema tables for a deleted table caused a segmentation fault.
InnoDB: Rollback of a full-text index synchronization operation raised an assertion. The rollback operation attempted to acquire a mutex still held by the background synchronization thread.
InnoDB: Setting innodb_monitor_enable to all did not enable all counters.
Replication: After issuing a PURGE BINARY LOGS statement, if the binary log index file was not available, for example because it had been opened by another application such as MEB, the server could stop unexpectedly. Although this situation was rare, the handling has been made more robust to avoid unexpected halts and more informative errors are provided.
Replication: When using row-based replication and InnoDB, replication slaves reverted to using an older locking scheme when a transaction had already acquired an AUTOINC lock related to a LOAD FILE or INSERT ... SELECT type of statement, reducing replication slave performance. The fix ensures that sql_command is set correctly for any of the DML events such as WRITE_ROWS_EVENT, UPDATE_EVENT, and DELETE_EVENT.
Replication: A MySQL version 5.5 slave does not have a server_uuid and replication identified servers by their server_id. Starting from MySQL version 5.6, replication masters detected a zombie dump thread based only on a slave's server_uuid value, under the assumption that each slave has a unique UUID. Connecting a MySQL 5.5 slave to a MySQL 5.6 and later master meant that the master was unable to detect zombie dump threads that were created to serve slaves running versions older than MySQL 5.6. The fix ensures that a master now first checks if a slave has a server_uuid set. If it is set, zombie dump thread detection happens based on the slave's UUID. If a slave's server_uuid is not set, zombie dump thread detection happens based on server_id.
Replication: With slave_skip_errors enabled there were still special cases when slave errors were not being correctly ignored. For example:
When opening and locking a table failed.
When field conversions failed on a server running row-based replication.
In these cases the error was considered critical and it was not respecting the state of slave_skip_errors. The fix ensures that with slave_skip_errors enabled, all errors reported during applying a transaction are correctly handled. This means that in such a set up, upon receiving an error with the log_warnings option set to greater than 1, if the error can be ignored then the warning is printed into the error log and the server continues as it does in the case of other ignored errors.
Replication: When using statement-based or mixed binary logging format with --read-only=ON, it was not possible to modify temporary tables.
MySQL Server upgrades performed using RPM packages failed when upgrading from MySQL 5.5 Community to MySQL 5.6 Community or MySQL 5.5 Commercial to MySQL 5.6 Commercial.
The code for reading character set information from Performance Schema statement events tables (for example, events_statements_current) did not prevent simultaneous writing to that information. As a result, the SQL query text character set could be invalid, which could result in a server exit. Now an invalid character set causes SQL_TEXT column truncation.
A buffer overflow in the regex library was fixed.
Certain arguments to NAME_CONST() could cause a server exit.
For unit-testing with the MySQL test suite, the make unit-test command is no longer available. The ctest program should be used instead. See Unit Tests Added to Main Test Runs.
ST_Distance() could raise an assertion for NULL return values.
With the query cache enabled, executing a prepared statement with CURSOR_TYPE_READ_ONLY and then again with CURSOR_TYPE_NO_CURSOR caused the server to return an error.
mysql_real_connect() was not thread-safe when invoked with the MYSQL_READ_DEFAULT_FILE or MYSQL_READ_DEFAULT_GROUP option enabled.
Installing MySQL from a yum or zypper repository resulted in /var/log/mysqld.log being created with incorrect user and group permissions.
If a stored function updated a view for which the view table had a trigger defined that updated another table, it could fail and report an error that an existing table did not exist.
If an INSTALL PLUGIN statement contained invalid UTF-8 characters in the shared library name, it caused the server to hang (or to raise an assertion in debug builds).
For multibyte character sets, LOAD DATA could fail to allocate space correctly and ignore input rows as a result.
Enhancements
* It's now possible to delete variables using wildcards
* It's now possible to test the connection from the profile dialog
* For Postgres, the generated source code for functions and custom aggregates now contains the new PARALLEL settings for Postgres 9.6
* It's now possible to show a quick filter in the macro popup window
* When searching for a JDBC driver class in the driver's jar file, available service registrations are used to speed up the searching.
* It's now possible to disable icons in menus
* For HSQLDB 2.3.4 synonyms are now displayed
* It's now possible to configure the buttons on the toolbar
* It's now possible to restore recently closed editor tabs
* For Progress OpenEdge, squences and synonyms are now shown in the DbExplorer
* It's now possible to associate variables with the connection profile and the workspace
* For SAP HANA the source for synonyms are now shown
* For SAP HANA dependency for tables, views, triggers, procedures and sequences are now shown in the DbExplorer and DbTree
* A new command (WbGenerateFKScript) is available to generate the DDL for only the foreign key constraints.
* For DB2 10.5 indexes based on expressions are now shown correctly
Bug fixes
* For SQL Server, the source code for user defined object types with columns was incorrect.
* For DBMS supporting catalogs and schemas, auto completion for large schemas was slow.
* Fixed a problem where in rare cases, closing an editor tab could hang the application.
* Ignoring the "Max Rows" setting in the DbExplorer's table data did not work any more
* WbListMacros, WbDeleteMacro and WbDefineMacro were always using the default macro file
* Timestamps with microseconds (.SSSSSS in the format) where not imported correctly with WbImport
* For Postgres, the LEAKPROOF attribute was not included in the generated source code for functions
* WbSchemaDiff incorrectly combined all tables to be dropped in a single tag
* For Postgres, the format of hstore literals was not correct when exporting data as SQL statements
* For Postgres, hstore columns could not be edited in a query result
* The ALTER TABLE OWNER TO statement for Postgres was not created correctly
* It wasn't possible to use -mode=Upsert or -mode=InsertIgnore with WbCopy
* Parsing of comments in SQL statements is now more lenient with invalid (nested) comments
* When changing the position of SQL tabs with files loaded, the Workspace was not saved properly
* For Progress OpenEdge, the SQL generated for sequences was invalid
* For Postgres, the implizit index for an exclusion constraint was incorrectly added to the souce of the table
* The format of a hstore and array literals was not correct for generated SQL statements
* For Oracle procedures from packages that contained only procedures without parameters were not displayed.
* Implemented a workaround for the MariaDB JDBC driver that returns invalid object type names for tables ("BASE TABLE" instead of "TABLE")
* Generate "DROP script with dependencies" was no longer working in the DbExplorer or DbTree
* When using SQL Workbench in batch mode, passing quoted parameters on the command line did not work properly
* The DDL for tables was not displayed when using Amazon Redshift
* Using sqlwbconsole.sh together with -command or -script on a headless system did not work
* The display for LVARCHAR and DATE columns was not always correct for Informix
* Warnings that were reported by the JDBC driver after establishing the connection were sometimes shown in the generated DDL in the DbTree
* The DDL for sequences in Oracle did not reflect the values for CYCLE and ORDER
* Running PL/SQL in Oracle did not work if the option "Remove comments" was enabled in the connection profile
* When using "Create DDL script" in the DbExplorer, the source for materialized views was generated twice
* With certain Oracle driver versions, TYPEs where displayed twice in the DbExplorer or the DbTree
* When exporting to text files, values containing the line delimiter were not quoted properly
* With SQL Server, it was not possible to drop indexes from within the DbTree
* Passwords are no longer trimmed
Upstream changes:
0.9995 2016-07-27T09:23:55Z
- Taught the `add` command not to ignore the `--change` option.
- The `add` command now emits a usage statement when no change name is
passed to it.
- The `add` command now helpfully suggests using the --change option when
attempting to add a change with the same name as a target. Thanks to
Ivan Nunes for the report!
- The `tag` command now helpfully suggests using the --tag option when
attempting to add a tag with the same name as a target.
- Added `--global` as an alias for `--user` to the `config` command. This
alias benefits the muscle memory of Git users.
- Added a note for Git users to the `sqitch-revert` documentation, to
head off potential confusion with `git revert`. Thanks to Eric
Br矇chemier for the "time travel" analogy and wording.
- Fixed an "uninitialized value" error when creating a registry database
on Windows. Thanks to Steven C. Buttgereit for the report (Issue #289).
- Fixed editor selection to prioritize the `core.editor` configuration
variable over the `$EDITOR` environment variable. The `$SQITCH_EDITOR`
environment variable still trumps all. Thanks to Jim Nasby for the pull
request (#296).
- Added detection of the `$VISUAL` environment variable to Editor
selection, prioritzed after the `core.editor` configuration variable
and before the `$EDITOR` environment variable. Thanks to Jim Nasby for
the pull request (#296).
- Updated the DateTime code to set the locale via `set_locale()` instead
of `set()`, as the latter may actually change the local time
unintentionally, and has been deprecated since DateTime v1.04. Thanks
to Dave Rolsky for the pull request (#304).
0.9994 2016-01-08T19:46:43Z
- Reduced minimum required MySQL engine from 5.1.0 to 5.0.0. Thanks to
@dgc-wh for testing it (Issue #251).
- Fixed floating-point rounding issue with SQLite registry versions on
Perls with 16-byte doubles. Thanks to H. Merijn Brand for the report
and testing.
- Fixed an error when adding an engine with the `engine` command. Thanks
to Victor Mours for the report and fix!
- Updated the Oracle engine to support Oracle Wallet connection strings,
where no username or host is in the connection URI. Thanks to Timothy
Procter for the patch!
- Improved the installer's selection of the prefix in which to install
`etc` files to better match the `--installdirs` option, which defaults
to the "site" directories. Thanks to @carragom for the pull request
(#265).
- Added missing dash to `-engine` in sample calls to `sqitch init` in the
tutorials. Thanks to Andrew Dunstan for the spot (Issue #268).
- Fixed broken Vertica documentation links.
- Attempting to revert a database with no associated registry no longer
reports the registry as version 0, but correctly reports that no
registry can be found. Thanks to Arnaldo Piccinelli for the spot (Issue
#271).
- Fixed the search for change IDs in engines to match the search for
changes. Specifically, change ID seaerch now properly handles the
offset characters `~` and `^`. This bug mainly affected the `verify`
command, but it's good to address the inconsistency, done mainly by
adding the `find_change_id` and `change_id_offset_from_id` methods to
complement the `find_change` and `change_offset_from_id` methods.
Thanks to Andrew Dunstan for the spot (Issue #272).
- Fixed the `flips` table example in the MySQL tutorial. It was
inappropriately copied from the PostgreSQL tutorial at some point.
Thanks to Jeff Carpenter for the spot (Issue #254)!
0.9993 2015-08-17T17:55:26Z
[Bug Fixes]
- Eliminated test failures due to warnings from DateTime::Locale when
`LC_TIME` is set to C.UTF-8. Thanks to Shantanu Bhadoria for the report
and Dave Rolsky for the workaround.
- Fixed an error checking the registry version when the local uses a
comma for decimal values. Thanks to Steffen M羹ller for the report
(Issue #234).
- Worked around an error setting the MySQL storage engine using versions
of DBI prior to 1.631. Thanks to melon-babak for the report!
- Fixed an error from the Oracle engine when deploying more than 1000
changes. Thanks to Timothy Procter and Minh Hoang for the report and
testing the fix.
- Fixed a bunch of typos in error messages, comments, and documentation.
Thanks to Dmitriy for the pull request!
- Fixed test failures due to new warnings from File::Path on Perl
5.23.1.
- On Firebird, Looking up a change and tag in the database (via the
`--onto` option to `rebase` or the `--to` option to `revert`, among
others) would sometimes return the incorrect change if the change has
been reworked two or more times. Was fixed for the other engines in
v0.9991.
- Fixed the `--all` option used to apply a command to all known targets
so that it loads only targets specified by the local configuration.
Otherwise, user and system configuration can get in the way when they
specify engines and targets not used by the current project.
[Improvements]
- Added support for the `--set` option when deploying to MySQL. Thanks to
Chris Bandy for figuring out how to do it!
- Added support for a "reworked directory". By default, reworked change
scripts live in the deploy, revert, and verify directories along with
all the other change scripts. But if that starts to get too messy, or
you simply don't want to see them, add a `reworked_dir` setting to the
core, engine, or target config and reworked scripts will be stored
there, instead. Also supported are `reworked_deploy_dir`,
`reworked_revert_dir`, and `reworked_verify_dir`.
- Added the `--dir` option to the `init`, `engine`, and `target`
commands.
- Copied the core configuration options (`--engine`, `--target`,
`--plan-file`, `--registry`, etc.) to the `init`, `engine`, and
`target` commands. This means that they can be specified after the
command, which is a bit more natural. It also means that the
`--registry` and `--client` options of the `target` are no longer
deprecated.
- The `init` command on longer writes out commented values for the
`deploy_dir`, `revert_dir`, or `verify_dir` settings. I think these
settings are not commonly used, and it would start to get crowded if we
also added their "reworked" variants, which will be used still less.
- Added the `alter` action to the `engine` and `target` commands to set
engine and target properties.
- Added support for setting reworked directories to the `engine` and
`target` commands.
- Reformatted the output of the `engine` and `target` command `show`
actions to include reworked directories, and to bit a bit less flat.
- Attempting to add or alter an engine with a target URI that connects to
a different engine now triggers an error. For example, you can't set
the target for engine `pg` to `db:sqlite:`.
- The `add` and `alter` actions of the `engine` and `target` commands
now create script directories if they don't already exist.
- The `add` action of the `engine` and `target` commands now creates a
plan file if one does not exist in the specified location for the
engine or target.
- Added the `deploy_dir`, `revert_dir`, and `verify_dir` methods to
App::Sqitch::Plan::Change. Each points to the proper directory for the
target depending on whether or not the change has been reworked.
- In the MySQL engine, the following URI query params will be converted
to options passed to the command-line client, if they're present:
* mysql_compression=1 => --compress
* mysql_ssl=1 => --ssl
* mysql_connect_timeout => --connect_timeout
* mysql_init_command => --init-command
* mysql_socket => --socket
* mysql_ssl_client_key => --ssl-key
* mysql_ssl_client_cert => --ssl-cert
* mysql_ssl_ca_file => --ssl-ca
* mysql_ssl_ca_path => --ssl-capath
* mysql_ssl_cipher => --ssl-cipher
[Documentation]
- Added the "Overworked" section to sqitch-configuration guide with an
example of how to move reworked change scripts into a `reworked_dir`.
[Deprecations]
- Deprecated the `set-*` actions in the `engine` and `target` commands in
favor of the new `alter` action.
- The core `--deployed-dir`, `--revert-dir`, and `--verify-dir` options
are deprecated in favor of the `--dir` option on the `init`, `engine`,
and `target` command.
0.9992 2015-05-20T23:51:41Z
- On PostgreSQL, Sqitch now sets the `client_encoding` parameter to
`UTF8` for its own connection to the database. This ensures that data
sent to and from the databse should always be properly encoded and
decoded. Users should still set the proper encodings for change scripts
as appropriate.
- Fixed test failures due to path differences on Windows.
- DateTime::TimeZone is now explicitly required in an attempt to head off
"Cannot determine local time zone" errors.
- Corrected some typos and thinkos in `sqitchtutorial-oracle`, thanks to
George Hartzell.
- Improved the script to upgrade an Oracle registry to v1.0 to support
versions prior to Oracle 12, thanks to Timothy Procter.
- Added missing closing parenthesis to the "Nothing to deploy" message.
Thanks to George Hartzell for the pull request (Issue #226).
- Replaced the unique constraint on the `script_hash` column in the
`changes` registry table with a unique constraint on `project` and
`script_hash`. This is to allow a deploy script to be used in more than
one project in a single database. This change increments the registry
version to v1.1. Thanks to Timothy Procter for the report.
- Updated the registry check constraints to have consistent names on the
engines that support them. This will make it easier to modify the
constraints in the future.
- Fixed precision issues with the registry version on MySQL and Firebird.
- Added comment to sqitch-passwords guide that MySQL::Config is required
to read passwords from the MySQL configuration files. Thanks to
Sterling Hanenkamp for the patch!
0.9991 2015-04-03T23:14:39Z
[Improvements]
- Reduced minimum required MySQL engine from 5.6.4 to 5.1.0. Versions
prior to 5.6.4 lose the following features:
* Versions earlier than 5.6.4 is fractional second precision on
registry `DATETIME` columns. Since the ordering of those timestamps
is so important to the functioning of Sqitch, it will sleep in 100 ms
increments between logging changes to the registry until the time has
ticked over to the next second. Naturally, reverts and deploys will
be a little slower on versions of MySQL before 5.6.4, but accurate.
* Versions earlier than 5.5.0 lose the `checkit()` functions, which
would otherwise be used to emulate CHECK constraints in the registry,
as well as in user-created verify scripts, as recommended in the
MySQL tutorial, `sqitchtutorial-mysql`.
- Added a script to update the `DATETIME` columns in a MySQL Sqitch
registry that was upgraded to MySQL 5.6.4 or higher. It will be
installed as `tools/upgrade-registry-to-mysql-5.6.4.sql` in the
directory returned by `sqitch --etc`.
- Added a script to add the `checkit()` function and registry triggers to
emulate CHECK constraints to a MySQL Sqitch registry that was upgraded
to MySQL 5.5.0 or higher. It will be installed as
`tools/upgrade-registry-to-mysql-5.5.0.sql` in the directory returned
by `sqitch --etc`.
- The `init` command now throws an error when the plan file already
exists and is invalid or defined for a different project. Thanks to
Gabriel Potk獺ny for the suggestion (Issue #214).
- All commands that take target arguments can now specify them as engine
names or plan file paths as well as target names and URIs.
- Added the `--all` option and the `$command.all` configuration variable
to the `add`, `rework`, `tag`, and `bundle` commands. This option tells
the commands to do their thing for all plans known from the
configuration, not just the default plan.
- Pass engine, target, or plan file names to the `add`, `rework`, `tag`,
and `bundle` commands` commands to specify specify one or more targets,
engines, and plans to act on.
- Added the `--change` option to the `add`, `rework`, and `tag` commands
to distinguish the change to be added, reworked, or tagged from
plan-specifying arguments, if necessary.
- Added the `--tag` option to the `tag` command to distinguish the tag to
be added from plan-specifying arguments, if necessary.
- Changed the short variant of the `--conflicts` option to the `add` and
`rework` commands from `-c` to `-x`. The `-c` option is now used as the
short variant for `--change` (and `--conflicts` has almost certainly
never been used, anyway).
- Added the `engine` and `project` variables to the execution of script
templates by the `add` command. The default templates now use it to
make their first lines one of:
* -- Deploy [% project %]:[% change %] to [% engine]
* -- Revert [% project %]:[% change %] from [% engine]
* -- Verify [% project %]:[% change %] on [% engine]
[Bug Fixes]
- DateTime::TimeZone::Local::Win32 is now required on Windows.
- The MySQL engine no longer passes `--skip-pager` on Windows, since
it is not supported there. Thanks to Gabriel Potk獺ny for the report
(Issue #213).
- Fixed "no such table: changes" error when upgrading the SQLite
registry.
- Fixed upgrade failure on PostgreSQL 8.4. Thanks to Phillip Smith for
the report!
- Fixed an error when the `status` command `show_changes` and `show_tags`
configuration variables were set. Thanks to Adrian Klaver for the
report (Issue #219).
- Fixed `log` and `plan` usage statements to properly spell `--abbrev`.
Thanks to Adrian Klaver for the report (Issue #220).
- Fixed the formatting of change notes so that a space precedes the `#`
character whether the note was added by the `--note` option or via an
editor.
- Fixed a bug when parsing plan files with DOS/Windows line endings.
Thanks to Timothy Procter for the report (Issue #212).
- Looking up a change and tag in the database (via the `--onto` option to
`rebase` or the `--to` option to `revert`, among others) would
sometimes return the incorrect change if the change has been reworked
two or more times. Thanks to BryLo for the report!
[Documentation]
- Updated docs to be consistent in referring to the location of the system
configuration and template location as `$(prefix)/etc/sqitch`. Also
added notes pointing to the `--etc-dir` to find out exactly what that
resolves to. Suggested by Joseph Anthony Pasquale Holsten (Issue #167).
[Deprecations]
- Reverted deprecation of the database connection options. Target URIs
are still generally preferred, but sometimes you want to use a target
but just change the user name or database name. Retaining the options
is the easiest way to do this. Plus, a fair number of people have
scripts that use these options, and it seems petty to break them. Sorry
for the double-take here! The list of un-deprecated options is:
* `--db-client`
* `--db-host`
* `--db-port`
* `--db-username`
* `--db-password`
* `--db-name`
0.999 2015-02-12T19:43:45Z
- Improved MySQL missing table error detection by relying on error codes
instead of matching a (possibly localized) error string.
- Made the registry upgrade more transparent when deploying. Sqitch is
now is a little more vigilent in checking for things being out-of-date
and updating them.
- Fixed an issue where the `status` command would return an error when
run against a an older version of the registry.
- Fixed a Postgres test failure when DBD::Pg is installed but psql is not
in the path.
- Now require Config::GitLike 1.15 to build on Windows in order to avoid
test failures when Cwd::abs_path dies on non-existant paths.
- Clarified the behavior of each `deploy` reversion mode with regard to
deploy script vs. verify script failures, and with the expectation that
deploy scripts are atomic.
- Target passwords can now be set via a single environment variable,
`$SQITCH_PASSWORD`. Its value will override URI-specified password.
- Added the sqitch-passwords and sqitch-environment guides.
0.998 2015-01-15T22:17:44Z
- Fixed a bug in `sqitch engine update-config` where it would add data to
config files that did not previously have them, or report that data was
present in nonexistent config files.
- Added the `releases` table to the databases. This table will keep track
of releases of the Sqitch registry schema.
- The Oracle `registry` variable is now always `DEFINE`d when Oracle
scripts run.
- Added the `upgrade` command, which upgrades the schema for the Sqitch
registry for a target database.
- Added the `script_hash` column to the `changes` registry table. This
column contains a SHA-1 hash of the deploy script for the change at the
time it was deployed. For existing registries, the upgrade script sets
its value to be the same as the change ID. This value is update the
next time a project is deployed to the database.
- The error message when `deploy` cannot find the currently-deployed
change ID in the plan now includes more contextual information,
including the change name, associated tags, and the plan file name.
Suggested by Curtis Poe (Issue #205).
- Comments on Firebird registry objects are now created with the
`COMMENT` command, rather than INSERTs into catalog tables.
- Added support for "merge" events, though none are logged, yet.
This version of phpredis supports cluster and is intended for php versions
7.0.0 and higher. To compile cluster-enabled phpredis for older versions
of php, please use the 2.2.8 pecl package.
Upstream changes:
0.37 2015-12-08 rurban
- Fix handling of 64bit int and double result types [cpan #28448].
We promote now overlong integers to double, not strings.
sqlite_set_result_double() was never used.
- Add LICENSE for t/98_kwalitee.t (only specified in EUMM rule)
- Add CONFIGURE_REQUIRES => DBI [cpan #110188]
- Fix little spelling error [cpan #85437]
- Silence void* to int cast warning in func.c
- Improve kwalitee test
Upstream changes:
0.99 - J. Nick Koston <bdraco@cpan.org> 2016-07-16
- Add a fetch_all function for 1:1 hash mapping
0.98 - Todd Rinaldo <toddr@cpan.org> 2015-06-30
- Replace use vars with our (deprecated since 5.6.0)
- Switch from Dynaloader to XSLoader as it's known to be a lower memory profile module.
0.97_01 - Todd Rinaldo <toddr@cpan.org> 2011-04-05
- Put ppport.h back in with an updated version.
- ppport.h warnings now indicate that the module is not perl 5.6 compatible,
but the test suite continues to succeed there. p5p suggests dropping support
for 5.6
This is the latest release in the 1.0 series which includes a variety of bug fixes that have accumulated since the last 1.0 release. This release happens to only feature Core and dialect level changes; none are ORM specific. All applicable fixes here are also in the 1.1 series, most of which are already released as of 1.1.0b2. As the 1.1 series moves towards final release, the 1.0 series will move into "maintenance" mode with very few additional changes being made.
What's new in psycopg 2.6.2
^^^^^^^^^^^^^^^^^^^^^^^^^^^
- Fixed inconsistent state in externally closed connections
(🎟️`#263, #311, #443`).
- Report the server response status on errors (such as 🎫`#281`).
- Raise `!NotSupportedError` on unhandled server response status
(🎫`#352`).
- Allow overriding string adapter encoding with no connection (🎫`#331`).
- The `~psycopg2.extras.wait_select` callback allows interrupting a
long-running query in an interactive shell using :kbd:`Ctrl-C`
(🎫`#333`).
- Fixed `!PersistentConnectionPool` on Python 3 (🎫`#348`).
- Fixed segfault on `repr()` of an unitialized connection (🎫`#361`).
- Allow adapting bytes using `~psycopg2.extensions.QuotedString` on Python 3
(🎫`#365`).
- Added support for setuptools/wheel (🎫`#370`).
- Fix build on Windows with Python 3.5, VS 2015 (🎫`#380`).
- Fixed `!errorcodes.lookup` initialization thread-safety (🎫`#382`).
- Fixed `!read()` exception propagation in copy_from (🎫`#412`).
- Fixed possible NULL TZ decref (🎫`#424`).
- `~psycopg2.errorcodes` map updated to PostgreSQL 9.5.
Patches have been applied upstream.
Release notes:
* placeholders and quotes in SQL comments are ignored
* fixed major bugs in SQLStatement::fetchRows() and
SQLStatement::fetchColumns() where only the first call would succeed
* added the pgsql_bind_array() function to support bulk DML
* fixed a bug retrieving numeric values; values too large for a 64-bit integer
were being retrieved as a 64-bit integer
* ported db-test.q to new-style and QUnit
* changed the minimum required Qore version to 0.8.12 to support
the test script wth QUnit
* fixed a bug where interval values retrieved from the DB were justified
to hours and minutes
* fixed a bug where CHAR values were returned with an invalid internal string
size
* fixed a bug where arbitrary-precision numeric values bound to numeric
columns were bound with an incorrect scale value causing the digits
behind the decimal place to be lost (issue 386)
* fixed a bug where SQLStatement::describe() was failing even though result
set information was available
* fixed a bug where duplicate column names in result sets caused
memory leaks (and they were not renamed; issue 831)
Patches have been applied upstream.
Release notes:
* disable openssl cleanup in the Qore library since the openldap module
makes openssl cleanup calls and calling those routines twice can
result in segfaults
* updated example/test scripts to use %strict-args
The patches have been applied upstream.
release notes:
This release is a major release with many
bug fixes and new features including the following:
* SQLStatement class support
* support for driver options
* server time zone support
* support for arbitrary-precision numeric support
* improved support for FreeTDS for the freetds driver
=== 4.36.0 (2016-07-01)
* Deprecate use of Bignum class as generic type, since the behavior will change in ruby 2.4 (jeremyevans)
* Don't hold connection pool mutex while disconnecting connections (jeremyevans)
* Don't hold references to disconnected connections in the connection_validator extension (jeremyevans)
* Don't overwrite existing connection_validation_timeout when loading connection_validator extension multiple times (jeremyevans)
* Add connection_expiration extension, for automatically removing connections open for too long (pdrakeweb) (#1208, #1209)
* Handle disconnection errors raised during string literalization in mysql2 and postgres adapters (jeremyevans)
* Add string_agg extension for aggregate string concatenation support on many databases (jeremyevans)
* Add SQL::Function#order for ordered aggregate functions (jeremyevans)
* Support operator validation in constraint_validations for <, <=, >, and >= operators with string and integer arguments (jeremyevans)
* Make validates_operator validation consider nil values invalid unless :allow_nil or similar option is used (jeremyevans)
* Close cursors for non-SELECT queries in the oracle adapter after execution, instead of waiting until GC (jeremyevans) (#1203)
* Add :class_namespace association option for setting default namespace for :class option given as symbol/string (jeremyevans)
* Add Sequel::Model.cache_anonymous_models accessor for changing caching on a per-model basis (jeremyevans)
* Add Sequel::Model.def_Model for adding a Model() method to a module, for easier use of namespaced models (jeremyevans)
* Add Sequel::Model::Model() for creating subclasses of Sequel::Model subclasses, instead of just Sequel::Model itself (jeremyevans)
=== 4.35.0 (2016-06-01)
* Add :headline option to PostgreSQL Dataset#full_text_search for adding an extract of the matched text to the SELECT list (jeremyevans)
* Make :rollback=>:always inside a transaction use a savepoint automatically if supported (jeremyevans) (#1193)
* Recognize bool type as boolean in the schema dumper (jeremyevans) (#1192)
* Make Dataset#to_hash and #to_hash_groups work correctly for model datasets doing eager loading (jeremyevans)
* Make delay_add_association plugin handle hashes and primary keys passed to add_* association methods (jeremyevans) (#1187)
* Treat :Bignum as a generic type, to support 64-bit integers on ruby 2.4+, where Bignum == Integer (jeremyevans)
* Add server_logging extension for including server/shard information when logging queries (jeremyevans)
* Add Database#log_connection_info, for including connection information when logging queries (jeremyevans)
* Add Dataset#skip_locked for skipping locked rows on PostgreSQL 9.5+, MSSQL, and Oracle (jeremyevans)
* Allow Sequel::Model#lock! to accept an optional lock style (petedmarsh) (#1183)
* Add sql_comments extension for setting SQL comments on queries (jeremyevans)
* Make Postgres::PGRange#cover? handle empty, unbounded, and exclusive beginning ranges (jeremyevans)
* Fix frozen string literal issues on JRuby 9.1.0.0 (jeremyevans)
* Allow json_serializer :include option with cascaded values to work correctly when used with association_proxies (jeremyevans)
=== 4.34.0 (2016-05-01)
* Add support for :dataset_associations_join association option to dataset_associations plugin, for making resulting datasets have appropriate joins (jeremyevans)
* Log server connection was attempted to in PoolTimeout exception messages in sharded connection pool (jeremyevans)
* Log Database :name option in PoolTimeout exception messages (bigkevmcd, jeremyevans) (#1176)
* Add duplicate_columns_handler extension, for raising or warning if a dataset returns multiple columns with the same name (TSMMark, jeremyevans) (#1175)
* Support registering per-Database custom range types in the pg_range extension (steveh) (#1174)
* Support :preconnect=>:concurrently Database option for preconnecting in separate threads (kch, jeremyevans) (#1172)
* Make prepared_statements_safe plugin work correctly with CURRENT_DATE/CURRENT_TIMESTAMP defaults (jeremyevans) (#1168)
* Add validates_operator validation helper (petedmarsh) (#1170)
* Recognize additional unique constraint violation on Microsoft SQL Server (jeremyevans)
* Add :hash option to Dataset#(select|to)_hash(_groups)? methods for choosing object to populate (mwpastore) (#1167)
Bugfixes
• Fix segv when num of rows is zero
• Fix failed to allocate memory for an empty result set
• Fix :cache_rows => false on prepared statements
• Fix results buffer allocation fails with prepared statements
Changes
• Allow repeated each with :cache_rows => false
• Fix some tests for non-default creds
• Use the Travis Trusty image for Travis CI
Upstream changes:
0.010 28 Feb 2014
- add 'lower' feature to parser
0.009 20 Aug 2013
- switch to github
- fix for RT https://rt.cpan.org/Ticket/Display.html?id=87287 where
implicit OR applied in dbic() and rdbo() structures when implicit AND
was more appropriate.
Update DEPENDS
Upstream changes:
0.193 10 July 2014
- fix whitespace regression bug introduced in 0.192. Reported
by Holger Rupprecht via f7c65ec.
0.192 8 July 2014
- support Loader base_classes method in _schema_template().
Cf. https://rt.cpan.org/Ticket/Display.html?id=97043
0.191 19 June 2014
- remove the DEVELOPMENT RELEASE caveat. after this many years, it is as
stable as it will ever be.
- mkpath(self->debug) instead of mkpath(1) [ https://rt.cpan.org/Ticket/Display.html?id=96552 ]
0.190 15 May 2014
- switch to File::Slurp::Tiny
Upstream changes:
0.778 (06.28.2016) - John Siracusa <siracusa@gmail.com>
* Added mysql_enable_utf8mb4 attribute. (Patch by Alexander Karelas.)
* Updated tests for the latest versions of MySQL and DateTime::Format::Pg.
Upstream changes:
0.082840 2016-06-20 07:02 (UTC)
* New Features
- When using non-scalars (e.g. arrays) as literal bind values it is no
longer necessary to explicitly specify a bindtype (this turned out
to be a mostly useless overprotection)
* Fixes
- Ensure leaving an exception stack via Return::MultiLevel or something
similar produces a large warning
- Another relatively invasive set of ::FilterColumn changes, covering
potential data loss (RT#111567). Please run your regression tests!
- Ensure failing on_connect* / on_disconnect* are dealt with properly,
notably on_connect* failures now properly abort the entire connect
- Fix use of ::Schema::Versioned combined with a user-supplied
$dbh->{HandleError} (GH#101)
- Fix parsing of DSNs containing driver arguments (GH#99)
- Fix silencing of exceptions thrown by custom inflate_result() methods
- Fix complex prefetch when ordering over foreign boolean columns
( Pg can't MAX(boolcol) despite being able to ORDER BY boolcol )
- Fix infinite loop on ->svp_release("nonexistent_savepoint") (GH#97)
- Fix spurious ROLLBACK statements when a TxnScopeGuard fails a commit
of a transaction with deferred FK checks: a guard is now inactivated
immediately before the commit is attempted (RT#107159)
- Fix the Sybase ASE storage incorrectly attempting to retrieve an
autoinc value when inserting rows containing blobs (GH#82)
- Remove spurious exception warping in ::Replicated::execute_reliably
(RT#113339)
- Work around unreliable $sth->finish() on INSERT ... RETURNING within
DBD::Firebird on some compiler/driver combinations (RT#110979)
- Fix leaktest failures with upcoming version of Sub::Quote
- Really fix savepoint rollbacks on older DBD::SQLite (fix in 0.082800
was not sufficient to cover up RT#67843)
* Misc
- Test suite is now officially certified to work under very high random
parallelism: META x_parallel_test_certified set to true accordingly
- Typo fixes from downstream debian packagers (RT#112007)
Upstream changes:
2.033000 2016-07-03 22:02:03-07:00 America/Los_Angeles
- Add ::Schema::Verifier::ColumnInfo (Thanks Wes Malone!) (Closes GH#67)
- Uninserted rows do not set their storage value anymore
(Thanks for the report Wes Malone!) (Closes GH#69)
2.032002 2016-05-24 10:00:16-07:00 America/Los_Angeles
- Fix variation in list context when using ::OnColumnMissing
(Thanks to David Farrell for the bug report!)
(Closes GH#63)
Upstream changes:
0.00015 2016-06-01
- Build fixes
0.00014 2016-05-31
- prevent warning in ::Bcrypt when password is undef
- Allow users to specify the Cipher used when encoding
Upstream changes:
1.52 2015-04-15
[MISCELLANEOUS]
Changes to the test suite to make it run better with Postgres thanks
to Greg Sabino Mullane.
1.51_4 2015-01-18
[BUG FIXES]
Numerous errors in the test suite (with SQLite ODBC driver) mostly down to not
creating the test table first.
[MISCELLANEOUS]
Try and make the test suite run ok for SQLite ODBC driver so I can use it
in travis-ci.
1.51_3 2015-01-17
[BUG FIXES]
RT101579 - using bound input parameters for numeric columns (e.g.,
SQL_NUMERIC) only works the first time and will quite likey fail
with "string data, right truncation" on the second and subsequent
calls to execute. Thanks to Laura Cox for finding.
1.51_2 2014-11-19
[BUG FIXES]
The table_info method (ANSI version only) was incorrectly passing
the table name for the type argument. I think this bug was
introduced last year.
1.51_1 2014-11-14
[BUG FIXES]
RT100186 - handle VARBINARY(MAX) parameters with SQL Server native
client. Identify "libmsodbcsql*" as the MS ODBC Driver for Linux as
there are some specific workarounds for MS Native Client ODBC driver.
Upstream changes:
2016-07-09 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.035)
* Add DBI back to configure_requires, fix by miyagawa.
2016-07-06 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.034)
* Full version, to include all changes since 4.033.
2016-07-04 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.033_03)
* Check for errors after calling mysql_affected_rows(), by Pali.
(https://rt.cpan.org/Public/Bug/Display.html?id=75353)
* Fix reference to MySQL manual, chapter Character Set Support, suggested
by Slaven Rezi� (https://rt.cpan.org/Public/Bug/Display.html?id=114148)
* Improve documentation on current database, suggested by Vladimir Marek.
(https://rt.cpan.org/Ticket/Display.html?id=112587)
2015-12-18 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.033_02)
* Compile against libssl by default. This allows to connect against remote
MySQL servers using SSL. Previously this was only achieved with an explicit
switch provided to Makefile.PL - if for some reason you can't or don't want
to link against libssl, you can use the new --nossl switch to Makefile.PL.
* Made tests more robust after CPAN Testers failures.
2015-12-15 Patrick Galbraith, Michiel Beijen, DBI/DBD community (4.033_01)
* Raise minimum DBI version to 1.609 (from 2009!) in order to make
tests pass on RHEL5.
* Add explicit documentation for how to enable SSL at build time,
provided by genio.
* Improve test suite to make it more robust using mixed versions of client and
server.
* Fix use after free error in my_login, provided by hannob.
* Add explicit instructions stating brackets are required around ipv6-addresses
in connection strings, provided by Kenny Gryp.
Features
- Optional Execution Profiles for the core driver (PYTHON-569)
- API to get the host metadata associated with the control
connection node (PYTHON-583)
- Expose CDC option in table metadata CQL (PYTHON-593)
Bug Fixes
- Clean up Asyncore socket map when fork is detected (PYTHON-577)
- cqlengine: QuerySet only() is not respected when there are
deferred fields (PYTHON-560)
From Bartosz Kuzma in PR 51306.
1.6.14
** Bug
* [PHP-1468] - Segfault on node with high network latency
* [PHP-1511] - append_getlasterror() should ignore unset fsync/journal from link
** Improvement
* [PHP-1510] - Route unacknowledged writes through legacy op codes
1.6.13
** Bug
* [PHP-1483] - GridFS file storage fails on big endian platform
* [PHP-1500] - Socket timeout not applied to initial command cursor query
* [PHP-1501] - Rephrase unsupported/corrupt BSON messages
* [PHP-1504] - Segfault connecting to authenticated RS after non-auth connections
* [PHP-1505] - negative files.length when storing file with size > 2GB in gridfs
1.6.12
** Bug
* [PHP-1494] - We don't allocate enough space for the hash buffer
** Task
* [PHP-1474] - Declare no support for PHP 7
1.6.11
** Bug
* [PHP-1467] - PHP driver on big endian platform not connecting to MongoDB
1.6.10
** Bug
* [PHP-1460] - Query with limit leaves open cursors on server
* [PHP-1462] - Fix static compilation
* [PHP-1464] - GridFS should not drop dupes when creating index
ocaml.mk framework and added patch to support int64 properly (patch from
upstream). Changes include:
* Tue Mar 10 2015 (1.2.0)
* Get rid of Camlp4 dependency
* Use mysql_config in configure
* Thu Oct 16 2014 (1.1.3)
* + OPT_FOUND_ROWS (Dmitry Grebeniuk)
* configure: build with percona
- SQL Relay now supports Kerberos encryption and authentication
- SQL Relay now supports TLS/SSL encryption and authentication
- Python 3 support
- Node.js 4.x and higher are now correctly detected and supported.
- Separate "database" and "proxied" Authentication Options
- Various ODBC-related bugs have been fixed
- A subtle bug that caused incompatibilities with the popular
logrotate utility has been fixed
- A long standing problem that occurred when using a
listenertimeout with a threaded listener (the default) has been
fixed.
- After a graceful restart, Apache workers would get stuck in the
Closing Connection state after running a PHP script that used
SQL Relay. This is now fixed.
See full changelog:
http://software.firstworks.com/2016/03/sql-relay-0650-release-announcement.html
Upgrade urgency HIGH: Critical fix to Redis Sentinel, due to 3.2.0
regression compared to 3.0.
Hey, this is Redis 3.2.1, and this release should bring some grain of
maturity to Redis 3.2. The list of commits following this note will tell
you the details, but the main things addressed in this release are the
following:
1. A critical bug in Sentinel was hopefully fixed. During the big 3.2
refactoring of Redis Sentinel, in order to implement connection sharing
to make Sentinel able to scale better (few Sentinels to monitor many
masters), a bug was introduced that mis-counted the number of pending
commands in the Redis link. This in turn resulted into an inability to
talk with certain Redis instances. A common result of this bug was the
inability of Redis Sentinel to reconfigure back the old master, after
a failover, when it is reachable again, as the slave of the new master.
This was due to the inability to talk with the old master at all.
2. BITFIELD bugs fixed.
3. GEO commands fixes on syntax errors and edge cases.
4. RESTORE now accepts dumps generated by older Redis versions.
5. Jemalloc now is really configured to save you memory, for a problem a
change in the jemalloc configuration did not really survived when the
3.2.0 release was finalized.
6. TTL and TYPE command no longer alter the last access time of a key, for
LRU evictions purposes. A new TOUCH command was introduced *just* to
update the access time of a key.
7. A bug was fixed in redis-cli, that connected to the instance running on
the port 6379 if there was one, regardless of what was specified.
8. TCP keep alive is now enabled by default. This should fix most ghost
connections problems without resulting in any practical change in
otherwise sane deployments.
9. A Sentinel crash that could happen during failovers was fixed.
previous handful of packages like -datatypes or -dblink. They
contain all of the contrib subtree, matching what similar packages
carry in e.g. FreeBSD ports or what PostgreSQL users generally
expect.
This subtree contains porting tools, analysis utilities, and
plug-in features that are not part of the core PostgreSQL system,
mainly because they address a limited audience or are too
experimental to be part of the main source tree. This does not
preclude their usefulness.
3.2.7 Jun 7, 2016
Issues fixed:
SERVER-24054: JS segmentation fault on load of certain NaNs.
SERVER-24058: Connection pool asio doesn't honor setup
timeouts.
SERVER-24117: Mongo binaries ELF stack has become executable.
3.2.6 Apr 28, 2016
First production release of the in-memory storage engine.
Issues fixed:
SERVER-22970: Background index build may result in extra index key
entries that do not correspond to indexed documents.
SERVER-22043: mongo shell method count() ignores read preference.
3.2.5 Apr 14, 2016
Issues fixed:
SERVER-22964: IX GlobalLock held while waiting for WiredTiger
cache eviction.
SERVER-22831: Low query rate with heavy cache pressure and an idle
collection.
SERVER-21681: Include index size stats for in-memory storage
engine.
Security Notes
The linked OpenSSL library for the MySQL Commercial Server has been updated to version 1.0.1t. Issues fixed in the new 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. (Bug 23229564)
Functionality Added or Changed
A new CMake option, WITH_SYMVER16, if enabled, causes the libmysqlclient client library to contain extra symbols to be compatible with libmysqlclient on RHEL/OEL 5, 6, 7, and Fedora releases. All symbols present in libmysqlclient.so.16 are tagged with symver 16 in libmsqlclient.so.18, making those symbols have both symver 16 and 18. (Bug 22980983)
support-files/MacOSX/ReadMe.txt is no longer included in MySQL distributions. (Bug 81038, Bug 23088916)
The version of the tcmalloc library included in MySQL distributions was very old. It has been removed and is no longer included with MySQL. (Bug 80994, Bug 23068660)
Bugs Fixed
InnoDB: MySQL failed to build on Fedora 24 using GCC 6. (Bug 23227804)
InnoDB: Potential buffer overflow issues were corrected for the InnoDB memcached plugin. (Bug 23187607)
InnoDB: The full-text index cache was freed during a background index cache synchronization. (Bug 22996488)
InnoDB: A full-text index operation raised an assertion. (Bug 22963169)
InnoDB: An INSERT operation on a table with a FULLTEXT index and FTS_DOC_ID column failed because the inserted FTS_DOC_ID value exceeded the permitted gap between consecutive FTS_DOC_ID values. To avoid this problem, the permitted gap between the largest used FTS_DOC_ID value and new FTS_DOC_ID value was raised from 10000 to 65535. (Bug 22679185)
InnoDB: With innodb_autoinc_lock_mode=0, multiple threads waiting for a table-level lock caused an unexpected deadlock. (Bug 21983865, Bug 78761)
InnoDB: A FLUSH TABLES ... FOR EXPORT operation appeared to stall. A loop in the ibuf_contract_in_background function failed to exit. (Bug 21133329, Bug 77011)
InnoDB: A full-text query raised an assertion. Under certain circumstances, DDL operations such as ALTER TABLE ... RENAME caused full-text auxiliary tables to be removed on server restart. (Bug 13651665)
Replication: In the next_event() function, which is called by a slave's SQL thread to read the next even from the relay log, the SQL thread did not release the relaylog.log_lock it acquired when it ran into an error (for example, due to a closed relay log), causing all other threads waiting to acquire a lock on the relay log to hang. With this fix, the lock is released before the SQL thread leaves the function under the situation. (Bug 21697821)
References: See also: Bug 20492319.
Replication: If a multi-threaded replication slave running with relay_log_recovery=1 stopped unexpectedly, during restart the relay log recovery process could fail. This was due to transaction inconsistencies not being filled, see Handling an Unexpected Halt of a Replication Slave. Prior to this fix, to recover from this situation required manually setting relay_log_recovery=0, starting the slave with START SLAVE UNTIL SQL_AFTER_MTS_GAPS to fix any transaction inconsistencies and then restarting the slave with relay_log_recovery=1. This process has now been automated, enabling relay log recovery of a multi-threaded slave upon restart automatically. (Bug 77496, Bug 21507981)
INSERT with ON DUPLICATE KEY UPDATE and REPLACE on a table with a foreign key constraint defined failed with an incorrect “duplicate entry” error rather than a foreign key constraint violation error. (Bug 23135731)
References: This issue is a regression of: Bug 78853, Bug 22037930.
For debug builds, CONCAT_WS() could raise an assertion if there was nothing to append. (Bug 22888420)
Invoking Enterprise Encryption functions in multiple threads simultaneously could cause a server exit. (Bug 22839278)
Attempting to use Enterprise Encryption functions after creating and dropping them could cause a server exit. (Bug 22669012)
Setting sort_buffer_size to a very large value could cause some operations to fail with an out-of-memory error. (Bug 22594514)
An assertion could be raised when a deadlock occurred due to a SELECT ... GROUP BY ... FOR UPDATE query executed using a Loose Index Scan. (Bug 22187476)
Several potential buffer overflow issues were corrected. (Bug 21977380, Bug 23187436, Bug 23202778, Bug 23195370, Bug 23202699)
If the CA certificate as given to the --ssl-ca option had an invalid path, yaSSL returned an error message different from OpenSSL. Now both return SSL connection error: SSL_CTX_set_default_verify_paths failed. (Bug 21920657)
Some string functions returned one or a combination of their parameters as their result. If one of the parameters had a non-ASCII character set, the result string had the same character set, resulting in incorrect behavior when an ASCII string was expected. (Bug 18740222)
On Windows, MySQL installation could result in MySQL being placed under C:\Program Files\Canon\Easy-WebPrint EX. (Bug 14583183)
References: See also: Bug 70918, Bug 68821, Bug 68227.
On Fedora 24, upgrades using a Community MySQL Server RPM failed to replace an installed MariaDB Galera server due to a change in the MariaDB package. (Bug 81390, Bug 23273818)
MySQL did not compile under Solaris 12 using Sun Studio. To correct this, instances of __attribute__ were changed to MY_ATTRIBUTE. (Bug 80748, Bug 22932576)
The INSTALL-SOURCE file had partly outdated information and has been removed from source packages. (Binary packages are unaffected). (Bug 80680, Bug 23081064)
For a server compiled with -DWITH_PERFSCHEMA_STORAGE_ENGINE=0, a memory leak could occur for buffered log messages used during server startup. (Bug 80089, Bug 22578574)
For debug builds, merging a derived table into an outer query block could raise an assertion. (Bug 79502, Bug 22305361, Bug 21139722)
A null pointer dereference of a parser structure could occur during stored procedure name validation. (Bug 79396, Bug 22286421)
Using CREATE USER to create an account with the mysql_native_password or mysql_old_password authentication plugin and using a clause of the form IDENTIFIED WITH plugin AS 'hash_string' caused the account to be created without a password. (Bug 78033, Bug 21616496)
Failure of UNINSTALL PLUGIN could lead to inaccurate or confusing errors for subsequent INSTALL PLUGIN operations. (Bug 74977, Bug 20085672)
mysqld_multi displayed misleading error messages when it was unable to execute my_print_defaults. (Bug 74636, Bug 19920049)
On Windows, MySQL installation failed if the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ registry key was present with a key/value pair of "InstallLocation" and "\Hewlett-Packard\\". (Bug 74631, Bug 19949163)
mysqldump failed silently with no error message when it encountered an error while executing FLUSH LOGS.
into the binary packages. Fixes problems with building software
manually against binary postgresql*-client packages built under an
unprivileged setup. Bump respective PKGREVISION.
See https://github.com/joyent/pkgsrc/issues/377
Functionality Added or Changed
The version of the tcmalloc library included in MySQL distributions was very old. It has been removed and is no longer included with MySQL.
Bugs Fixed
INSERT with ON DUPLICATE KEY UPDATE and REPLACE on a table with a foreign key constraint defined failed with an incorrect “duplicate entry” error rather than a foreign key constraint violation error.
Setting sort_buffer_size to a very large value could cause some operations to fail with an out-of-memory error.
Several potential buffer overflow issues were corrected.
If the CA certificate as given to the --ssl-ca option had an invalid path, yaSSL returned an error message different from OpenSSL. Now both return SSL connection error: SSL_CTX_set_default_verify_paths failed.
Some string functions returned one or a combination of their parameters as their result. If one of the parameters had a non-ASCII character set, the result string had the same character set, resulting in incorrect behavior when an ASCII string was expected.
A null pointer dereference of a parser structure could occur during stored procedure name validation.
mysqld_multi displayed misleading error messages when it was unable to execute my_print_defaults.
under $PKG_SYSCONFDIR, and prevents mysql_install_db from creating
$PREFIX/my.cnf. Brings mysql56-client and mysql56-server in sync
WRT my.cnf location. Bump respective PKGREVISIONs.
Noticed by peterkelm@ on Github.
- Add --peek option to get-wal command to discover existing WAL
files from the Barman's archive
- Add replication-status command for monitoring the status of any
streaming replication clients connected to the PostgreSQL
server. The --target option allows users to limit the request to
only hot standby servers or WAL streaming clients
- Add the switch-xlog command to request a switch of a WAL file to
the PostgreSQL server. Through the '--force' it issues a
CHECKPOINT beforehand
- Add streaming_archiver_name option, which sets a proper
application_name to pg_receivexlog when streaming_archiver is
enabled (only for PostgreSQL 9.3 and above)
- Check for _superuser_ privileges with PostgreSQL's standard
connections (#30)
- Check the WAL archive is never empty
- Check for 'backup_label' on the master when server is down
- Improve barman-wal-restore contrib script
- Treat the "failed backups" check as non-fatal
- Rename '-x' option for get-wal as '-z'
- Add archive_mode=always support for PostgreSQL 9.5 (#32)
- Properly close PostgreSQL connections when necessary
- Fix receive-wal for pg_receive_xlog version 9.2
3.4.1
Bug Fixes
- Gevent connection closes on IO timeout
- "dictionary changed size during iteration" with Python 3
3.4.0
Features
- Include DSE version and workload in Host data
- Add a context manager to Cluster and Session
- Better Error Message for Unsupported Protocol Version
- Make the error message explicitly state when an error comes from
the server
- Short Circuit meta refresh on topo change if NEW_NODE already
exists
- Show warning when the wrong config is passed to SimpleStatement
- Return namedtuple result pairs from execute_concurrent
- BatchStatement should enforce batch size limit in a better way
- Validate min/max request thresholds for connection pool scaling
- Handle or warn about multiple hosts with the same rpc_address
- Write docs around working with datetime and timezones
Bug Fixes
- High CPU utilization when using asyncore event loop
- Fix CQL Export for non-ASCII Identifiers
- Make stress scripts Python 2.6 compatible
- UnicodeDecodeError when unicode characters in key in BOP
- WhiteListRoundRobinPolicy should resolve hosts
- Cluster and Session do not GC after leaving scope
- Don't wait for schema agreement on ignored nodes
- Reprepare on_up with many clients causes node overload
- None inserted into host map when control connection node is
decommissioned
- weakref.ref does not accept keyword arguments
Fixed bug in “evaluate” strategy of Query.update() and Query.delete() which would fail to accommodate a bound parameter with a “callable” value, as which occurs when filtering by a many-to-one equality expression along a relationship.
Fixed bug whereby the event listeners used for backrefs could be inadvertently applied multiple times, when using a deep class inheritance hierarchy in conjunction with mutiple mapper configuration steps.
Fixed bug whereby passing a text() construct to the Query.group_by() method would raise an error, instead of intepreting the object as a SQL fragment.
Anonymous labeling is applied to a func construct that is passed to column_property(), so that if the same attribute is referred to as a column expression twice the names are de-duped, thus avoiding “ambiguous column” errors. Previously, the .label(None) would need to be applied in order for the name to be de-anonymized.
Fixed regression appearing in the 1.0 series in ORM loading where the exception raised for an expected column missing would incorrectly be a NoneType error, rather than the expected NoSuchColumnError.
== 2.3.3 Release Notes
=== New features
Geo::
- Add CONTAINS relation to geo_shape query
=== Enhancements
Core::
- Kill thread local leak
REST::
- CORS handling triggered whether User-Agent is a browser or not
=== Bug fixes
Core::
- Don't try to compute completion stats on a reader after we
already closed it
Highlighting::
- Exclude all but string fields from highlighting if wildcards are
used...
Query DSL::
- Fix NullPointerException in SimpleQueryParser when analyzing
text produces a null query
REST::
- CORS should permit same origin requests
- Allow CORS requests to work with HTTP compression enabled
=== Upgrades
Internal::
- Update Jackson 2.6.2 -> 2.6.6 (latest and final 2.6 patch)
* New configuration variable COMPATINCLUDEDIR
When used with --enable-libgdbm-compat, this variable points to the
directory where the headers file dbm.h and ndbm.h will be installed.
Use this variable to avoid conflicts with already installed headers.
E.g.:
./configure --enable-libgdbm-compat COMPATINCLUDEDIR=/usr/include/gdbm
Postpone I/O associated with TEMP files for as long as possible, with the hope that the I/O can ultimately be avoided completely.
Merged the session extension into trunk.
Added the ".auth ON|OFF" command to the command-line shell.
Added the "--indent" option to the ".schema" and ".fullschema" commands of the command-line shell, to turn on pretty-printing.
Added the ".eqp full" option to the command-line shell, that does both EXPLAIN and EXPLAIN QUERY PLAN on each statement that is evaluated.
Improved unicode filename handling in the command-line shell on Windows.
Improved resistance against goofy query planner decisions caused by incomplete or incorrect modifications to the sqlite_stat1 table by the application.
Added the sqlite3_db_config(db,SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION) interface which allows the sqlite3_load_extension() C-API to be enabled while keeping the load_extension() SQL function disabled for security.
Change the temporary directory search algorithm on Unix to allow directories with write and execute permission, but without read permission, to serve as temporary directories. Apply this same standard to the "." fallback directory.
Bug Fixes:
----------
Fix a problem with the multi-row one-pass DELETE optimization that was causing it to compute incorrect answers with a self-referential subquery in the WHERE clause. Fix for ticket dc6ebeda9396087
Fix a possible segfault with DELETE when table is a rowid table with an INTEGER PRIMARY KEY and the WHERE clause contains a OR and the table has one or more indexes that are able to trigger the OR optimization, but none of the indexes reference any table columns other than the INTEGER PRIMARY KEY. Ticket 16c9801ceba49.
When checking for the WHERE-clause push-down optimization, verify that all terms of the compound inner SELECT are non-aggregate, not just the last term. Fix for ticket f7f8c97e97597.
Fix a locking race condition in Windows that can occur when two or more processes attempt to recover the same hot journal at the same time.
Redis 3.2 contains significant changes to the API and
implementation of Redis.
- A new set of commands for Geo indexing was added (GEOADD,
GEORADIUS and related commands).
- The new BITFIELD command handles contiguous arrays of integers
or counters of arbitrary bits width and offset inside strings.
- Memory optimizations to hold the same data in less memory.
- Lua scripts can now contain side effects using the new effect
replication.
- A complete remote Lua debugger is available in order to make
writing scripts a simpler task.
Read the release notes for the full set of changes:
https://raw.githubusercontent.com/antirez/redis/3.2/00-RELEASENOTES
Bugs fixed
- #821 - issue warning if Cython is old
- #822 - better handling of MySQL connections point for advanced
use-cases.
- #313 - support equality/inequality with generic foreign key
queries, and ensure get_or_create works with GFKs.
- #834 - fixed Python3 incompatibilities in the PasswordField,
thanks @mosquito.
- #836 - fix handling of last_insert_id() when using APSWDatabase.
- #845 - add connection hooks to APSWDatabase.
- #852 - check SQLite library version to avoid calls to missing
APIs.
- #857 - allow database definition to be deferred when using the
connection pool.
- #878 - formerly .limit(0) had no effect. Now adds LIMIT 0.
- #879 - implement a __hash__ method for Model
- #886 - fix count() for compound select queries.
- #895 - allow writing to the foreign_key_id descriptor to set the
foreign key value.
- #893 - fix boolean logic bug in model_to_dict().
- #904 - fix side-effect in clean_prefetch_query, thanks to
@p.kamayev
- #907 - package includes pskel now.
- #852 - fix sqlite version check in BerkeleyDB backend.
- #919 - add runtime check for sqlite3 library to match MySQL and
Postgres. Thanks @M157q
New features
- Added a number of SQLite user-defined functions and aggregates.
- Use the DB-API2 Binary type for BlobField.
- Implemented the lucene scoring algorithm in the sqlite_ext
Cython library.
- #825 - allow a custom base class for ModelOptions, providing an
extension
- #830 - added SmallIntegerField type.
- #838 - allow using a custom descriptor class with
ManyToManyField.
- #855 - merged change from @lez which included docs on using
peewee with Pyramid.
- #858 - allow arguments to be passed on query-string when using
the db_url module. Thanks @RealSalmon
- #862 - add support for truncate table, thanks @dev-zero for the
sample code.
- Allow the related_name model Meta option to be a callable that
accepts the foreign key field instance.
Features
- Add an AddressTranslator interface
- New Retry Policy Decision - try next host
- Don't mark host down on timeout
- SSL hostname verification
- Add C* version to metadata or cluster objects
- Options to Disable Schema, Token Metadata Processing
- Expose listen_address of node we get ring information from
- Use A-record with multiple IPs for contact points
- Custom consistency level for populating query traces
- Normalize Server Exception Types
- Propagate exception message when DDL schema agreement fails
- Specialized exceptions for metadata refresh methods failure
Bug Fixes
- Resolve contact point hostnames to avoid duplicate hosts
- GeventConnection stalls requests when read is a multiple of the
input buffer size
- named_tuple_factory breaks with duplicate "cleaned" col names
- Connection leak if Cluster.shutdown() happens during
reconnection
- HostConnection.borrow_connection does not block when all request
ids are used
- Empty field not being handled by the NumpyProtocolHandler
== 2.3.2 Release Notes
=== Deprecations
REST::
- Deprecate camelCase usages
Search::
- Deprecate sort option reverse.
Settings::
- Deprecate camelCase settings magic
=== Enhancements
Analysis::
- Analyze API : Fix/deprecated filters in analyze in 2x
=== Bug fixes
Aggregations::
- Aggregations: Adds serialisation of sigma to
extended_stats_bucket pipeline aggregation
- ExtendedStatsAggregator should also pass sigma to emtpy aggs.
Allocation::
- Rebalancing policy shouldn't prevent hard allocation decisions
- When considering the size of shadow replica shards, set size to 0
Logging::
- Add missing index name to search slow log.
Mapping::
- Fail if an object is added after a field with the same name.
More Like This::
- Alias items are not ignored anymore
REST::
- Fixes reading of CORS pre-flight headers and methods
- index is a required url part for update by query
Recovery::
- Backports Notify GatewayRecoveryListener on failure
Snapshot/Restore::
- On restore, selecting concrete indices can select wrong index
== 2.3.1 Release Notes
=== Bug fixes
Aggregations::
- Prevents exception being raised when ordering by an aggregation
which wasn't collected
Cluster::
- Cluster stats: fix memory available that is always set to 0
== 2.3.0 Release Notes
=== Breaking changes
Allocation::
- Speed up shard balancer by reusing shard model while moving
shards that can no longer be allocated to a node
Mapping::
- Add per-index setting to limit number of nested fields
=== Deprecations
Geo::
- Deprecate lat_lon and precision_step
- Deprecate geo_point mapping params
Plugin Discovery Multicast::
- Deprecate Discovery Multicast Plugin
Query DSL::
- Add deprecation logging for deprecated queries.
=== New features
Reindex API::
- Backport reindex to 2.x
Task Manager::
- Backport of task management api to 2x
=== Enhancements
Allocation::
- Skip capturing least/most FS info for an FS with no total
- Speed improvements for BalancedShardsAllocator
Cache::
- Make TermsQuery considered costly.
Cluster::
- Shard state action request logging
- Safe cluster state task notifications
Core::
- Remove log4j exception hiding
- Avoid cloning MessageDigest instances
- Add a hard check to ensure we are running with the expected
lucene version
Exceptions::
- Added file name to exceptions when failing to read index state
- Add Exception class name to message in
`NotSerializableExceptionWrapper`
Geo::
- Upgrade GeoPointField to use Lucene 5.5 PrefixEncoding
Internal::
- Cleanup search sub transport actions and collapse
o.e.action.search.type package into o.e.action.search
Java API::
- TransportClient: Add exception when using plugin.types, to help
migration to addPlugin
Logging::
- Log suppressed stack traces under DEBUG
Mapping::
- Add deprecation logging for mapping transform
- Expose the reason why a mapping merge is issued.
- Add sub-fields support to `bool` fields.
- Improve cross-type dynamic mapping updates.
- Make mapping updates more robust.
Network::
- Add additional fallback to http.publish_port and restrict
fallback to transport.publish_port
Packaging::
- Windows service: Use JAVA_HOME environment variable in registry
- Default standard output to the journal in systemd
- Use egrep instead of grep -E for Solaris
Plugin Cloud Azure::
- Add timeout settings (default to 5 minutes)
Plugin Discovery EC2::
- Add ap-northeast-2 (seoul) endpoints for EC2 discovery and S3
snapshots
Plugin Mapper Attachment::
- Fix attachments plugins with docx
REST::
- More robust handling of CORS HTTP Access Control
Reindex API::
- Implement helpful interfaces in reindex requests
- Reindex should timeout if sub-requests timeout
- Teach reindex to retry on rejection
Scripting::
- Logs old script params use to the Deprecation Logger
- Remove suppressAccessChecks permission for Groovy script plugin
- Class permission for Groovy references
- Scripting: Allow to get size of array in mustache
- Added plumbing for compile time script parameters
- Enhancements to the mustache script engine
Search::
- Add deprecation logging for ignore_unmapped parameter
- Add deprecation logging when users use the SCAN search type.
Settings::
- Log warning if max file descriptors too low
=== Bug fixes
Aggregations::
- Setting 'other' bucket on empty aggregation
- Build empty extended stats aggregation if no docs collected for
bucket
- Set meta data for pipeline aggregations
- Filter(s) aggregation should create weights only once.
- Make `missing` on terms aggs work with all execution modes.
- Fix NPE in Derivative Pipeline when current bucket value is null
Aliases::
- Fix _aliases filter and null parameters
- Check lenient_expand_open after aliases have been resolved
Allocation::
- IndicesStore checks for `allocated elsewhere` for every shard
not alocated on the local node
- Prevent peer recovery from node with older version
Analysis::
- Analysis : Allow string explain param in JSON
- Analysis : Fix no response from Analyze API without specified
index
Bulk::
- Bulk api: fail deletes when routing is required but not
specified
CAT API::
- Fix column aliases in _cat/indices, _cat/nodes and _cat/shards
APIs
CRUD::
- fixed propagation of autoGeneratedId on document creation
- Throw exception if content type could not be determined in
Update API
Cache::
- Handle closed readers in ShardCoreKeyMap
Cluster::
- Index deletes not applied when cluster UUID has changed
- Only fail the relocation target when a replication request on it
fails
Core::
- Migrate template settings (add missing byte & time units)
Fielddata::
- Make disabled fielddata loading fail earlier.
Geo::
- Remove .geohash suffix from GeoDistanceQuery and
GeoDistanceRangeQuery
Highlighting::
- Don't override originalQuery with request filters
Inner Hits::
- Query and top level inner hit definitions shouldn't overwrite
each other
Internal::
- Log uncaught exceptions from scheduled once tasks
- FunctionScoreQuery should implement two-phase iteration.
Java API::
- Fix boundary chars in java api
Logging::
- Add missing index name to indexing slow log
- ParseFieldMatcher should log when using deprecated settings.
Mapping::
- Put mapping operations must update metadata of all types.
- Fix serialization of `search_analyzer`.
- Reuse metadata mappers for dynamic updates.
- Fix MapperService#searchFilter(...)
- MapperService: check index.mapper.dynamic during index creation
Network::
- Only accept transport requests after node is fully initialized
Packaging::
- Fix waiting for pidfile
- Enable es_include at init
Parent/Child::
- Check that parent_type in Has Parent Query has child types
- Has child query forces default similarity
Percolator::
- Don't replace found fields if map unmapped fields as string is
enabled
- mpercolate api should serialise start time
Plugin Cloud Azure::
- Fix calling ensureOpen() on the wrong directory
Plugin Discovery GCE::
- Add setFactory permission to GceDiscoveryPlugin
Query DSL::
- Fix FunctionScore equals/hashCode to include minScore and
friends
REST::
- Remove detect_noop from REST spec
- Make text parsing less lenient.
Recovery::
- Try to renew sync ID if `flush=true` on forceMerge
- sync translog to disk after recovery from primary
Reindex API::
- Properly register reindex status
- Be much much much careful about context
- Make search failure cause rest failure
Scripting::
- Check that _value is used in aggregations script before setting
value to specialValue
- Add permission to access sun.reflect.MethodAccessorImpl from
Groovy scripts
- Fixes json generation for scriptsort w/ deprecated params
- Security permissions for Groovy closures
Search::
- Do not apply minimum_should_match on auto generated boolean
query if the coordination factor is disabled.
- Do not apply minimum-should-match on a boolean query if the
coords are disabled
- Fix blended terms take 2
Settings::
- TransportClient should use updated setting for initialization of
modules and service
Snapshot/Restore::
- Prevent closing index during snapshot restore
- Add node version check to shard allocation during restore
Stats::
- Fix recovery translog stats totals when recovering from store
- Fix calculation of age of pending tasks
Task Manager::
- Fix TaskId#isSet to return true when id is set and not other way
around
- Don't wait for completion of list tasks tasks when
wait_for_completion flag is set
Translog::
- Call ensureOpen on Translog#newView() to prevent
IllegalStateException
- Make sure IndexShard is active during recovery so it gets its
fair share of the indexing buffer
- Avoid circular reference in exception
- Initialize translog before scheduling the sync to disk
- Catch tragic even inside the checkpoint method rather than on
the caller side
- Never delete translog-N.tlog file when creation fails
- Close recovered translog readers if createWriter fails
Tribe Node::
- Passthrough environment and network settings to tribe client
nodes
- Tribe node: pass path.conf to inner tribe clients
=== Regressions
Analysis::
- Add PathHierarchy type back to path_hierarchy tokenizer for
backward compatibility with 1.x
Plugin Cloud Azure::
- Fix Unknown [repository] type [azure] error with 2.2.0
REST::
- Don't return all indices immediately if count of expressions >1
and first expression is *
=== Upgrades
Core::
- Upgrade to Lucene 5.5.0 official release
- Upgrade to lucene 5.5.0-snapshot-850c6c2
- Upgrade to lucene 5.5.0-snapshot-4de5f1d
- Update lucene to r1725675
- Upgrade to lucene-5.5.0-snapshot-1721183.
Plugin Cloud Azure::
- Upgrade Azure Storage client to 4.0.0
Plugin Discovery Azure::
- Upgrade azure SDK to 0.9.3
Scripting::
- Upgrade groovy dependency in lang-groovy module to version 2.4.6
== 2.2.1 Release Notes
=== Enhancements
Cluster::
- Shard state action request logging
Core::
- Avoid cloning MessageDigest instances
Exceptions::
- Add Exception class name to message in
`NotSerializableExceptionWrapper`
Network::
- Add additional fallback to http.publish_port and restrict
fallback to transport.publish_port
Packaging::
- Windows service: Use JAVA_HOME environment variable in registry
Scripting::
- Class permission for Groovy references
Settings::
- Log warning if max file descriptors too low
=== Bug fixes
Aggregations::
- Set meta data for pipeline aggregations
Aliases::
- Fix _aliases filter and null parameters
Bulk::
- Bulk api: fail deletes when routing is required but not
specified
Inner Hits::
- Query and top level inner hit definitions shouldn't overwrite
each other
Logging::
- Add missing index name to indexing slow log
Parent/Child::
- Check that parent_type in Has Parent Query has child types
- Has child query forces default similarity
Percolator::
- Don't replace found fields if map unmapped fields as string is
enabled
Plugin Cloud Azure::
- Fix calling ensureOpen() on the wrong directory
Plugin Discovery GCE::
- Add setFactory permission to GceDiscoveryPlugin
Query DSL::
- Use MappedFieldType.termQuery to generate simple_query_string
queries
REST::
- Remove detect_noop from REST spec
Scripting::
- Add permission to access sun.reflect.MethodAccessorImpl from
Groovy scripts
Snapshot/Restore::
- Add node version check to shard allocation during restore
Stats::
- Fix recovery translog stats totals when recovering from store
Tribe Node::
- Passthrough environment and network settings to tribe client
nodes
=== Regressions
Plugin Cloud Azure::
- Fix Unknown [repository] type [azure] error with 2.2.0
=== Upgrades
Plugin Repository Azure::
- Upgrade Azure Storage client to 4.0.0
== 2.2.0 Release Notes
=== Breaking changes
Index APIs::
- Change Field stats API response to include both number and
string based min and max values
Scripting::
- Filter classes loaded by scripts
- Lock down javascript and python script engines better
=== Deprecations
Java API::
- Deprecate the count api in favour of search with size 0
- Deprecates defaultRescoreWindowSize
Plugin Discovery Multicast::
- Deprecate the discovery-multicast plugin
Query DSL::
- Deprecate the `missing` query
- Deprecate NotQueryBuilder
Search::
- Deprecate _search/exists in favour of regular _search with size
0 and terminate_after 1
=== New features
Geo::
- Add CONTAINS relation to geo_shape query
- Add support for Lucene 5.4 GeoPoint queries
- Add GeoPointV2 Field Mapping
Network::
- Allow binding to multiple addresses.
Plugin Analysis Phonetic::
- Add support for `daitch_mokotoff`
Plugin Repository S3::
- Add support for S3 storage class
Plugins::
- Decentralize plugin security
Search::
- Add query profiler
=== Enhancements
Aliases::
- Add support to _aliases endpoint to specify multiple indices and
aliases in one action
Allocation::
- Simplify delayed shard allocation
- Add cluster-wide setting for total shard limit
- Early terminate high disk watermark checks on single data node
cluster
Analysis::
- Add detail response support for _analyze API
CAT API::
- Add sync_id to cat shards API
- Add duration field to /_cat/snapshots
- Add cat API for repositories and snapshots
- Adds disk used by indices to _cat/allocation
Cluster::
- Safe cluster state task notifications
- Reroute once per batch of shard failures
- Add callback for publication of new cluster state
- Split cluster state update tasks into roles
- Use general cluster state batching mechanism for shard started
- Use general cluster state batching mechanism for shard failures
- Set an newly created IndexShard's ShardRouting before exposing
it to operations
- Uniform exceptions for TransportMasterNodeAction
Core::
- If we can't get a MAC address for the node, use a dummy one
- Simplify shard inactive logging
- Simplify IndexingMemoryController#checkIdle
- IndexingMemoryController should not track shard index states
- Make PerThreadIDAndVersionLookup per-segment
- Verify Checksum once it has been fully written to fail as soon
as possible
Discovery::
- Don't allow nodes with missing custom meta data to join cluster
Exceptions::
- Deduplicate cause if already contained in shard failures
- Give a better exception when running from freebsd jail without
enforce_statfs=1
- Make root_cause of field conflicts more obvious
Fielddata::
- Update GeoPoint FieldData for GeoPointV2
Geo::
- Geo: Fix toString() in GeoDistanceRangeQuery and GeoPolygonQuery
- Enable GeoPointV2 with backward compatibility testing
- Refactor Geo utilities to Lucene 5.4
Index APIs::
- Add option to disable closing indices
Index Templates::
- Disallow index template pattern to be the same as an alias name
Internal::
- Simplify the Text API.
- Simpler using compressed oops flag representation
- Info on compressed ordinary object pointers
- Explicitly log cluster state update failures
- Use transport service to handle RetryOnReplicaException to
execute replica action on the current node
- Make IndexShard operation be more explicit about whether they
are expected to run on a primary or replica
- Avoid trace logging allocations in
TransportBroadcastByNodeAction
- Only trace log shard not available exceptions
- Transport options should be immutable
- Fix dangling comma in ClusterBlock#toString
- Improve some logging around master election and cluster state
- Add System#exit(), Runtime#exit() and Runtime#halt() to
forbidden APIs
- Simplify XContent detection.
- Add threadgroup isolation.
- Cleanup plugin security
- Add workaround for JDK-8014008
- Refactor retry logic for TransportMasterNodeAction
- Remove MetaDataSerivce and it's semaphores
- Cleanup IndexMetaData
- TransportNodesAction shouldn't hold on to cluster state
- Add SpecialPermission to guard exceptions to security policy.
- Clean up scripting permissions.
- Factor groovy out of core into lang-groovy
- Factor expressions scripts out to lang-expression plugin
Java API::
- TransportClient: Add exception when using plugin.types, to help
migration to addPlugin
- Align handling of interrupts in BulkProcessor
- BulkProcessor backs off exponentially by default
- Add java API for synced flush
- Allow to get and set ttl as a time value/string
- Reject refresh usage in bulk items when using and fix NPE when
no source
- BulkProcessor retries after request handling has been rejected
due to a full thread pool
Logging::
- Add circuit breaker name to logging package
- Log cluster health status changes
- Map log-level 'trace' to JDK-Level 'FINEST'
Mapping::
- Make mapping serialization more robust.
- Make mappings immutable.
- Make MappedFieldType.checkTypeName part of
MappedFieldType.checkCompatibility.
- throw exception if a copy_to is within a multi field
- Register field mappers at the node level.
Network::
- only allow code to bind to the user's configured port
numbers/ranges
- Port of publishAddress should match port of corresponding
boundAddress
Packaging::
- Default standard output to the journal in systemd
- Use egrep instead of grep -E for Solaris
- punch thru symlinks when loading plugins/modules
- set ActiveProcessLimit=1 on windows
- set RLIMIT_NPROC = 0 on bsd/os X systems.
- Drop ability to execute on Solaris
- Packaging: change permissions/ownership of config dir
- Release: Fix package repo path to only consist of major version
- Nuke ES_CLASSPATH appending, JarHell fail on empty classpath
elements
- Get lang-javascript, lang-python, securemock ready for script
refactoring
- Remove some bogus permissions only needed for tests.
- Remove java.lang.reflect.ReflectPermission
"suppressAccessChecks"
Plugin Cloud AWS::
- Add support for proxy authentication for s3 and ec2
Plugin Cloud Azure::
- Add timeout settings (default to 5 minutes)
- Add support for secondary azure storage account
Plugin Cloud GCE::
- Adding backoff from retries on GCE errors
- Add `_gce_` network host setting
Plugin Discovery EC2::
- Add ap-northeast-2 (seoul) endpoints for EC2 discovery and S3
snapshots
- Adding US-Gov-West
- Improved building of disco nodes
Plugin Mapper Attachment::
- Backport mapper-attachments plugin to 2.x
Plugin Repository S3::
- Add aws canned acl
Plugins::
- Expose http.type setting, and collapse al(most all) modules
relating to transport/http
- Ban RuntimePermission("getClassLoader")
- Add nicer error message when a plugin descriptor is missing
- Don't be lenient in PluginService#processModule(Module)
- Check "plugin already installed" before jar hell check.
- Plugin script to set proper plugin bin dir attributes
- Plugin script to set proper plugin config dir attributes
Query DSL::
- Allow CIDR notation in query string query
REST::
- Make XContentGenerator.writeRaw* safer.
- Filter path refactoring
Recovery::
- Handle cancel exceptions on recovery target if the cancel comes
from the source
- Decouple routing and primary operation logic in
TransportReplicationAction
Scripting::
- Add property permissions so groovy scripts can serialize json
- Remove ScriptEngineService.unwrap.
- Remove ScriptEngineService.execute.
Search::
- Support * wildcard to retrieve stored fields in the 'fields'
option
- Caching Weight wrappers should propagate the BulkScorer.
- fix numerical issue in function score query
Snapshot/Restore::
- Support wildcards for getting repositories and snapshots
- Add ignore_unavailable parameter to skip unavailable snapshot
Stats::
- Add system CPU percent to OS stats
- Pull Fields instance once from LeafReader in completion stats
- Add os.allocated_processors stats
Top Hits::
- Put method addField on TopHitsBuilder
Translog::
- Check for tragic event on all kinds of exceptions not only ACE
and IOException
Tribe Node::
- Tribe nodes should apply cluster state updates in batches
=== Bug fixes
Aggregations::
- Filter(s) aggregation should create weights only once.
- Make `missing` on terms aggs work with all execution modes.
- Run pipeline aggregations for empty buckets added in the Range
Aggregation
- [Children agg] fix bug that prevented all child docs from being
evaluated
- Correct typo in class name of StatsAggregator
- Fix significant terms reduce for long terms
- Pass extended bounds into HistogramAggregator when creating an
unmapped aggregator
- Added correct generic type parameter on ScriptedMetricBuilder
Aliases::
- Check lenient_expand_open after aliases have been resolved
Allocation::
- Prevent peer recovery from node with older version
- Fix calculation of next delay for delayed shard allocation
- Take ignored unallocated shards into account when making
allocation decision
- Only allow rebalance operations to run if all shard store data
is available
- Delayed allocation can miss a reroute
- Check rebalancing constraints when shards are moved from a node
they can no longer remain on
Bulk::
- Do not release unacquired semaphore
CAT API::
- Properly set indices and indicesOptions on subrequest made by
/_cat/indices
CRUD::
- Throw exception if content type could not be determined in
Update API
Cluster::
- Only fail the relocation target when a replication request on it
fails
- Handle shards assigned to nodes that are not in the cluster
state
- Bulk cluster state updates on index deletion
Core::
- BitSetFilterCache duplicates its content.
- Limit the max size of bulk and index thread pools to bounded
number of processors
- AllTermQuery's scorer should skip segments that never saw the
requested term
- Include root-cause exception when we fail to change shard's
index buffer
- Restore thread interrupt flag after an InterruptedException
- Use fresh index settings instead of relying on @IndexSettings
- Record all bytes of the checksum in VerifyingIndexOutput
- When shard becomes active again, immediately increase its
indexing buffer
- Close TokenStream in finally clause
Engine::
- Never wrap searcher for internal engine operations
Exceptions::
- Fix ensureNodesAreAvailable's error message
Fielddata::
- Don't cache top level field data for fields that don't exist
Geo::
- Geo: Allow numeric parameters enclosed in quotes for
'geohash_grid' aggregation
Highlighting::
- Fix spans extraction to not also include individual terms.
Index APIs::
- Field stats: Index constraints should remove indices in the
response if the field to evaluate is empty
- Field stats: Fix NPE for index constraint on empty index
- Field stats: Added `format` option for index constraints
- Restore previous optimize transport action name for bw comp
- Forbid index name `.` and `..`
Internal::
- Log uncaught exceptions from scheduled once tasks
- Make sure the remaining delay of unassigned shard is updated
with every reroute
- Throw a meaningful error when loading metadata and an alias and
index have the same name
- fixup issues with 32-bit jvm
- Failure to update the cluster state with the recovered state
should make sure it will be recovered later
- Properly bind ClassSet extensions as singletons
- Streamline top level reader close listeners and forbid general
usage
- Gateway: a race condition can prevent the initial cluster state
from being recovered
- Verify actually written checksum in VerifyingIndexOutput
- Remove all setAccessible in tests and forbid
- Remove easy uses of setAccessible in tests.
- Ban setAccessible from core code, restore monitoring stats under
java 9
Logging::
- Settings in log config file should not overwrite custom
parameters
- Plugin cli tool should not create empty log files
Mapping::
- Fix MapperService#searchFilter(...)
- Fix initial sizing of BytesStreamOutput.
- MetaDataMappingService should call MapperService.merge with the
original mapping update.
- Fix copy_to when the target is a dynamic object field.
- Only text fields should accept analyzer and term vector
settings.
- Mapper parsers should not check for a `tokenized` property.
- Validate that fields are defined only once.
- Check mapping compatibility up-front.
- Don't treat _default_ as a regular type.
- Don't ignore mapping merge failures.
- Treat mappings at an index-level feature.
- Multi field names may not contain dots
- Mapping: Allows upgrade of indexes with only search_analyzer
specified
Packaging::
- Fix Windows service installation failure
- fix command line options for windows bat file
- Handle system policy correctly
- Startup script exit status should catch daemonized startup
failures
Plugin Cloud AWS::
- Discovery-ec2 plugin should check `discovery.type`
Plugin Delete By Query::
- Fix Delete-by-Query with Shield
- Delete by query to not wrap the inner query into an additional
query element
Plugin Mapper Attachment::
- Fix toXContent() for mapper attachments field
Plugin Repository S3::
- Hack around aws security hole of accessing sun.security.ssl, s3
repository works on java 9 again
Plugins::
- Fix plugin list command error message
- Parse Java system properties in plugin.bat
- PluginManager: Dont leave leftover files on unsuccessful
installs
- Fix HTML response during redirection
Query DSL::
- Fix FunctionScore equals/hashCode to include minScore and
friends
- Min should match greater than the number of optional clauses
should return no result
- Return a better exception message when `regexp` query is used on
a numeric field
REST::
- Throw exception when trying to write map with null keys
- XContentFactory.xContentType: allow for possible UTF-8 BOM for
JSON XContentType
- Restore support for escaped '/' as part of document id
- Add missing REST spec for `detect_noop`
- Expose nodes operation timeout in REST API
- Ensure XContent is consistent across platforms
Recovery::
- sync translog to disk after recovery from primary
- CancellableThreads should also treat ThreadInterruptedException
as InterruptedException
Scripting::
- Security permissions for Groovy closures
Search::
- Fix NPE when a segment with an empty cache gets closed.
- Fix the quotes in the explain message for a script score
function without parameters
Settings::
- TransportClient should use updated setting for initialization of
modules and service
Shadow Replicas::
- Don't pull translog from shadow engine
Snapshot/Restore::
- Snapshot restore and index creates should keep index settings
and cluster blocks in sync
- Snapshot restore operations throttle more than specified
- Fix blob size in writeBlob() method
Stats::
- Fix calculation of age of pending tasks
- serialize os name, arch and version too
- Add extra validation into `cluster/stats`
- Omit current* stats for OldShardStats
Translog::
- Make sure IndexShard is active during recovery so it gets its
fair share of the indexing buffer
- Avoid circular reference in exception
- Initialize translog before scheduling the sync to disk
- Translog base flushes can be disabled after replication
relocation or slow recovery
- Catch tragic even inside the checkpoint method rather than on
the caller side
- Never delete translog-N.tlog file when creation fails
- Close recovered translog readers if createWriter fails
- Fail and close translog hard if writing to disk fails
- Prevent writing to closed channel if translog is already closed
- Don't delete temp recovered checkpoint file if it was renamed
- Translog recovery can repeatedly fail if we run out of disk
Tribe Node::
- Tribe node: pass path.conf to inner tribe clients
- Fix tribe node to load config file for internal client nodes
=== Regressions
Analysis::
- Add PathHierarchy type back to path_hierarchy tokenizer for
backward compatibility with 1.x
Internal::
- Deduplicate concrete indices after indices resolution
Plugin Cloud Azure::
- Filter cloud azure credentials
Query DSL::
- RangeQueryParser should accept `_name` in inner field
=== Upgrades
Core::
- Upgrade to lucene-5.4.1.
- Upgrade to lucene-5.4.0.
- Upgrade Lucene to 5.4.0-snapshot-1715952
- Upgrade Lucene to 5.4.0-snapshot-1714615
- Upgrade to lucene-5.4.0-snapshot-1712973.
- update to lucene-5.4.x-snapshot-1711508
- Upgrade to lucene-5.4-snapshot-1710880.
- Upgrade to lucene-5.4-snapshot-1708254.
- upgrade lucene to r1702265
- Upgrade master to lucene 5.4-snapshot r1701068
Geo::
- Update to spatial4j 0.5 for correct Multi-Geometry
Network::
- Upgrade Netty to 3.10.5.final
Plugin Discovery Azure::
- Update Azure Service Management API to 0.9.0
Plugin Discovery EC2::
- Upgrade to aws 1.10.33
Plugin Lang JS::
- upgrade rhino for plugins/lang-javascript
== 2.1.2 Release Notes
=== Enhancements
Internal::
- Only trace log shard not available exceptions
Plugin Cloud Azure::
- Add timeout settings (default to 5 minutes)
Translog::
- Check for tragic event on all kinds of exceptions not only ACE
and IOException
=== Bug fixes
Aggregations::
- Make `missing` on terms aggs work with all execution modes.
Aliases::
- Check lenient_expand_open after aliases have been resolved
Allocation::
- Prevent peer recovery from node with older version
Cluster::
- Only fail the relocation target when a replication request on it
fails
Core::
- BitSetFilterCache duplicates its content.
- Limit the max size of bulk and index thread pools to bounded
number of processors
- AllTermQuery's scorer should skip segments that never saw the
requested term
Highlighting::
- Fix spans extraction to not also include individual terms.
Internal::
- Log uncaught exceptions from scheduled once tasks
- Fix ConcurrentModificationException from nodes info and nodes
stats
Mapping::
- Fix MapperService#searchFilter(...)
- Fix initial sizing of BytesStreamOutput.
Packaging::
- Fix Windows service installation failure
- fix command line options for windows bat file
Query DSL::
- Fix FunctionScore equals/hashCode to include minScore and
friends
Recovery::
- sync translog to disk after recovery from primary
Stats::
- Fix calculation of age of pending tasks
Translog::
- Make sure IndexShard is active during recovery so it gets its
fair share of the indexing buffer
- Avoid circular reference in exception
- Initialize translog before scheduling the sync to disk
- Translog base flushes can be disabled after replication
relocation or slow recovery
- Catch tragic even inside the checkpoint method rather than on
the caller side
- Never delete translog-N.tlog file when creation fails
- Close recovered translog readers if createWriter fails
Tribe Node::
- Tribe node: pass path.conf to inner tribe clients
=== Regressions
Analysis::
- Add PathHierarchy type back to path_hierarchy tokenizer for
backward compatibility with 1.x
Changes in DBI 1.636 - 24th April 2016
Fix compilation for threaded perl <= 5.12 broken in 1.635 RT#113955
Revert change to DBI::PurePerl DESTROY in 1.635
Change t/16destroy.t to avoid race hazard RT#113951
Output perl version and archname in t/01basics.t
Add perl 5.22 and 5.22-extras to travis-ci config
---------------------------------
Changes in DBI 1.635 - 24th April 2016
Fixed RaiseError/PrintError for UTF-8 errors/warnings. RT#102404
Fixed cases where ShowErrorStatement might show incorrect Statement RT#97434
Fixed DBD::Gofer for UTF-8-enabled STDIN/STDOUT
thanks to mauke PR#32
Fixed fetchall_arrayref({}) behavior with no columns
thanks to Dan McGee PR#31
Fixed tied CachedKids ref leak in attribute cache by weakening
thanks to Michael Conrad RT#113852
Fixed "panic: attempt to copy freed scalar" upon commit() or rollback()
thanks to fbriere for detailed bug report RT#102791
Ceased to ignore DESTROY of outer handle in DBI::PurePerl
Treat undef in DBI::Profile Path as string "undef"
thanks to fREW Schmidt RT#113298
Fix SQL::Nano parser to ignore trailing semicolon
thanks to H.Merijn Brand.
Added @ary = $dbh->selectall_array(...) method
thanks to Ed Avis RT#106411
Added appveyor support (Travis like CI for windows)
thanks to mbeijen PR#30
Corrected spelling errors in pod
thanks to Gregor Herrmann RT#107838
Corrected and/or removed broken links to SQL standards
thanks to David Pottage RT#111437
Corrected doc example to use dbi: instead of DBI: in DSN
thanks to Michael R. Davis RT#101181
Removed/updated broken links in docs
thanks to mbeijen PR#29
Clarified docs for DBI::hash($string)
Removed the ancient DBI::FAQ module RT#102714
Fixed t/pod.t to require Test::Pod >= 1.41 RT#101769
This release was developed at the Perl QA Hackathon 2016
http://act.qa-hackathon.org/qa2016/
which was made possible by the generosity of many sponsors..