commit 9325d7bc1712aa1e3ea0afb18f6b843fed37536d
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Jun 22 12:30:49 2017 +0200

    Bug#26310935: MOVE AWS KMS CREDENTIALS TO DIFFERENT DIRECTORY
    
    Description: Moving AWS KMS credentials to a different
                 directory to facilitate source packages
                 creation without those credentials.
    
    (cherry picked from commit 153eb9cabd543d27f4bc112359e1af9d5636f34e)

commit 6aee810a2087b1200ea13dc2f554fdeda80b1452
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Thu Jun 22 13:56:27 2017 +0530

    Bug#26314756: ASYNCHRONOUS_CHANNELS_STATE_OBSERVER INITIALIZATION MISSING FROM DELAYED GR
    
    Issue:
    ======
    In case of delayed server start GR plugin starts from
    Delayed_initialization_thread::initialization_thread_handler class and not
    from plugin_group_replication_start(). asynchronous_channels_state_observer
    observers which keep track of all replication channel starts, stop, .. won't
    get start in this case as it is not getting initialized.
    As asynchronous replication channel cannot be started on secondary, while
    group replication is running on single primary-mode, this missing
    initialization of asynchronous_channels_state_observer will allow secondaries
    to start asynchronous replication channel and get data through asynchronous
    replication.
    
    Solution:
    =========
    Add missing initialize_asynchronous_channels_observer() function in
    Delayed_initialization_thread::initialization_thread_handler().
    
    (cherry picked from commit 160aef6fc359e093ddbaaa346fa1570e8357e4ac)

commit cfb42684f484ffc13ead9772e2ce92f7d57d4440
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Wed Jun 21 16:20:47 2017 +0800

    Bug #26266758  SKIPPING MYSQL SLAVE ERROR CODE 1590 (ER_SLAVE_INCIDENT) DOES NOT WORK
    
    After generating GTID for incident log event, skipping slave error
    code 'ER_SLAVE_INCIDENT' does not work. The root cause is that we
    did not commit the transaction to consume its owned GTID when
    applying the incident log event in the case, and more the slave
    job added by the incident's GTID is wrongly removed from the
    global assigned queue when MTS is enable.
    
    To make skipping slave error code 'ER_SLAVE_INCIDENT' work well,
    commit the transaction to consume its owned GTID when applying
    incident log event in the case and remove the slave job added
    by the incident's GTID correctly when MTS is enable.
    To make NDB cluster happy, if there is no binlog cache then we
    write incidents into the binlog directly.
    
    (cherry picked from commit 4585ae70078721d7ee1ed23ee632a251ac32de41)

commit 2c94d69b5227487ba54f5bcc6fa7a02e6224e689
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Mon Jun 12 14:39:14 2017 +0800

    Bug#26243264 ALTER TABLE ON ENCRYPTED TABLE CAUSES FRM OUT OF SYNC AND DECRYPTS DATA
    
    This bug is cased by that we didn't set the encryption attribuite properly in altering table.
    
    Approved by Jimmy Yang <Jimmy.Yang@oracle.com>
    
    (cherry picked from commit 2ef1a5d1b626e1f5ae6a35c69f8a221f95a266f4)

commit d53f8a7db213042c3bdae7599fee0791887b3fbf
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 08:03:07 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7
    
    (cherry picked from commit d8e6a93b0ead34c61aaa12c2c4a41d817c075ba8)

commit 636c2ae4294f3d36d3d010b92cf91537daf828c1
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Mon May 29 22:40:23 2017 +0300

    Fix for bug#26106655 "DISCREPANCY BETWEEN IMPLICIT DB OF PARENT TABLE FOR FK AND REFERENCES PRIVILEGE".
    
    Check for REFERENCES privilege was using incorrect database in some cases.
    
    There was discrepancy between database which was used by SEs for parent
    tables and used for check of REFERENCES privilege in cases when no explicit
    database was specified for parent table.
    
    This patch removes the discrepancy by aligning check for REFERENCES
    privilege with SE behavior.
    
    (cherry picked from commit bd6aa24131505886b06381fcce97d97efa9f6002)

commit 74c26e2316df43d81e1f3be374021b405c9617b1
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Jun 1 12:48:13 2017 +0200

    Bug#22834591: unused-local-typedef warnings from boost 1.59
    
    Build broken when all -DWITH_XXX=system
    
    cmake .. -DWITH_EDITLINE=system -DWITH_LIBEVENT=system -DWITH_LZ4=system -DWITH_MECAB=system -DWITH_SSL=system -DWITH_ZLIB=system
    
    CMake Error at plugin/keyring/CMakeLists.txt:53 (ADD_COMPILE_FLAGS):
      Unknown CMake command "ADD_COMPILE_FLAGS".
    
    Fix:
    INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/compile_flags.cmake)
    
    (cherry picked from commit 70b6d76899732daf96da1f02777e4049dc2a6bca)

commit 11a0d1d26474dba4a5ac18b16c4bf4aa35a0b37f
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed May 31 19:02:08 2017 +0530

    Update compatver to 5.6.37 for fedora26 server builds
    
    (cherry picked from commit d5aae9182fdc0d0f82c387561f99b3a00ec71411)

commit 35645debca086a46997304b5c554273158da61ce
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 30 10:28:10 2017 +0200

    BUG#26148391 MYSQLD_PRE_SYSTEMD SCRIPT DOES NOT GET ERROR LOG FROM CUSTOM MY.CNF
    
    Script searched for log-error only, however log_error is also
    supported by mysqld, fixed by using regexp.
    
    (cherry picked from commit 10819a832cccddf894ba32b6b39f739b16283433)

commit 0cbf26b60656224537b90382370ea2bdfe9b7823
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue May 30 13:20:15 2017 +0530

    Remove authentication ldap plugin from docker rpms
    
    (cherry picked from commit b440be3fd79b0635b5759dcdd7851a7fa2970c51)

commit 76741a55019028c5772d5d75d20bf3a5300ae18e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 30 12:02:20 2017 +0530

    Bug#26163403: COPYRIGHT HEADER MISSING IN AUTHENTICATION_LDAP FILES
    
    * Added GPL licensing text for LDAP SASL client side plug-in.
    
    (cherry picked from commit 55df42e3a3ad7b39c793c66d41fff76dc9910143)

commit 84251e59045c783144c087f8a9f727dd441a96bc
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Mon May 29 13:43:22 2017 +0200

    WL#9143: Keyring plugin for the Amazon's AWS
             Key Management service
    
    Post-push fix: Fixing keyring_udf failure
    
    (cherry picked from commit 9c5ae02e3ce451c328cf6d851fa05a2d3410b0c3)

commit 929305f2b592e3bd960ef3f4472074dca6e614e2
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Jun 15 12:30:43 2017 +0530

    Revert commit ec6d375a: ndb_top applicable only for 7.6+ releases

commit ec6d375a13df55ba0acf30c4c0523e7f7addf892
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Jun 15 10:51:38 2017 +0530

    Add ndb_top tool to rpm build

commit c9acedeec4d8510d8e90a32876584a983beed9ba
Merge: 3ea11b1 033c9f8
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 16:51:41 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 033c9f8c8058475d9b80de570af2c117ceeb9625
Merge: 471ac96f 66fd822
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 16:40:13 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 66fd8223bb0bad6eb952ec23342a5df48595ebf1
Merge: d27119c 1a89e18
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 16:39:52 2017 +0530

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit 1a89e1835414feea7361c42c99777d8f4a705bc3
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 16:24:19 2017 +0530

    WL#10814 - Part III - Cleanup clusterj-openjpa and clusterj-jpatest
    
    Changes
     - Removed clusterj-openjpa and clusterj-jpatest source from the tree
     - Removed the clusterj_jpa test from MTR
     - Updated POM and CMakeLists to skip building these jpa modules and
       also removed all the jpa dependencies.
     - Updated clusterj/logging.properties
     - Removed references to jpa in comments from IndexHandlerImpl.java

commit a02780865390208c6c602e6ebd32141189049bc9
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 16:24:12 2017 +0530

    WL#10814 - Part II - Cleanup clusterj-jdbc
    
    Changes
     - Removed cluster-jdbc source from the tree
     - Updated POM and CMakeLists to skip building clusterj-jdbc
     - Updated clusterj/logging.properties

commit 6e114270e89234f9d0b9272a1d5ad137bc5ca5aa
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 16:24:00 2017 +0530

    WL#10814 - Part I - Cleanup clusterj-bindings
    
    Changes
     - Removed clusterj-bindings source from tree.
     - Updated clusterj/logging.properties.

commit 3ea11b169874aed826da772fdc272eb61c5d3d2f
Merge: ffe2f87 471ac96f
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 16:22:01 2017 +0530

    Null Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    (Merge tag 'clone-5.5.57-build' into mysql-5.5-cluster-7.2)

commit 471ac96f6c7e93523ff6973c5a5d7361f7b1d335
Merge: f2fe272 d27119c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 16:21:22 2017 +0530

    Null Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4
    
    (Merge tag 'clone-5.5.57-build' into mysql-5.5-cluster-7.2)

commit d27119c8695ca9d89ec7c037381bfdfcfc1c0b1b
Merge: 98a5675 4742513
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 16:19:25 2017 +0530

    Null Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3
    
    (Merge tag 'clone-5.5.57-build' into mysql-5.5-cluster-7.2)

commit 4742513a1739a7f595e3d8466c0069ec236ad31a
Merge: 00fca74b 151fe52
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 16:14:50 2017 +0530

    Merge tag 'clone-5.5.57-build' into mysql-5.5-cluster-7.2

commit ffe2f870d8a064d03bc525e3e77f2db263e5e648
Merge: de56eb9 f2fe272
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 15:46:39 2017 +0530

    Null Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    (Merge tag 'clone-5.6.37-build' into mysql-5.6-cluster-7.3)

commit f2fe2722ef8c6a3404d7f3825bc380e5a74efe49
Merge: 027ffa3 98a5675
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 15:43:21 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4
    
    (Merge tag 'clone-5.6.37-build' into mysql-5.6-cluster-7.3)

commit 98a56755c5ef4038eb6176c5a573a2a925dc2f2c
Merge: 3e2a580 a8c1489
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 15:40:18 2017 +0530

    Merge tag 'clone-5.6.37-build' into mysql-5.6-cluster-7.3

commit de56eb990e750e577bf62e53cf814c291598668c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Jun 1 18:40:15 2017 +0530

    Post Merge Fix
    
    - Update result files of ndb_dist_priv and ndb_rpl_dist_priv tests
    - A new user msysql.session is created on bootstrap of the server.
      It was added in commits 762edb6ddf6d244b88e1c3e22787c76dc388ee92
      and 0c12827cbee50f8c5e4581008967d85c1463f40e
    - The result files are updated to include additional entries
      corresponding to this new user returned by a variety of select
      queries

commit 0d241eb5b2b84ad41c9dc8e1e2ac78e31ebe0508
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue May 30 14:44:21 2017 +0200

    Deb packaging: Workaround for keyring_aws build failure
    
    The DEB_AWS_SDK cmake flag was lost during the build. Change
    to pass it on internally.
    
    (cherry picked from commit 9da34cff69d050ba0c6cd46fa072ba2d1f427a4c)

commit 864c443d2508bf1f0bc7e6c6fccc31b8444cc23e
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue May 30 09:48:47 2017 +0200

    Removed AWS plugin from default list to fix Debian 7 build
    
    The AWS plugin should only be added to platforms supporting the AWS SDK, but
    was also added to the default list, breaking the build on Debian 7. Removed
    from the list, so the plugin is only added is DEB_AWS_SDK is set.
    
    (cherry picked from commit defbef08fd86f0fc09f297827d6f8b952aeeace2)

commit 1ca64204ac09369a1184996ab735ab57c239d202
Merge: 1e7a8ab ec0357e
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 14:37:38 2017 +0530

    Merge tag 'clone-5.7.19-build' into mysql-5.7-cluster-7.5

commit 1e7a8ab96cb1003c95186c36ac725ee8b7c16f60
Merge: 429b879 027ffa3
Author: John David Duncan <john.duncan@oracle.com>
Date:   Sun Jun 11 10:03:56 2017 -0700

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 027ffa3818489ce798411669ee9458fa4d8a91c0
Author: John David Duncan <john.duncan@oracle.com>
Date:   Sun Jun 11 09:59:44 2017 -0700

    DIRECTORY was added in 2.8.12.
    CMake 2.8.2 must be supported on linux for MySQL 5.7.
    For MySQL 5.6 CMake 2.8 must be supported.

commit 429b879d0cfadf2d9dd15d6c6f40a36db93ec545
Merge: 47cbf84 4f13aee
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jun 9 14:49:10 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5 (Bug#26138592)

commit 4f13aeefee7ecdfc03d8ebef1eeeb79f39cb723c
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu May 25 00:37:58 2017 +0200

    Bug#26138592 MANY DELETES (OR MANY INSERTS) THEN DROP TABLE MAY CAUSE UNDEFINED BEHAVIOUR
    
    When a fragment is about to be released (releaseFragResources), make sure
    that there are no pending expand or shrink on fragment.
    
    As optimization change fragment state so that expand or shrink will do
    nothing.
    
    In addition to the above bug fix, in execEXPANDCHECK2 and execSHRINKCHECK2
    check of fragment level is moved before potentially pages allocation.

commit 47cbf84f79a9c4545fa1899426e63175abd80e73
Merge: 5a0883b ec06283
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Jun 9 09:09:45 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit ec06283b6ee98031416c52fa74e707a96493df0e
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Jun 9 08:56:07 2017 +0200

    Bug#26239591 ALLOW JOIN-PUSHDOWN OF JOIN IN COMBINATION WITH 'GROUP BY'
    
    Due to previous unclear seperation between the optimize
    and execute phases when the query involved a 'GROUP BY',
    the 'join-pushable evaluator' couldn't previously be sure
    whether the optimized QEP (Query Execution Plan) was pushable
    or not. Thus it choosed to not push 'grouped joins'.
    
    This has been cleaned up by WL5558 long ago, so we can
    now remove this limitation.

commit 5a0883bda26b7f16b850c4de8beb2811724561ad
Merge: 639ca2c 5f5a711
Author: John David Duncan <john.duncan@oracle.com>
Date:   Wed Jun 7 19:49:07 2017 -0700

    Null merge from mysql-5.6-cluster-7.4

commit 5f5a71104fbd954b25e014be5931b07871111211
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Jun 6 19:55:23 2017 -0700

    For Cluster 7.4 only, fix ndb nodejs build errors on Solaris

commit 639ca2c5d404b6881686d8c7f8aa418ed43cd6ea
Merge: 042e0d4 9c9444b
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Jun 5 16:44:59 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5

commit 9c9444b7097b5c86768e8b79687c5692c851884e
Merge: eac1d87 3e2a580
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Jun 5 16:44:48 2017 +0100

    Merge ../mysql-5.6-cluster-7.3 into mysql-5.6-cluster-7.4

commit 3e2a580e9bbcd961d6fc6c4b1224ec86687c848a
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Jun 5 16:43:51 2017 +0100

    Fix include/have_ndb_debug.inc to avoid leaving a table behind
    in failed-require cases.
    Drop the table before checking the require case.

commit 042e0d4a7d534387312d6fb213741ee2ddeb4ebe
Merge: afbcd2a eac1d87
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Jun 5 11:59:42 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5

commit eac1d87951d09df3e29797de53a86ea09e615c3b
Merge: df540e1 60fdd0f
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Jun 5 11:58:54 2017 +0100

    Merge ../mysql-5.6-cluster-7.3 into mysql-5.6-cluster-7.4
    
    Conflicts:
    	storage/ndb/src/kernel/blocks/backup/Backup.cpp

commit 60fdd0f31e74b04de579bc1b0e89891489824c96
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Jun 5 11:49:57 2017 +0100

    Bug#25891014 NDB : ONLINE BACKUP LOG CONTAINS EXTRA ENTRIES
    
    Current ndbmtd online backup is including too many entries in the
    backup log.
    
    Specifically, row changes occurring to fragments managed by LDM
    instance 1 are always recorded in the log, even if they are for
    non-primary fragments.
    
    This wastes resources at restore time, and can result in other
    problems when e.g. staging tables are used for schema transforms
    during ndb_restore.
    
    This patch corrects the problem, and adds an MTR testcase which
    checks that the backup log contains only the expected entries,
    and no duplicates.

commit afbcd2ab37ac15acc233b774f38b33b93d6c3ad2
Merge: 32bf61a df540e1
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Jun 2 11:20:46 2017 -0700

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    Conflicts:
    	storage/ndb/src/ndbjtie/jtie/test/myjapi/CMakeLists.txt
    	storage/ndb/src/ndbjtie/test/CMakeLists.txt

commit df540e1b623e03cbc5adbe1bf1349abb19c6bece
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Jun 2 11:15:49 2017 -0700

    bug#26088583 jtie unit tests do not run
    
    Remove TAP scaffolding including command shell scripts and wrapper programs
    from jtie unit tests. Configure the executable unit tests as CTest tests.

commit 32bf61ab992cc81ed3e6c67e612940ddc3f8b417
Merge: 90b37ac a5965ef
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 18:24:50 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit a5965efa40f95f01bbbc59ba886288da1e1ee4ba
Merge: 1343cd2 f5fbd57
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 18:21:28 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit f5fbd575e4f708b9d7811dc551b6c610d73798dd
Merge: 9050e2a 00fca74b
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 18:17:00 2017 +0200

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit 00fca74ba8028d079296e48e26a37dad5ce026d2
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 18:13:15 2017 +0200

    Bug#26181622 MSI BUILD FAIL DUE TO DUPLICATED FILE ID
    
    Fixed generated mysql_server.wxs not to contain duplicates, or too long ids

commit ec0357e6af37bd95c723b3f860c396c65324a524
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Sun May 28 22:40:02 2017 -0600

    WL#10322: Deprecate innodb_undo_logs in 5.7
    
    * Add (deprecated) to innodb-undo-logs description and mention that it
    is actually setting the number of rollback segments.
    * Delete “(deprecated)” from innodb-rollback-segments message.
    * Add a deprecation warning message when innodb_undo_logs is used
    at runtime and also at startup in a config or the command line.
    * Return a warning when innodb_undo_logs is used at runtime.
    * Rename srv_undo_logs to srv_rollback_segments in code
    * Rename innodb_undo_logs to innodb_rollback_segments in all collections
    and testcases except sysvars.innodb_undo_logs_basic.
    * Fix sysvars.innodb_undo_logs_basic to suppress the deprecation warning.
    Add a restart to exercise the deprecation code for using it at startup.
    
    Approved by Satya in RB#15389

commit c85f3f04d7bfb9b5f4a3da9294f63621f7a5c826
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed May 24 11:01:05 2017 +0200

    Bug#25799465	MISSING DEPENDENCIES IN CLUSTER PACKAGES FOR APT
    
    Added missing deps:
    data-node: libclass-methodmaker-perl
    auto-installer: python-paramiko

commit ed578d107be3285273ae3dfeae7834891a4fbfca
Merge: 9b1fe87 a8c1489
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 26 19:48:04 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit a8c14896943b88b7fda8d8b945d8b7fb0101f186
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 26 19:46:46 2017 +0530

    BUG#26121192 : --NO-CONSOLE IS COMPULSORY IF --LOG-ERROR USED TO MAKE
                   WINDOWS RUN PASS
    
    Issue:
    ------
    MTR adds '--console' option if '--no-console' options is not specified.
    But adding '--console' option when '--log-error' is specified either in
    test-[master/slave].opt or in the config file will cause the test run
    to fail on windows.
    
    Fix:
    ----
    On windows, don't add '--console' option if '--log-error' is specified
    either in test-[master/slave].opt or in the test config file. This patch
    is a back-port of bug#20341933.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 16372

commit 9b1fe87e55b2f4c5f7d961f76cdde37aebb5bc46
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri May 26 15:35:02 2017 +0200

    BUG#26042764: BACKPORT BUG#25642343 AND BUG#24311527 TO 5.7
    BUG#24311527: PLUGIN-LOAD FAILS AFTER MYSQLD --INITIALIZE
    BUG#25642343: THE SERVER SHOULD HAVE A DEFAULT USER FOR THE SERVER SESION SERVICE
    
    There were two leaks after the above patch was introduced:
      1) There was a possible memory leak on method
         Session_plugin_thread::terminate_session_thread(), on which the
         terminate event could be queued after the thread handler being
         already terminated. This would cause the terminate event memory
         not to be released.
         In order to prevent that, the
         Session_plugin_thread::terminate_session_thread ensures that
         when it ends all queued events are released.
    
      2) When the Group Replication was not able to contact the server
         core through the SQL API, some memory structures were not being
         released.
         Now that memory structures are properly released.

commit 08309af50aff67345f440a40d3cd77341d62ea05
Merge: b4e3c4c a0dfe93
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Fri May 26 16:07:56 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit b4e3c4c424fd54232fb25099189680bf89904205
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Fri May 26 12:37:28 2017 +0200

    WL#9143: Keyring plugin for the Amazon's AWS
             Key Management service
    
    Description: This worklog introduces a new keyring
                 plugin -keyring_aws. The plugin will
                 communicate with Amazon's AWS Key Management
                 Service andfetch keys that can be used by
                 MySQL server. It will provide ability to
                 store/fetch/remove keys from Key Management
                 service.
    
                 In addition, Plugin also introduces two
                 UDFs which provides ability to:
                 - Rotate Customer Master Key
                 - Reencrypt data keys using latest Customer
                   Master Key.
    
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>

commit a0dfe93941af0aa5e7faa87ec95c2779ea659257
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Fri May 26 16:05:03 2017 +0530

    Bug #24595639: INCORRECT BEHAVIOR IN QUERY WITH UNION AND
                   GROUP BY
    
    Post-push fix on mysql-5.6
    
    The unittest - ItemEqual fails because FAKE_TABLE object's
    pos_in_table_list is left unset and hence contains a junk
    value.
    
    Since pos_in_table_list is now checked in
    Item_field constructor this can cause a problem. Fix is to
    set to NULL explicitly.

commit f3dfe27c95bdeb4b7c6afd1c4c20b1110d136216
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Fri May 26 12:33:33 2017 +0200

    BUG #25835833: SHOW STATUS SSL CRASHES GPL SRVR WHEN SRVR STARED WITH XPLUGIN,EXPIRED SSL CERTS
    
    Description
    ===========
    Crash in community version of server with X plugin loaded when checking
    for SSL system variables and using expired certificates.
    
    Fix
    ===
    Add validation if certificate is not null when checking for certificate
    details.
    
    RB: 16362
    Reviewed by: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
    Reviewed by: Lukasz Kotula <lukasz.kotula@oracle.com>

commit 064a9c69f13ec4d30d33e9b092095c07cbd45f8f
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Thu May 25 12:01:35 2017 +0200

    BUG#25232042: ASSERT "!CONTAINS_GTID(GTID)" RPL_GTID_OWNED.CC:94 OWNED_GTIDS::ADD_GTID_OWNER
    
    When a existing GTID_NEXT transaction gets a conflicting GTID generated by
    server, the Group Replication plugin will generate a assert due having two
    transactions with same gtid.
    
    On Group Replication the gtid is generated after conflict detection, later than
    normal replication.
    
    Some conditions were relaxed to allow only be called when commit is done and
    add message to alert when gtid is already used.
    
    The check for macro HAVE_REPLICATION was removed due to being now correctly
    defined on cmake.

commit 477635b0586f7e5842ba49b332c565d4d12a8ec0
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri May 26 14:48:38 2017 +0530

    Bug#25303711 SIGNAL 11 DURING CERTAIN QUERY WITH AGGREGATION
                           IN NESTED CONDITION
    
    Post push test case fix.

commit 599664672cf9171510948cef0ac87d90bccbc205
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri May 26 10:53:07 2017 +0200

    BUG#26042764: BACKPORT BUG#25642343 AND BUG#24311527 TO 5.7
    BUG#24311527: PLUGIN-LOAD FAILS AFTER MYSQLD --INITIALIZE
    BUG#25642343: THE SERVER SHOULD HAVE A DEFAULT USER FOR THE SERVER SESION SERVICE
    
    Update initialize-sha256 test.

commit 0fc7e760a3dbc6159f67de521891e1d98c75dd8e
Merge: 6e64622 2a0ee9b
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri May 26 10:20:10 2017 +0200

    Null merge branch 'mysql-5.6' into mysql-5.7

commit 2a0ee9b666cf0001ef7b00a07cfa61c4f37f24af
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed May 24 14:24:25 2017 +0200

    Bug#25799475	APT: CLIENT PACKAGE OVERWRITES FILES IN NATIVE 5.5 PACKAGES WITHOUT "CONFLICTS:"
    
    Added missing conflicts between our and native packages

commit 6e64622e042d5195eab2b5a10ed5bdee974d246d
Merge: ca5c137 6c49af9
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri May 26 08:54:42 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 6c49af9e8eff4dd535fc67f440ba39d7bcf1b02e
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 23 15:21:41 2017 +0100

    BUG#26128931 USE `DATABASE` STATEMENT FAILS INSIDE GTID SKIPPED
                 TRANSACTION
    
    Problem
    -------
    
    When GTID skipping transactions using mysql client program, when the
    transaction contains a binary log dump including "use `<DATABASE>`"
    statements, the "use" statement is failing accusing:
    
    USE must be followed by a database name
    ERROR 1046 (3D000) at line ...: No database selected
    
    Analysis
    --------
    
    When the USE statement has quotes, the mysql client program asks the
    server to translate the database name, issuing two statements to the
    server:
    1. USE `database`
    2. SELECT DATABASE();
    
    When GTID skipping a transaction, the USE `database` is taking no
    effect, leading to SELECT DATABASE() to return NULL.
    
    Fix
    ---
    
    Made SQLCOM_CHANGE_DB also an "innocent" statement from the GTID skip
    point of view. In this way, the USE `database` will take effect and the
    SELECT DATABASE() should not return NULL anymore.

commit ca5c1370151f56528efe99a79609811c6ec4c371
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri May 26 12:14:45 2017 +0530

    Bug#25369742 INCORRECT BEHAVIOUR IN SEL_ARG::RB_INSERT DURING
                 RANGE QUERY OPTIMIZATION
    
    Summary
    ========
    This patch fixes a wrong reference counting during creation
    of RB tree resulting in server exit and also causing incorrect
    estimates and thereby wrong plan choice for some cases.
    
    Details
    ======
    Range optimizer creates a RB tree representing the entire
    where condition present in the query. Nodes in the tree
    represented by SEL_ARG's are OR conditions from where clause.
    For each node, next_key_part will point to another RB tree
    which is the AND condition present in the query along with
    current node condition. ref_count in rb_tree/SEL_ARG represents
    how many nodes are referring to this particular tree. Please
    refer opt_range.cc for RB tree details.
    
    Below explanation uses a simplified format for representing the tree.
    Symbols used below are
    
     -->    => AND relation.
    
       |      => OR condition
    
    [ Node Condition, Node Name, ref_count ]  =>  Node format
    
    Consider a query with where clause as:
    (c1 = 1 AND c2 = 2) OR (c1 = 2 AND c2 = 1) OR
    (c1 IN (3, 100) AND c2 = 10) OR (c1 IN (1, 2, 3) AND c2 = 2);
    
    The resulting condition for this should be:
    (c1 =1 AND c2 = 2) OR (c1 = 2 AND c2 = 1) OR
    (c1 = 3 AND c2= 10) OR (c1 = 100 AND c2 = 10) OR
    (c1= 1 AND c2 = 2) OR (c1=2 AND c2=2) OR (c1=3 AND c2=2)
    
    First part of the where clause:
     [ (c1 = 1 AND c2 = 2) OR (c1 = 2 AND c2 = 1) OR (c1 IN (3, 100) AND c2 = 10) ]
     will result in below RB tree
    
    First time when we OR, we get
    
    [c1=1, D, 1] --> [c2=2, C, 1]
       |
       v
    [c1=2, A, 0] --> [c2=1, B, 1]
    
    Second time we OR, we get [Tree 1]
    
    [c1=1, D, 1] --> [c2=2, C, 1]
       |
       |
    [c1=2, A, 0] --> [c2=1, B, 1]
       |
       |
    [c1=3, E, 0] --> [c2=10, G, 2]
       |                 ^
       |               /
    [c1=100, F, 0]
    
    Rest of the condition [ (c1 IN (1, 2, 3) AND c2 = 2) ] will
    result in below tree formation [Tree 2]
    
    [c1=1, I, 1]
      |                \
      |                  v
    [c1=2, H, 0]  -->  [c2=2, K, 3]
      |                  ^
      |                /
    [c1=3, J, 0]
    
    Below steps are performed while doing tree_or between these two trees.
    
    Step 1. Take the first node from Tree.2 (Node I) and try to insert
    into tree 1. As there is an exact match found in Tree 1 (Node D),
    this node will be ignored and will be deleted from Tree 2.
    As part of the delete operation, increment_use_count() for the
    deleted node will be called with -1. This function will reduce ref_count
    of next_key_part of all nodes in the current tree. As a result,
    ref_count of Node.K will be reduced 3 times (one for Node H, I, J).
    
    Resulting [Tree 2] will look like below
    
    [c1 = 2, H, 1]
        |               \
        |                 v
    [C1 = 3, J, 0] --> [c2 = 2, K, 0]
    
    Step 2. Node H will be merged with Node A. Steps to merge
    these nodes are; As the condition is exactly same, it will
    copy next key part of H and merge with B. If the next key part
    node (Node K) ref_count is more than 1 then a copy is made
    to avoid any unwanted links. In this case, it is (0) not more
    than 1 and Node.K will be added as an OR element to Node.B.
    Resulting Tree 1 will look like below.
    
    [c1=1, D, 1] --> [c2=2, C, 1]
       |
       |
    [c1=2, A, 0] --> [c2=1, B, 1]
       |                      |
       |                      |
       |           [c2=2, K, 0]  <-- [c1=3, J, 0]
       |
    [c1=3, E, 0] --> [c2=10, G, 2]
       |                 ^
       |               /
    [c1=100, F, 0]
    
    Note that Node.J is attached to Tree 1 now. Which is an unwanted
    consequence of the ref_count reduction of Node.K 3 times at step 1.
    
    Step 3: Node J will be merged with node E. Similar to above case,
    node conditions are exactly same, so next_key_part merge will happen.
    Like above scenario Node.K ref_count is not more than 1, so no
    copy will be made but a copy of G will be made (Node H)(due to
    ref_count = 2) and together attached to node E.
    Resulting tree will look like below.
    
    [c1=1, D, 1] --> [c2=2, C, 1]
       |
       |
    [c1=2, A, 0] --> [c2=1, B, 1]
       |                      |
       |                      |
       |                  [c2=2, K, 0]
       |                      |
       |                      |
    [c1=3, E, 0] --> [c2=10, H, 2]
       |
       |
    [c1=100, F, 0] --> [c2=10, G, 2]
    
    As a result of above tree, few new conditions are possible. Which
    were not present in orginal querry. Example,
    
    Consider link C1 = 2 and (C2 = 1 or C2 = 2 or c2 = 10) from above tree.
    In this, condition (c1 = 2 and c2 = 10) was not present in orginal query.
    
    This will result in wrong estimate as it accounts for the
    newly formed possibilities as well and results in wrong plan.
    
    Issue that caused server exit is due to Node.H insertion to
    Node K will result in undecided result as node K suppose to
    be the root of the tree and which not the case here due to its
    link with B as a consequence of the wrong ref_count of Node.K.
    
    Solution: During node deletion in tree_or, reduce ref_count
    of next key_part only once instead of one for each node in the tree.

commit 980eb3a732f7bbde947f0341b337186fc2516813
Author: Libing Song <libing.song@oracle.com>
Date:   Mon May 22 16:12:01 2017 +0800

    BUG#25379659 MASTER MAY BINLOG A WRONG LAST_COMMITED
    
    DESCRIPTION
    ===========
    Transactions could binlog a last_commited smaller than expected. With the wrong
    last_commited values, the transactions which sould be applied sequentially could
    be applied parallel. That caused applier errors or data inconsistency.
    
    ANALYSIS
    ========
    When committing a transaction, its last_commited is set to the value of
    max_committed_transaction. max_committed_transaction is the maximum
    sequence_number of committed transactions. It is maintained just before
    committing each transaction to engine. If its sequence_number is not
    SEQ_UNINIT then updates max_committed_transaction accordingly.
    
    However, it checked wrong sequence_number(the sequence_number of the
    leader thread's transaction instead of the sequence_number of the transaction).
    That caused that max_committed_transaction was only updated in time for leader
    thread's transaction. The update for following transactions were delay to
    finish_commit() which was after the transaction commited to engine.
    
    FIX
    ===
    Just checks its own sequence_number of each transaction instead of the
    sequence_number of the leader thransaction.

commit 9f1b178f62a047265a22d9d446826f54871844b1
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Thu May 25 22:11:11 2017 +0200

    Backport BUG#25750822

commit 4601be093ae8ea47783a38ec5a213d49671094f6
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Thu May 25 18:45:11 2017 +0530

    Bug#25303711 SIGNAL 11 DURING CERTAIN QUERY WITH AGGREGATION
                           IN NESTED CONDITION
    
    Analysis
    ========
    Aggregate function in certain nested queries does have
    context set to aggregate select instead of bsae select
    of the item and leads to unwanted behaviour during merge
    context.
    
    The problem lies within Item::split_sum_func2(), where an
    Item_aggregate_ref object that wraps the set function is created.
    It is created with context.select_lex equal to the aggregation
    query block, and depended_from is the same query block,
    when this query block is different from the "base" query block
    of the set function.
    
    Fix
    ====
    Created the Item_aggregate_ref with context.select_lex set
    to be the "base" query block of the set function, and depended_from
    as the aggregation query block.
    
    [This is a backport of a change done in 8.0 to fix Bug#17270896:
    Crash in Item_ident::fix_after_pullout()]

commit 66611ea1ae72a8d40c9ff0099f38880b0b803695
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Thu May 25 12:16:47 2017 +0200

    Bug#25473794: GR: PARTITIONED NODE SHOULD GET UPDATED STATUS AND NOT ACCEPT WRITES
    
    When there is a network partition and a member is on a minority all
    queries into that member will block.
    In an effort to improve this situation, a new variable is added.
    This variable will allow the user to chose if the member shall leave
    the group after N seconds of being in a minority.

commit 091d0fe9c0ff28baaad14d63770ce33f45b080e5
Merge: 48a0a60 c18052c
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 25 15:12:21 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit c18052c7a9588e5ed25eca8bbccc82906d46cca7
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed May 24 16:01:41 2017 +0530

    Bug #18301877	RPL.RPL_FLUSH_LOGS TEST FAILS OCASIONALLY ON
    PB2: FILE_EXISTS" ERROR 1
    
    Analysis: In the test script, after executing "Flush logs" command
    on Master, test script expects slave to create two relay log files.
    Before checking for the existence of these files, test script is
    doing "sync_slave_io_with_master.inc". This works fine if the test
    script runs with 'GTID_MODE=OFF' because sync is checked with
    positions. In case of GTID_MODE=ON , sync is checked with gtid
    numbers. Flush logs (admin commands) does not generate a gtid number.
    So sync_slave_io_with_master.inc (with gtid_mode ON mode) assumes
    that slave is in sync with master even though it is not yet
    executed latest "flush logs" command from the master.
    
    Fix: "Flush" commands are logged as rotate events in the binary
    log without gtid events. So it is correct to check master
    and slave sync logic with positions instead gtids numbers.
    Hence for this test script, making use_gtids to false
    in all the cases (GTID_MODE ON or OFF).

commit 48a0a60075f148c2998aeeef89a662e5904d4556
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Thu May 25 10:46:30 2017 +0200

    Bug#25876841: THE ERROR MESSAGE ABOUT SLAVE-PARALLEL-TYPE IS WRONG
    
    Problem: Error message displayed for slave-parallel-type is wrong.
    
    Description:
    Present message:
    In order to use parallel applier on Group Replication, parameter
    slave-parallel-workers must be set to 'LOGICAL_CLOCK'
    Issue:
    LOGICAL_CLOCK is related to slave-parallel-type and not
    slave-parallel-workers
    Correct message:
    In order to use parallel applier on Group Replication, parameter
    slave-parallel-type must be set to 'LOGICAL_CLOCK'
    
    Resolution:
    Correct error message to "slave-parallel-type must be set to 'LOGICAL_CLOCK'"

commit cd49d5c45078f35539df25ee14b81f01d43400f6
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Wed May 24 13:12:54 2017 +0200

    BUG#26134361: GROUP_REPLICATION.GR_KEY_ROTATION TEST FAILING FREQUENTLY ON PB2 MYSQL-5.7
    
    The test gr_key_rotation instruments some failures on the keyring
    plugin, such as "keyring not found", which contains the full path.
    The suppression of the error message was not considering correctly
    Windows path separator character.
    
    This patch fixes that by ignoring both '/' and '\' characters on the
    error message suppression.

commit 0c12827cbee50f8c5e4581008967d85c1463f40e
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu May 25 10:19:25 2017 +0200

    BUG#26042764: BACKPORT BUG#25642343 AND BUG#24311527 TO 5.7
    
    Rename user account mysql.session_user to mysql.session

commit 47d1f7a5a4719708ad8370f5c6344c9b1735f732
Merge: f04824c e7482a7
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 25 12:40:19 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit e7482a70d9b783a32623ec05c132119388978a95
Merge: 7aa6ca9 151fe52
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 25 12:40:08 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 151fe524b33d9f5192404ae3a30b51927fd51e67
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed May 24 16:12:57 2017 +0530

    Bug#18950197 RPL_SEMI_SYNC_UNINSTALL_PLUGIN FAILS BECAUSE
    RPL_SEMI_SYNC_MASTER_CLIENTS=1
    
    Analysis: Uninstalling rpl_semi_sync_slave on slave
              will trigger removing the slave logic on Master which
              will reduce Rpl_semi_sync_master_clients by one number.
              But it happens asynchronously on Master. Having assert
              to check this value with zero will have problems on
              slow pb2 machines.
    
    Fix: Change assert into wait_for_status_var condition.

commit f04824ca32ca4057534b8ac1074fde57f5b3c828
Merge: 91aacba 7aa6ca9
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed May 24 18:26:51 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 7aa6ca9c579f5493c9d992a6c5bae80e98b9f93e
Merge: 0172a8d 40ecadb
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed May 24 18:14:02 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit 40ecadb305a9ae831f882fd1176bac4856a84aa8
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed May 24 18:09:17 2017 +0200

    Bug #25658832 VALIDATION CHECK FOR MSVC REDIST NEEDED IN SERVER COMMUNITY MSI
    
    Added matching redist prerequisite check to the server msi installer.

commit 91aacbafffbcc353588cf684ec18163738e620cb
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Wed May 24 09:08:09 2017 +0530

    Bug#26084820: CHARACTER SET PROBLEMS IN INNODB_FTS.PROXIMITY TEST
    
    Issue:
    ------
    The innodb_fts.proximity contains Unicode characters, but does not
    set the character set to uft8, so by default on 5.7, latin1 is used.
    This means that the Chinese characters in the test are not
    interpreted as Unicode characters, but as latin1 characters. They
    are then converted to utf8 before being inserted into the table
    which is created with utf8 character set. This results is some queries
    returning an incorrect number of rows because certain characters are not
    matched.
    
    Fix:
    ----
    Set the character set to utf8 in the test on 5.7. Utf8mb4 is the default
    character set in 8.0.1, so no changes to the test have to be made.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16278

commit 4cc63239da93926f54f22c514d440d85d512080a
Merge: 762edb6 0172a8d
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Wed May 24 08:53:36 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 0172a8d6e23f8e112c7c6d3c31e2c77ed27baf44
Merge: b75ceeb ef13055
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Wed May 24 08:51:35 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit ef1305508bcd08c90bcd6627bfa8acabaad96246
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Wed May 24 08:50:05 2017 +0530

    Bug #24595639: INCORRECT BEHAVIOR IN QUERY WITH UNION AND
                   GROUP BY
    
    Issue 1:
    --------
    This problem occurs in the following conditions:
    1) A UNION is present in the subquery of select list and
       handles multiple columns.
    2) Query has a GROUP BY.
    
    A temporary table is created to handle the UNION.
    Item_field objects are based on the expressions of the
    result of the UNION (ie. the fake_select_lex). While
    checking validity of the columns in the GROUP BY list, the
    columns of the temporary table are checked in
    Item_ident::local_column. But the Item_field objects
    created for the temporary table don't have information like
    the Name_resolution_context that they belong to or whether
    they are dependent on an outer query. Since these members
    are null, incorrect behavior is caused.
    
    This can happen when such Item objects are cached to apply
    the IN-to-EXISTS transform for Item_row.
    
    Solution to Issue 1:
    --------------------
    Context information of the first select in the UNION will
    be assigned to the new Item_field objects.
    
    
    Issue 2:
    --------
    This problem occurs in the following conditions:
    1) A UNION is present in the subquery of select list.
    2) A column in the UNION's first SELECT refers to a table
       in the outer-query making it a dependent union.
    3) GROUP BY column refers to the outer-referencing column.
    
    While resolving the select list with an outer-reference, an
    Item_outer_ref object is created to handle the
    outer-query's GROUP BY list. The Item_outer_ref object
    replaces the Item_field object in the item tree.
    Item_outer_ref::fix_fields will be called only while fixing
    the inner references of the outer query.
    
    Before resolving the outer-query, an Item_type_holder
    object needs to be created to handle the UNION. But as
    explained above, the Item_outer_ref object has not been
    fixed yet. Having a fixed Item object is a pre-condition
    for creating an Item_type_holder.
    
    Solution to Issue 2:
    --------------------
    Use the reference (real_item()) of an Item_outer_ref object
    instead of the object itself while creating an
    Item_type_holder.

commit 90b37ac15ef888a8a057de1760072ed377896f34
Merge: ae4ae95 1343cd2
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue May 23 11:12:36 2017 -0700

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 762edb6ddf6d244b88e1c3e22787c76dc388ee92
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Tue May 23 20:01:50 2017 +0200

    BUG#26042764: BACKPORT BUG#25642343 AND BUG#24311527 TO 5.7
    BUG#24311527: PLUGIN-LOAD FAILS AFTER MYSQLD --INITIALIZE
    BUG#25642343: THE SERVER SHOULD HAVE A DEFAULT USER FOR THE SERVER SESION SERVICE
    
    Backport of BUG#25642343 AND BUG#24311527 into mysql-5.7
    
    Plugins like X and Group Replication try to use the root user to
    contact the server using the Server Session Service.
    This approach has many drawbacks as the root user may not be in the
    server or is expired.
    This patch proposes a different approach by adding to the server a
    default locked user that can be used by plugins.
    
    This patch introduces:
      - The user creation on --initialize
      - The user creation on upgrade
      - MTR changes so the user is created on bootstrap
    
    This patch also includes changes to the way the group replication
    plugin contacts the server to protect the context associated to
    external users sessions.

commit 1343cd2fbeab0f8241bd148e2f4983d51bad621b
Merge: a842d2e 9050e2a
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue May 23 10:29:08 2017 -0700

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 9050e2a6d80a970d3725917e52b6ac3166f23540
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon May 22 21:46:08 2017 -0700

    Bug#26080804 jtie unit test compile failure
    Remove deliver_null_ref() and take_null_ref() from C++ myapi and Java myjapi

commit 41f8bcdeb2ab558c664e8fe6b411df7c2c9270d0
Merge: d04ecc4 b75ceeb
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 23 16:40:00 2017 +0200

    NULL merge from 5.6

commit b75ceeb8568e55bf0624a5bd37b7329a41d8a338
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 22 17:15:34 2017 +0200

    Bug#26105359 BUILD BREAK OF MYSQL 5.6 WITH GCC .7.1.1
    
    sql_acl.cc:3533:59: error: ISO C++ forbids comparison between pointer and integer

commit d04ecc4d2b393828b0faf522d0794aecdd51ab4d
Merge: edc3c84 a6b114d
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 23 11:28:36 2017 +0300

    Merge branch 'mysql-5.6' into mysql-5.7

commit a6b114d580e8861da97d4998f1fcb8b7e3c1a4dc
Merge: 1cc7e9f b0f667e
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 23 11:27:15 2017 +0300

    Merge branch 'mysql-5.5' into mysql-5.6

commit b0f667ea5a36a0c07519bde14526a933dec10452
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 23 11:24:23 2017 +0300

    Bug# 25998635: Client does not escape the USE statement
    
    Postfix:
    On *NIX platforms backtick (`) carries a special
    meaning under shell, so it needs to be escaped

commit edc3c8475f369bb692ddb3c389e63b0b41792f3c
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri May 19 09:05:11 2017 +0200

    Bug#26100488	MAIN.MYSQL_NOT_WINDOWS TEST FAILS ON UBUNTU 17.10
    
    The "unreasonably high" file limit of 1M is within Ubuntu 17.10's
    hard limit, causing the test to fail. Increased to 10M

commit 291c302032c3a8ad1507b4516bffb66220ea2120
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon May 15 08:40:51 2017 +0200

    Bug#26002288	SERVER INSTALL FAILS AFTER AKONADI-BACKEND-MYSQL ON UBUNTU 17.04
    
    * Server package now conflicts with native client packages.
    * Client package now conflicts with native server packages.

commit 8c4b4ce6ccd1db06648c58dcefe04d51a0c1ed52
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri May 12 09:01:25 2017 +0200

    Bug#26048433	INCONSISTENT VARIABLE USE IN PACKAGING/DEB-IN/DEB_NDB.CMAKE
    
    Fixed inconsistent variable use in ndb import file.
    The file was using both ${DEB_PRODUCTNAME} and @DEB_PRODUCTNAME@, and the latter
    fails a check on cmake policy CMP0053.

commit 9d6f7291e83e39fde20ea4294080b335800c409b
Merge: 2895ffa 1cc7e9f
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Tue May 23 07:16:14 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 1cc7e9f7695ce58bfa8b536112f1e4cfdbe5bc1a
Merge: 6f7d4f1 dec932d
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Tue May 23 07:15:54 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit dec932d3930cfe7b73aff5d7b1a186883bc83795
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Tue May 23 07:14:33 2017 +0200

    Bug#25988681: USE-AFTER-FREE IN MYSQL_STMT_CLOSE()
    
    Description: If mysql_stmt_close() encountered error,
                 it recorded error in prepared statement
                 but then frees memory assigned to prepared
                 statement. If mysql_stmt_error() is used
                 to get error information, it will result
                 into use after free.
    
                 In all cases where mysql_stmt_close() can
                 fail, error would have been set by
                 cli_advanced_command in MYSQL structure.
    
    Solution: Don't copy error from MYSQL using set_stmt_errmsg.
              There is no automated way to test the fix since
              it is in mysql_stmt_close() which does not expect
              any reply from server.
    
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>
    Reviewed-By: Ramil Kalimullin <ramil.kalimullin@oracle.com>

commit 2895ffae55b4ab96748faf2eb3ab0b9331abbab5
Merge: a326f87 6f7d4f1
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 23 10:25:19 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 6f7d4f1cbfcba58f7f0762bcb0376bf53bae3842
Merge: 26deac8 669d6be
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 23 10:24:12 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 669d6be28901eecf9965a69ad546a74ec6570658
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 23 10:22:33 2017 +0530

    Bug#16212207 - LOAD XML INFILE PERFORMANCE WITH INDENTED
                   XML
    
    Post-push fix for build failure on Linux machine
    sles11-x86-64bit

commit a326f870a605a6c9926a706d6d23354c1679467c
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Thu May 11 15:17:22 2017 +0530

    BUG#24590891: RESTARTING A SLAVE AFTER SEEDING IT WITH A MYSQLDUMP LOSES ITS POSITION
    
    Background:
    SET GTID_PURGED will set the correct GTID_PURGED value in memory
    and persist it in mysql.gtid_executed.
    mysqldump is supposed to output SET GTID_PURGED statements that
    cause the restored server to have GTID_PURGED equal to the dumped
    server's GTID_EXECUTED.
    
    Problem:
    With gtids enabled, mysqldump would first write a SET GTID_PURGED
    statement and then write statements that recreate the
    mysql.gtid_executed table to an exact copy of the dumped server's
    mysql.gtid_executed table.  Therefore, the table would hold the wrong
    value for GTID_PURGED. This was not seen immediately because
    GTID_PURGED is cached in memory. But after a restart, GTID_PURGED is
    re-read from the table, and then it would be set to the wrong value.
    
    Fix:
    Make mysqldump exclude mysql.gtid_executed from the dump.

commit 4c2413e646f82bcc22fcba0a564403e3db2feb4e
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Tue May 23 08:37:25 2017 +0800

    Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON - post fix
    
    Fix a werror on el7-x86-64 and a docxygen issue.

commit d56a1c37217528ce3f58e7d3bdc972c718119cb0
Merge: 272bc22 26deac8
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Mon May 22 18:45:23 2017 +0300

    Merge branch 'mysql-5.6' into mysql-5.7

commit 26deac81617a15e903a780a02a71d574ffc3ac16
Merge: b782314 effdd36
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Mon May 22 18:38:36 2017 +0300

    Merge branch 'mysql-5.5' into mysql-5.6

commit effdd36dd351c51d2284ab77772416ef32750cf7
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Mon May 22 15:52:00 2017 +0300

    Bug# 25998635: Client does not escape the USE statement
    
    When there are quotes in the USE statement, the mysql client does
    not correctly escape them.
    
    The USE statement is processed line by line from the client's parser,
    and cannot handle multi-line commands as the server.
    
    The fix is to escape the USE parameters whenever quotes are used.

commit 272bc229b09099f56f94e1521937b486a7aa96cf
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon May 22 14:22:22 2017 +0530

    BUG#26078602: BACKPORT BUG#25574200 TO 5.7
    
    Issue:
    ======
    For a given below scenario where S1 and S2 are in Group Replication in Single
    Primary Mode and S3 and S2 are in asynchronous replication. In Group Replication
    between S1 and S2, S1 acts as Primary and S2 as secondary. In Asynchronous
    Replication between S3 and S2, S3 acts as master and S2 as slave.
    
       --Single Primary Mode--
       |                     |
    Primary              Secondary
      S1<------------------->S2<--------------------S3
          Group Replication      Async Replication
    
    Now issue comes when any data is inserted in S3 which gets replicated to
    S2 which has super_read_only mode active due to single primary mode. But
    super_read_only mode only prohibits client updated and so it can get data
    from master. And as S1 and S2 are in Group Replication data gets through
    to S1 from a read-only member.
    
    Resolution:
    ===========
    Don't allow asynchronous channel to start on secondary when group replication
    is in single primary-mode.
    Don't allow group replication to start on single primary-mode when
    asynchronous replication channels are running.
    
    Note:
    
    This is a backport of Bug#25574200 patch from mysql-8.0.

commit d0a749e19b5ade9c9935db30d249fee2ea4ed688
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Mon May 22 16:08:02 2017 +0530

    Bug #25452210: SETTING _SSL_MODE=REQUIRED BEFORE
                   _TLS_VERSION DOWNGRADES _SSL_MODE
    
    
    Description:- Setting of some of the ssl options downgrades
    SSL_MODE option value.
    
    Fix:- All implicit SSL_MODE settings are removed.

commit 2f5d02493cbfb275662d3e86a9a520cac597ee06
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Mon May 22 15:59:06 2017 +0800

    Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON - post fix
    
    Fix a compilation error completely.

commit cebd67983a71f903bfc874c3f3e567c4d31a8c2e
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Fri May 19 18:10:20 2017 +0800

    Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON - post fix
    
    Fix a compilation error on some platforms.

commit e5af4e0843375fdafa33c2d3677c239fa6aa28df
Author: Aditya A <aditya.a@oracle.com>
Date:   Fri May 19 10:48:55 2017 +0530

    Bug #26089518: SPORADIC FAILURE OF INNODB.INNODB-ISOLATION
    
    Problem
    -------
    The results diff is because the explain output
    of the query sometimes gives the number of rows
    slightly different that what is stored in result file.
    This is because the row count variable provided by
    the explain is merely a estimate and  can vary.
    
    FIX
    ---
    
    As done in other parts of test case we have
    we are ignoring the number of rows returned
    by the explain query. We make sure that plans
    are not changed by using analyze.
    
    [ #rb 16267 Pushing on behalf  Sree Harsha ]

commit 11ad3e0cd7ac2af639f89cbb82f988b7cd5322ad
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Fri May 19 09:23:30 2017 +0800

    Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON
    
    Currently, if any Incident event occurs that breaks RPL, the incident
    is binlogged without GTIDs. Due to this, if user wants to skip the
    Incident event through general commands of GTID i.e.
    'set gtid_next=<GTID>; begin; commit;', user cannot. User has to take
    approach of setting the relaylog file and relaylog positions to post
    incident_log_events to skip such incidents. Specially, when
    autoposition is ON, user has to stop the autoposition, then set the
    relaylog file/pos and then set it back to ON.
    
    To fix the problem, we write the Incident event into stmt_cache, so
    that a GTID is generated and written for it prior to flushing the
    stmt_cache, and make the slave applier work with the change. Then
    users can skip the Incident event through general commands of GTID
    i.e. 'set gtid_next=<GTID>; begin; commit;'.
    
    Remove testing purpose code at sql/parser.cc, since we don't
    have a real case that generates an incident log event before
    writing the real event to the binary log.
    
    rpl_skip_incident.test and rpl_incident.test are removed, since
    the related testing purpose code at sql/parser.cc is removed and
    skipping incident on slave is tested by the two new added test
    when gtid mode is on and by rpl.rpl_stm_binlog_max_cache_size
    when gtid mode is off.
    
    binlog_incident_ignore.test and binlog_incident.test are updated
    with an incident caused by partially failed GRANT statement.

commit d2d58885017b505ef02969307457abb3191a04ef
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu May 18 17:47:30 2017 +0530

    - Post-push fix to avoid truncate_debug failure in release build

commit 8a1c8d2a02dfeacc3d59ed67b499273c6f8f13cd
Merge: e75b739 b782314
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Thu May 18 14:32:55 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit b782314a1a623a689e516dce8c447b2ca8b106c3
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Thu May 18 14:31:01 2017 +0530

    Bug #24605783 MYSQL GOT SIGNAL 6 ASSERTION FAILURE
    
    PROBLEM
    
    The in memory record gets corrupted while memcached plugin tries to
    fetch record because the innodb_api_rec member of row prebuilt structure
    is made to point to physical address of record directly while searching
    rows from mysql which might get corrupted meanwhile causing the
    assertion failure.
    
    FIX
    
    Probable fix is to do a memcopy of the physical record and use that to
    fetch records in ib_cursor_read_row.
    
    Reviewed-by: Jimmy Yang<Jimmy.Yang@oracle.com>
    RB: 15496

commit e75b739b940d68e77da99d233070628732779a6a
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu May 18 14:09:23 2017 +0530

    Bug #25357789   INNODB: LATCH ORDER VIOLATION DURING TRUNCATE TABLE
                            IF INNODB_SYNC_DEBUG ENABLED
    
    Analysis:
    ========
    
    (1) During TRUNCATE of file_per_table tablespace, dict_operation_lock is
    released before eviction of dirty pages of a tablespace from the buffer
    pool. After eviction, we try to re-acquire
    dict_operation_lock (higher level latch) but we already hold lower
    level latch (index->lock). This causes latch order violation
    
    (2) Deadlock issue is present if child table is being truncated and it
    holds index lock. At the same time, cascade dml happens and it took
    dict_operation_lock and waiting for index lock.
    
    Fix:
    ====
    1) Release the indexes lock before releasing the dict operation lock.
    
    2) Ignore the cascading dml operation on the parent table, for the
    cascading foreign key, if the child table is truncated or if it is
    in the process of being truncated.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    Reviewed-by: Kevin Lewis <kevin.lewis@oracle.com>
    RB: 16122

commit c492e2d670f1abdc62fa80ee6499bdfb4da5d6ed
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu May 18 13:53:27 2017 +0530

    Bug #24961167	CONCURRENT INSERT FAILS IF TABLE DOES REBUILD
    
    Analysis:
    =========
       During alter table rebuild, InnoDB fails to apply concurrent insert log.
    If the insert log record is present across the blocks then apply phase
    trying to access the next block without fetching it.
    
    Fix:
    ====
    During virtual column parsing, check whether the record is present
    across the blocks before accessing the virtual column information.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16243

commit 30003da7e0e518fcaca9f94c92aa1fef2366eebe
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed May 3 10:29:51 2017 +0200

    WL#9053: Group Replication: Push Group Replication Plugin to mysql-trunk
    
    Build with gcc (GCC) 5.4.0
    error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
     #define number_is_valid_port(n) ((n) > 0 && (n) <= UINT16_MAX)
    
    Fix: cast UINT16_MAX to int
    (cherry picked from commit 940e828bb8213624aea163d45ada65871c15ea12)

commit ae4ae95af50d86e99c0f2c28a5d88fbad3726454
Merge: 837f23b a842d2e
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 18 11:33:27 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit a842d2e4ece547b677866edd757298aaa2ae0704
Merge: 06a9db9 ccea5dc
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 18 11:25:17 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit ccea5dc958d8578561585accb03277e951f2f2e6
Merge: 6ed6c21 31f4015
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 18 11:24:12 2017 +0530

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit 31f401585959bfa540b8cf629c7ee018eef42a90
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 18 11:22:26 2017 +0530

    Added ndb_move_data man page

commit 837f23b8bd785ebe938f1c1d60e4fca33e4a4107
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Wed May 17 17:14:19 2017 -0700

    Adapt clusterj for connector-j 5.1.38
    
    Using default connection properties results in:
    WARN: Establishing SSL connection without server's identity
    verification is not recommended. According to MySQL 5.5.45+, 5.6.26+
    and 5.7.6+ requirements SSL connection must be established by
    default if explicit option isn't set. For compliance with existing
    applications not using SSL the verifyServerCertificate property is
    set to 'false'. You need either to explicitly disable SSL by setting
    useSSL=false, or set useSSL=true and provide truststore for server
    certificate verification.
    
    AbstractClusterJTest.java
      add useSSL=false to connection properties

commit 0cdd58c19d337964e81a329c19a93fa7aa98eb94
Merge: e0abf39 06a9db9
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed May 17 15:52:01 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5 (Bug#26092639)

commit 06a9db9ce22cc2b5d4a05c72ca3c61397f5ca8bd
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue May 16 17:31:59 2017 +0200

    Bug#26092639 READ BEYOND BUFFER IN EXECUTE_SIGNALS
    
    Only read section pointers passed with signal.

commit 53d584f8d43aef89dca67d69b4cb7cd325179c53
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Wed May 17 18:28:02 2017 +0530

    BUG#25209512: CURRENT_TIMESTAMP PRODUCES ZEROS IN TRIGGER
    
    Post push fix:
    Valgrind reported errors because INSERT and LOAD operations
    compared the old data record (TABLE::record[1]) and the
    new data record (TABLE::record[0]). New data record is
    initialized only for UPDATE operations.
    
    A check is now introduced to ensure only UPDATE operations
    compare records.

commit cf901b607cc165911d7b21ece5d0ad45fff92f12
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Tue May 16 15:34:34 2017 +0530

    Bug#24829050 INDEX_MERGE_INTERSECTION OPTIMIZATION CAUSES
                 WRONG QUERY RESULTS
    
    Analysis
    ========
    When using index_merge for InnoDB tables with a primary key,
    the server does not set read_set correctly for index scan after
    optimization. This does not cause a problem in other cases
    because InnoDB does create templates during first call to
    index_read(). Innodb uses sql_stat_start to decide initializing
    templates in index_read(). sql_stat_start is set to false at
    handler creation and set to true during first call to index_read().
    In case of sub-query, during optimization we scan the index
    and reset it for index read for execution. Further call to
    index_read() does uses the templates created at reset as
    inited is set to true during optimize phase.
    
    This leads to InnoDB not reading primary key of the rows and
    furthur leads to mismatch during index merge.
    
    Fix
    ====
    Provide correct read_set for each index during index_reset
    to innodb for creating the right column template for reading.

commit a263e14b41f34ac4c11b36a60fe76b6ab3b0a9ef
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 16 11:54:27 2017 +0200

    BUG#25420001 KEYRING_OKV PLUGIN FAILED TO WORK IF SELINUX IN ENFORCING MODE ON EL PLATFORMS
    
    Correct SELinux context must be set on all files in keyring directory,
    add recursive option to enable this.

commit d7cca9c54c8175a725116251165c1cfa5409e15e
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Mon May 15 16:22:17 2017 +0300

    Bug #22834591: unused-local-typedef warnings from boost 1.59
    
    Description:
    Boost version 1.59 produces lots of unused-local-typedef warnings.
    Boost version 1.64 (used in version 8) does not.
    
    Copying from client/dump/CMakeList.txt I add the compiler flag to ignore
    these warnings.
    
    Testing Done:
    Compilation on linux:
    Scanning dependencies of target keyring_file
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/common/keyring_key.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/common/keys_container.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/common/keyring_impl.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/keyring.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/hash_to_buffer_serializer.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/buffered_file_io.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/file_io.cc.o
    [ 51%] Building CXX object plugin/keyring/CMakeFiles/keyring_file.dir/buffer.cc.o
    [ 51%] Linking CXX shared module keyring_file.so
    [ 51%] Built target keyring_file
    [ 51%] Built target validate_password
    
    Compilation on Windows succeeds too.
    mtr on Linux and Windows
    
    RB:16241

commit 7af24039d879a037d71dc8821ce39c95118155e9
Merge: ef2c8c9 9606f01
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 16 13:55:40 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 9606f011ef4d7a18ae6c464cacfec79eda6ba3bd
Merge: 50096c5 ceea4b8
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 16 13:50:41 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit ceea4b825ddb974b4723bf6f645fc73cac7aaf41
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 16 13:48:52 2017 +0530

    Bug#16212207 - LOAD XML INFILE PERFORMANCE WITH INDENTED
                   XML
    
    DESCRIPTION
    ===========
    LOAD XML INFILE performance becomes painfully slow if the
    tags' value has any space(s) in between them. They're
    usually kept intentionally for indentation purpose.
    
    ANALYSIS
    ========
    The extra spaces are calling clear_level() many a times
    which is having overhead of clearing taglist etc. This can
    be avoided altogether by skipping all such spaces.
    
    FIX
    ===
    Trim all the starting whitespaces from the value before
    passing it to read_value()

commit ef2c8c996dfd73b6f7abd8b7e152473760f327f6
Merge: db73420 50096c5
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 16 09:32:38 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 50096c53b4fe5bd3c8dd59e442ac3229418d08b0
Merge: 2640dab dc6a5d8
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 16 08:58:21 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit dc6a5d87d1cd6893dc86fc5554329a70b2864866
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Apr 26 12:45:38 2017 +0200

    Bug #25436469: BUILDS ARE NOT REPRODUCIBLE
    
    Backport to 5.5
    
    Current MySQL builds, even on Pushbuild, are not reproducible; they return
    different results depending on which directory they are built from (and
    Pushbuild uses several different directories). This is because absolute paths
    leak into debug information, and even worse, __FILE__. The latter moves code
    around enough that we've actually seen sysbench changes on the order of 4% in
    some tests.
    
    CMake seemingly insists on using absolute paths, but we can insert our own
    layer between CMake and GCC to relativize all paths. Also give the right flags
    to get debug information reproducible and turn off build stamping. This makes
    the mysqld build 100% bit-for-bit reproducible between runs on my machine,
    even when run from different directories.

commit db73420a73ea6d75e7425d113291d7b8ad98ee9b
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Tue May 16 11:30:49 2017 +0530

    BUG#25209512: CURRENT_TIMESTAMP PRODUCES ZEROS IN TRIGGER
    
    Post push fix for test failure.

commit fb0cfd51c837c58954e76a273be5254d6849b6ec
Merge: 19ca9ea 2640dab
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Tue May 16 09:50:07 2017 +0530

    Null Merge branch 'mysql-5.6' into mysql-5.7

commit 2640dabf07bc74af296a576d2e0dd3f9aa38bc25
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Tue May 16 09:47:45 2017 +0530

    Bug #25332330	COUNT(*) ON INNODB SOMETIMES RETURNS 0
    
    PROBLEM
    
    When using Index merge optimization current partitioning code in 5.6
    does a memcpy instead of column of copy of the columns on which index
    read is done . Because of which wrong record gets copied and optimizer
    thinks there is no matching record as per the search criteria returning
    0 for the count(*) value . The problem is sporiadic as the plan is not
    always using intersection .
    
    SOLUTION
    
    Added a similar column copy function that would do the copy of required
    column and not overwrite the other as in 5.7.
    
    Reviewed-by: Debarun Banerjee<debarun.banerjee@oracle.com>
    RB: 16157

commit 19ca9eab9aedcca927ab90316b8eb369ceb7bcbb
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue May 16 07:14:59 2017 +0530

    Bug#21280753    MTS MUST BE ABLE HANDLE LARGE PACKETS WITH
    SMALL SLAVE_PENDING_JOBS_SIZE_MAX
    
    Post push fix (Test designed in mysql-5.6 where we have only
    slave_parallel_type=database type). Including
    that restriction in the test.

commit e0abf396e73f2d21bc900d383a7cc0f4348e98cc
Merge: 48a6759 9776797
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue May 16 01:51:31 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 97767970e4293ef9ea303ff53a603e052f3317ef
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue May 16 01:46:43 2017 +0530

    Bug#25859977 : WRONG ERROR MESSAGE SHOWN AFTER ALTER ADD FK FAILURE
    
    Post-push fix
    The actual fix wrongly picked up the fk name from Foreign_key object of
    the server. Moreover the name there was a LEX_STRING which caused the
    test case to fail in windows. This patch fixes that by reading the fk
    name from the actual NDBFK object.

commit 48a675940f5b28f5f91cf8600cf6e50678831c40
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon May 15 17:12:28 2017 +0200

    Post push fix for bug#22627519.
    
    Result mismatch when running with Query Cache enabled (#scan)

commit 8daf83a2bf7278e90f2053bbf96802eba9cdfbe8
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Mon May 15 18:30:35 2017 +0530

    BUG#25209512: CURRENT_TIMESTAMP PRODUCES ZEROS IN TRIGGER
    
    ANALYSIS:
    =========
    Zero date(0000-00-00 00:00:00) is generated by the
    'BEFORE INSERT' trigger defined on a table with TIMESTAMP
    or DATETIME field having the default as CURRENT_TIMESTAMP
    or NOW().
    
    Similar behavior is observed with LOAD INFILE queries and
    also with BEFORE UPDATE triggers.
    
    Whenever a 'BEFORE INSERT' trigger is defined on a table
    and an insert happens on it, the trigger body is executed
    first and then the new record is written into the table.
    If the trigger body tries to utilize the default values
    of the fields in the table, the values used will be
    incorrect.
    
    Brief working of 'AFTER INSERT' triggers:
    1. Set function defaults for the table.
    2. Write record into the table.
    3. Process the trigger defined on it.
      3.1 Execute the trigger body.
    
    Brief working of 'BEFORE INSERT' triggers:
    1. Process triggers defined on the table.
      1.1 Execute the trigger body.
    2. Set function defaults for the table.
    3. Write record into the table.
    
    Hence when a 'BEFORE INSERT' trigger is defined for a
    table, the evaluation of default functions is not done for
    the table before processing the trigger. Thus the default
    values of the table are not updated and if the trigger body
    tries to utilize these values, incorrect result will be
    obtained.
    
    FIX:
    ====
    We are now evaluating the function defaults for a table
    before processing the 'BEFORE INSERT' or 'BEFORE UPDATE'
    triggers defined on it.

commit e9f9ef11f0b9bf1e1b2755a024ef5f72077b51b7
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon May 15 17:47:47 2017 +0530

    Bug#26036570: NEW PRIMARY IS NOT ELECTED BASED ON LOWEST ID IN
    LEXICOGRAPHICAL ORDER
    
    Issue:
    The member having lowest server uuid is selected as primary leader in single primary mode election.
    But that got reversed in Bug#25876807 push, so now its electing primary as member having highest server uuid.
    
    Solution:
    The sorting method comparator_group_member_uuid should sort in ascending
    lexicographical order instead of descending lexicographical order.

commit 2e11c90c23833e33966ddb6b7b22c5466b4d8543
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Mon May 15 12:43:24 2017 +0200

    Bug#26077226 DATABASE INITIALIZE FAILING IF SELINUX IS ENFORCING MODE ON EL6
    
    Under SELinux mysqld can't read files under /tmp, switch directory to
    /var/lib/mysql-files which have correct SELinux context.

commit b26599068505aba0862d7278425e31db80b01d3b
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon May 15 11:01:49 2017 +0200

    Bug#24559588	CANNOT RUN MULTIPLE MYSQL INSTANCES UNDER SYSTEMD
    
    Post-push fix: One of the help script functions has a syntax error

commit 825808ad4c379f3431ed375eeaa7a1742dec76d7
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Mon May 15 08:56:15 2017 +0200

    Bug#23289541: THE PROXIES_PRIV TABLE IS NOT REPLICATED
    
    Description: PROXY grants are not properly replicated.
                 This fix makes sure that query rewrite is
                 done properly.
    
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>
    Reviewed-By: Luis Soares <luis.soares@oracle.com>

commit d7d95e6c081cdc6bd851992ddfc2e7d7789648b4
Merge: a1f69c2 0c1e512
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Sat May 13 10:26:18 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 0c1e512b175c562376a9d8cd25d567fb6f0d77bd
Merge: 02b3992 94411a0
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Sat May 13 10:25:05 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 94411a02b27a3d3c9d1b5f6e55a20bb0f5ce61bb
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Sat May 13 10:22:46 2017 +0530

    BUG#25451091:CREATE TABLE DATA DIRECTORY/INDEX DIRECTORY SYMLINK
                 CHECK RACE CONDITIONS
    
    Post push patch to fix test failure.

commit a1f69c29b5540af018631d6823ffb379d7cbdd43
Merge: 0dcc766 02b3992
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Sat May 13 07:27:20 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 02b39926e3317ffbc9f6300e06de85f758f82509
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Sat May 13 07:25:42 2017 +0530

    Bug#21280753    MTS MUST BE ABLE HANDLE LARGE PACKETS WITH
    SMALL SLAVE_PENDING_JOBS_SIZE_MAX
    
    Problem: MTS is unable to process an event which is smaller than
    slave_max_allowed_packet but bigger than slave_pending_jobs_size_max.
    
    Analysis and Fix:
    In the current code , slave_pending_jobs_size_max is hard limit i.e., any
    packet greater than slave_pending_jobs_size_max is rejected by Coordinator.
    Slave SQL thread will be stopped with error
    ER_MTS_EVENT_BIGGER_PENDING_JOBS_SIZE_MAX. Now in this patch,
    this limitation is changed to soft limit.
    
    If there is an event whose size falls in between soft limit
    (slave_pending_jobs_size_max) and the hard limit (slave_max_allowed_packet),
    then we consider it as big event and MTS coordinator will wait till all
    workers queue becomes empty. After it is empty, then this big event will be processed.
    i.e., only one event of this size will be executed at any given time.
    All the next events ( big or small) will wait in the coordinator for this big event to finish
    it's execution.
    
    IO thread has already having logic to protect event size with
    slave_max_allowed_packet size (as the hard limit).  When IO thread is
    downloading the event from the master, if the event size is greater than
    slave_max_allowed_packet size, IO thread stop by throwing error
    ER_NET_PACKET_TOO_LARGE. Hence there are no changes required
    there.

commit 4779b678063a0f514e123e14b634d068c2268b2b
Merge: 17a5a18 f9f7338
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri May 12 08:36:31 2017 -0700

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit f9f733841b591d57ae4ad35ba01e40c75a28a6eb
Merge: ba455e3 6ed6c21
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri May 12 08:36:06 2017 -0700

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 6ed6c21054e0b15da8034438e40be93c8440c0a7
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri May 12 08:33:38 2017 -0700

    Workaround for bug#25690926
    For gcc 6.x and newer, compile NDB kernel with -flifetime-dse=1

commit 0dcc7669851e6fa00a7291d2f6cff462e8aabbb0
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Fri May 12 12:23:32 2017 +0530

    BUG#25040331: INTERLEAVED XA TRANSACTIONS MAY DEADLOCK SLAVE APPLIER
                  WITH REPEATABLE READ
    
    Problem and Analysis
    --------------------
    
        Because of the use of MTS and/or XA transactions, the order statements
        from distinct transactions were originally applied on the master may not
        be the same order they are applied on the slave.
    
        On those cases, using RBR with a transaction isolation level other than
        READ COMMITTED might might lead to blocking conditions that didn't
        happened on the original workload (see BUG#25082593).
    
    Fix
    ---
    
        We are now using a flag on the [Anonymous_gtid|Gtid]_log_event stating
        if the transaction might have changes logged with statements.
    
        When this flag is set (default for non-fixed servers) the slave will not
        change the applier thread transaction isolation level.
    
        When the flag is not set, the applier will set the transaction isolation
        level of the current transaction to READ COMMITTED if necessary (it will
        not change it when the applier session isolation level be equal or less
        restrictive than READ COMMITTED).
    
        In this way, we are forcing that all transactions replicated using row
        based replication will always use the READ COMMITTED transaction
        isolation level on the slave side, regardless of any server transaction
        isolation level configuration.
    
        The fix also restored the applier session transaction isolation level
        after applying a Xid_log_event (after committing a replicated
        transaction), a XA_prepare_log_event (after preparing a replicated
        transaction) and in the cases of aborted/failed transactions.
    
        The mysqlbinlog dump of a transaction flagged as "rbr_only" will also
        include a "SET TRANSACTION ISOLATION LEVEL" statement when dumping the
        GTID event.
    
    Changed files:
    
        @ libbinlogevents/include/control_events.h
    
          We gave a meaning to the already logged flag information.
    
        @ libbinlogevents/src/control_events.cpp
    
          Processed the GTID flags, collecting the "might_have_sbr_stmts" info.
    
        @ plugin/replication_observers_example/replication_observers_example.cc
        @ rapid/plugin/group_replication/src/observer_trans.cc
        @ rapid/plugin/group_replication/src/handlers/certification_handler.cc
    
          Fixed calls to GTID constructor.
    
        @ sql/binlog.cc
    
          Created a new flag at "binlog_cache_data" named "with_sbr" that is
          set true when the cache is fed with non-terminal query event.
    
          Created a new flag at "binlog_cache_data" named "with_rbr" that is
          set true when the cache is fed with Table_map or Rows event.
    
          Created also the "might_have_sbr_stmts" function, that returns false
          for "pure RBR" transactions. This new function was implemented for
          the "binlog_cache_data".
    
          Added the logic to reset and set the new flags at
          "binlog_cache_data::reset" and "binlog_cache_data::write_event", and
          also to preserve the flags upon "SAVEPOINT/ROLLBACK TO SAVEPOINT".
    
          Made "MYSQL_BIN_LOG::write_gtid" to consider the cache information
          about the binary log content when creating the Gtid_log_event.
    
        @ sql/log_event.h
    
          Updated "Query_log_event::is_trans_keyword()" to recognize XA
          transactions terminal keywords that should not be considered as
          statements changing content.
    
          Created a new function "Log_event::is_sbr_logging_format()" that
          will return true if the event was/has to be logged using SBR and
          does not contains a transaction control statement.
    
          Created a new function "Log_event::is_rbr_logging_format()" that
          will return true if the event was/has to be logged using RBR.
    
        @ sql/log_event.cc
    
          We will stop the applier with an error when we assumed the
          transaction as "rbr_only" and some statement changing content be
          applied.
    
          Restored the applier session transaction isolation level
          after applying a Xid_log_event (after committing a replicated
          transaction), a XA_prepare_log_event (after preparing a replicated
          transaction) and in the cases of aborted/failed transactions.
    
          "Gtid_log_event::print" will now also print "rbr_only=[yes|no]" when
          dumping a Gtid_log_event with mysqlbinlog. It will also include a
          "SET TRANSACTION ISOLATION LEVEL READ COMMITTED" statement when
          dumping the GTID event with "rbr_only=yes".
    
          "Gtid_log_event::write_post_header_to_memory" now computes the GTID
          flags field instead of just writing "1" to it.
    
          "Gtid_log_event::do_apply_event" now set the transaction isolation
          level to READ COMMITTED when the "might_have_sbr_stmts" flag be false.
          Note that we don't change the isolation level for skipped GTID and
          when the isolation level be less restrictive than READ COMMITTED.

commit b58cd64f5891887b0c6e4dd8978c74c27bc8a48a
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Fri May 12 10:59:41 2017 +0200

    BUG#25793366: GR NODE IS IN RECOVERING STATE IF BINLOG_CHECKSUM CONFIGURED ON RUNNING SERVER [Post-Fix]
    
    Missing two mtr suppression on gr_binlog_checksum_failure test

commit 42b81e003b3753497fb4f19cedc320d3b3c9dc2f
Merge: 61badeb dbf1ee1
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri May 12 09:59:10 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit dbf1ee19fbf13f4cdd0606b054635d1c0db74097
Merge: 8bf8ef0 0530096
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri May 12 09:55:35 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 0530096e00884220388f4a575a6aa0852bad7b61
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri May 12 09:47:48 2017 +0530

    BUG#25451091:CREATE TABLE DATA DIRECTORY / INDEX DIRECTORY
                 SYMLINK CHECK RACE CONDITIONS
    
    ANALYSIS:
    =========
    A potential defect exists in the handling of CREATE
    TABLE .. DATA DIRECTORY/ INDEX DIRECTORY which gives way to
    the user to gain access to another user table or a system
    table.
    
    FIX:
    ====
    The lstat and fstat output of the target files are now
    stored which help in determining the identity of the target
    files thus preventing the unauthorized access to other
    files.

commit 17a5a181eb2a551fcfaca832c22855720b40d261
Merge: d43c7f8 ba455e3
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu May 11 23:10:15 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5

commit ba455e358ee46b706b3912131b856dd057f945b2
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu May 11 23:08:11 2017 +0100

    Remove invalid inline marker from method in .cpp file
    
    Stray inline marker stops linker finding definition for .so

commit d43c7f8f9f31072cd6901405622ad19e65cf51b1
Merge: ea2fca1 6565095
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu May 11 17:24:51 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5

commit 65650959b98f2b5691d1467026ebf151b91fd09e
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu May 11 17:10:17 2017 +0100

    Bug #24829435 	NDB : NDBTABLE::GETCOLUMN(CONST CHAR*) IS INEFFICIENT
    
    The getColumn functionality in the NdbApi dictionary is used to
    map from a column name to a column object.
    This can be used explicitly by users, or implicitly as part of
    passing a column name to an NdbApi function.
    The current implementation uses a linear search of an array of
    strings (column names), whose cost scales O(n) in the number of
    columns.  This has been seen to waste cpu in real-world NdbApi
    applications.
    It is possible for applications to lookup column objects or ids
    upfront, and then use them which gives O(1) access to a column
    object.
    However to improve the experience of users using column name strings
    at runtime, a column name hash is implemented.  This should give
    ~O(1) lookup performance from name strings to column objects.
    
    It is still recommended to perform name->object/id lookups upfront,
    but the cost of doing them at runtime is reduced.
    
    A new test is added to testNdbApi which can be used to show
    that column lookup performance is independent of the #columns.

commit 61badeb9b25c3f0790572ecd4909bf77114987fc
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Fri Apr 28 09:33:51 2017 +0200

    BUG#25793366: GR NODE IS IN RECOVERING STATE IF BINLOG_CHECKSUM CONFIGURED ON RUNNING SERVER
    
    When node configured in GR setup with binlog_checksum='NONE' on a running
    server, then start group replication return success but node is in RECOVERING
    mode forever and server shutdown hangs at this moment. Only option is kill the
    server.
    
    The Continuation object used on the plugin applier pipeline to wait for the
    applications of events was the source of the issue.  Multiple invocations of
    the waiting for execution method when there was a previous error lead to a
    stuck pipeline.
    
    As a solution the waiting method no longer waits when there is a known previous
    error.

commit 65b37c854653101f88dd0f2f8d9e7c47aa91f3ae
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Thu May 11 14:56:28 2017 +0200

    WL#10166 Require WKB input in WKB parsing functions
    
    Post push fix for failing NDB testcase.

commit ea2fca1f4258411518ab2e85f4ee9f2ed30b3219
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed May 10 15:47:02 2017 +0200

    Resolve symbol Int32 clash between nodejs/v8 and NDB.
    
    Post push fix for Bug#25974560.

commit 54a9809235dbcaec41499a60fad21b2a3609bb19
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed May 10 14:07:58 2017 +0200

    Use {UINT,INT}32_{MIN,MAX} from stdint.h
    
    Bug#25974560 COMPILER WARNINGS ON WINDOWS: WARNING C4005: 'INT32_MAX' : MACRO REDEFINITION
    
    Remove the definitions for the above from ndb_constants.h.
    
    This should get rid of build warnings on Windows.

commit 8381d5c5b2fbad35343cc78e2fc20b08d4c7c5ee
Merge: 51865ae 7cb07f6
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed May 10 14:20:33 2017 +0200

    Null-merge from 7.4.

commit 7cb07f61eb8778e401e3793e03721e9a31d7b7c0
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed May 10 14:09:37 2017 +0200

    Fixing build break after Bug#25806659.

commit 51865ae35fbf00f791890b91ab84e142dc77d9ae
Merge: 9592f32 601e20a
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Wed May 10 16:01:01 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    Conflicts:
    	mysql-test/suite/ndb/r/ndb_show_tables.result
    	mysql-test/suite/ndb/t/ndb_show_tables.test
    	storage/ndb/include/ndbapi/NdbDictionary.hpp
    	storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp

commit 601e20af5fde7384826f301b31ca0ea5d54ace73
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Wed May 3 16:39:46 2017 +0530

    Bug #25923164 : FIX BROKEN --UNQUALIFIED OPTION IN NDB_SHOW_TABLES
    
    Problem
    -------
    The fully qualified table and index names were not being displayed
    when the --unqualified option was set to 0.
    
    Fix
    ---
    Fixed --unqualified so that fully qualified table names get displayed
    when it is set to 0.
    Also added new option --fully-qualified to display fully qualified table names.
    Made --unqualified deprecated since it's easier to use --fully-qualified
    than --unqualified=0 when the fully qualified table names need to be displayed.

commit 9592f32ec97bc95e6f180759b773938776da6319
Merge: be15450 2ad6750
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed May 10 12:13:37 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 2ad67501483db38df4804ad2311b41f4f4d6c35e
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed May 10 12:05:53 2017 +0200

    Bug #22627519 NDB : SPJ INSTANCE USAGE IMBALANCE
    
    If number of configured LDM blocks is not divisible by number
    of TC/SPJ blocks, the SPJ requests will not be evenly distributed
    over the available SPJ instances.
    
    This patch introduce a round-robin distribution of the SPJ
    requests over the available SPJ instances.

commit b6d6b7ba570f2aa5327747ef8df515ac6eec57a1
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed May 10 13:56:35 2017 +0530

    WL #5847: LDAP, fixed sasl test cases and some cleanup.

commit f2d9e31509ad95fc6b8b4baeb4d65cb52f3010af
Author: Jens Even Berg Blomsøy <jens.even.blomsoy@oracle.com>
Date:   Wed May 10 09:36:34 2017 +0200

    WL#10166 test fix

commit 3d7a7ea29c83b54687462434117c994c655d3b7a
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon May 8 10:03:37 2017 +0200

    Bug#24559588	CANNOT RUN MULTIPLE MYSQL INSTANCES UNDER SYSTEMD
    
    Added new service file for mysql@.. services. This service is disabled by default.
    Updated systemd scripts to take instance info when checking config, etc.
    
    Known issues:
    * User needs to manually update/disable apparmor profile for new data locations
    * mysql@-instances must be manually stopped before uninstallation or upgrade

commit c347aec34c90858181346e227f92b1e8a034b26d
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Tue May 9 17:42:08 2017 +0200

    Bug #25814143: ADD SUPPORT FOR RUNNING UNITTESTS FROM SPEC FILES
    
    Don't fail build when unittests fail.

commit 30c678a2655385708886d5034a7f31453f45aca5
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Mon May 8 17:13:44 2017 +0200

    Bug #25814143: ADD SUPPORT FOR RUNNING UNITTESTS FROM SPEC FILES
    
    Add separate setting to run unittest while building RPM.

commit 478d3887784f67cce06c49be21fb4163588feb8d
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon May 8 10:28:58 2017 +0530

    Bug #24960450   CONCURRENT DELETE DOESN'T APPLY DURING TABLE REBUILD
    
    Analysis:
    ========
    During alter table rebuild, InnoDB fails to apply concurrent delete log.
    Parsing and validation of merge record happens while applying the
    log operation on a table. Validation goes wrong for the virtual column.
    Validation assumes that virtual column information can't be the end
    of the merge record end.
    
    Fix:
    ====
    Virtual column information in the merge record can be end of the merge
    record. Virtual column information is written at the end for
    row_log_table_delete().
    
    Reviewed-by: Satya Bodapati<satya.bodapati@oracle.com>
    RB: 16155

commit be1545097ccfad7a65eed0fbf5de82197b2a22fa
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri May 5 15:21:05 2017 -0700

    ndb nodejs: CMakeLists.txt bugfix

commit 797b7d3c5fc9246639f187dba71d5388436dc2d3
Author: John David Duncan <john.duncan@oracle.com>
Date:   Wed May 3 17:38:05 2017 -0700

    Platform portability fixes for ndb nodejs
    Upgrade node.js dependent version to 6.10.2 where newer gcc supports it
    Compiler and linker fixes for Windows and Solaris

commit b943a6b8c86dd934d16906d9f6f51b263c9635d4
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu May 4 15:09:23 2017 +0530

    Bug#25749218: PACKAGE(MYSQL-CLUSTER-COMMUNITY-TEST-7.6.1-1.EL7.X86_64.RPM )MISSING DEPENDENCY
    
    - For server, DEB_NDB_CONTROL_TEST_DEPS is empty so that leaves
      an empty line which is a syntax error causing the debian builds
      to fail
    - Fix is to move it to the end of the line above such that there's
      no empty line
    
    (cherry picked from commit 454343c19318c4b3b6d2cd2249285ed9033fc155)

commit 87c918fcd3c239c672b333685650d9c62af483ac
Merge: c783642 f40bb0e
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu May 4 19:17:02 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 9d03e7548ed8c2789cbc155fc8825513dd1ead85
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu May 4 16:56:08 2017 +0530

    BUG#25385334: MYSQL 5.7 ERROR WITH ALTER TABLE MODIFY SYNTAX
                  AND DATETIME TYPE.
    
    Analysis:
    ========
    The problem reported in the bug is:
    ALTER TABLE MODIFY operation with FIRST/AFTER clause for
    DATE/DATETIME and GEOMETRIC types to modify the position
    of columns failed with an error.
    
    ALTER TABLE operations for DATE/DATETIME and GEOMETRIC
    types require additional handling. The cases where
    an error should be reported is discussed below:
    
    a) When a new NOT NULL column of type DATE/DATETIME/GEOMETRIC
       without a default value is added to a table which is not
       empty, a zero date and empty string is used. Under
       NO_ZERO_DATE and STRICT SQL mode, zero date is not allowed.
       An empty string is an invalid value for GEOMETRIC type.
    b) When a column of different data type which can hold NULL
       value is changed/modified to GEOMETRIC NOT NULL type,
       the NULL value is converted to a empty string which is
       invalid value for GEOMETRIC types. Note that data type
       conversion of existing columns is possible only using
       COPY algorithm. Attempt to change/modify datatypes of
       existing columns using INPLACE algorithm is not supported
       and will fail with an error.
    c) GEOMETRIC/DATE/DATETIME can be modified from NULLABLE
       columns to NOT NULL using COPY and INPLACE algorithm.
       When the table holds NULL value, an error is reported
       at SQL layer for COPY algorithm, while the SE enforces
       the restriction for INPLACE algorithm.
    
    Patch for bug19880316 utilized the flag 'error_if_not_empty'
    to enforce the restrictions for GEOMETRIC types listed above
    for COPY algorithm and also handled the case of ALTER TABLE,
    ADD column for INPLACE algorithm.
    
    The patch for bug19880316 introduced a bug-ALTER TABLE MODIFY/
    CHANGE operation with FIRST/AFTER clause for GEOMETRIC types
    using COPY/INPLACE algorithm to modify the position of columns
    failed with an error. The scope of the bug was extended to
    DATE/DATETIME types with the bug fix for bug16888677 which is
    now raised in the current bug report.
    
    The flag 'error_if_not_empty' is set in 'mysql_prepare_alter_table()'
    when:
    * Field is DATE/DATETIME or GEOMETRIC.
    * Field is NOT NULL and DEFAULT value is not supplied.
    
    The flag is later utilized to report error "Invalid use of NULL
    value" in mysql_inplace_alter_table() if:
    * The MDL lock is not upgraded from SU to block writes.
    * Table is not empty.
    
    The ALTER operation reported in the bug report can be performed
    using INPLACE algorithm which does not require the SE to block writes.
    Hence the MDL lock is not upgraded. The flag was incorrectly set for
    the above ALTER operation which triggered the error.
    
    Fix:
    ====
    a) The flag 'error_if_not_empty' is set when new NOT NULL columns
       of DATE/DATETIME/GEOMETRIC types are added.(Note that the other
       case where the flag is set when datatype is modified/changed to
       GEOMETRIC NOT NULL from NON-GEOMETRIC types using COPY algorithm
       introduced by patch for bug 19880316).
    
    b) Also the check to ensure that MDL lock is upgraded
       from SU is removed from 'mysql_inplace_alter_table()'.
       ALTER TABLE, INPLACE algorithm does not support
       changing/modifying data type. So, the flag
       'error_if_not_empty' is set only for ALTER TABLE,
       ADD which takes an exclusive lock.
    
    c) ALTER TABLE, MODIFY/CHANGE using INPLACE algorithm to change
       columns from NULL to NOT NULL, the validation is pushed down
       to SE.
    
    d) Change in error message is recorded for the test
       'alter_spatial_index.test' in innodb_gis since the fix
       pushes the check during the data validation.

commit c7836428d202e48606f2902e5493b70b1f3c39ae
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 4 16:32:04 2017 +0530

    Bug#25998285 - ADD MYSQLADMIN DOCKER/MINIMAL SERVER BUILDS
    
    - mysqladmin is needed by InnoDB Cluster, add tool to docker/minimal package.

commit a8340abe61cc5cde29e71dae26672ebf85c3f560
Merge: c7a5d8f 8bf8ef0
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 4 16:14:05 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 8bf8ef028050e1f19af059e569c01eb9981628dc
Merge: 8f5fdf6 0fcbe53
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 4 16:07:07 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 0fcbe53be63fd261f729198720a067b08e3a414c
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 4 16:05:04 2017 +0530

    Bug#25998285 - ADD MYSQLADMIN DOCKER/MINIMAL SERVER BUILDS
    
    - mysqladmin is needed by InnoDB Cluster, add tool to docker/minimal package.

commit f40bb0e613ea92b4080367d749aecb682e57bfc6
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Apr 27 23:58:47 2017 +0530

    Bug#11766869 NDB_CONFIG TO DUMP COMPLETE CURRENT CONFIGURATION
    
    Problem
    =======
    
    1)Ndb_error_reporter internally uses ndb_config with a deprecated parameter
    "id". Hence ndb_config returns null and that breaks the testcase
    "ndb.ndb_error_reporter".
    
    2)ndb_config accepts deprecated parameter "id" but now it does not support
    it and it is not compactable with the earlier version.
    
    Fix
    ===
    
    1)Replaced the deprecated parameter "id" with new parameter "Nodeid" also
    added checks in the Ndb_error_reporter to fail in right place when the
    config file is wrong.
    
    
    2)have changed ndb_config to be compactable to earlier version.

commit c7a5d8f0bfe7db79ff0d6b06d11fe2ecd95f31a5
Merge: 5b9b646 8f5fdf6
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 4 12:59:58 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 8f5fdf68b435cc802335342d29163a61365530d4
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 4 12:57:57 2017 +0530

    Bug#24465081        FAILURE IN ATOMIC_* TESTS DUE TO CLEAN-UP ISSUES
    IN BINLOG_DISKFUL
    
    Post-push: Fixing test script windows failure

commit 9af1b21684601864ff4eb3c13869cee5dced2a08
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed May 3 22:03:08 2017 +0530

    Added nodejs package for debian

commit 43ccff9b0fdcd116e87ad180f70b1452a0146c66
Merge: 158220b 8ee4de8
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed May 3 15:17:52 2017 +0000

    Merge branch 'mysql-5.5' into mysql-5.6

commit 8ee4de89ce63c98af2f88cc9dcc528110530107b
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed May 3 15:16:08 2017 +0000

    Bug#25340722 - PRINT BINARY DATA AS HEX IN THE MYSQL
                   CLIENT (CONTRIBUTION)
    
    DESCRIPTION:
    ============
    Binary data should be printed as hex in the mysql client
    when the option binary-as-hex is enabled.
    
    ANALYSIS:
    =========
    The fix deals only with mysql command line client.
    It does not change, at all, the data sent to the
    applications. Printing binary data as hex also
    allows to use the output in the where clause
    of the query.
    
    FIX:
    ====
    A new option 'binary-as-hex' is introduced to print the
    binary contents as hex in the mysql client. The option
    is disabled by default. When the option is enabled, we
    convert the binary data to hex before printing the
    contents irrespective of whether it is in tabular,
    xml or html format.

commit 5b9b646e86fcea43d78b7a39296735907936d376
Author: Aditya A <aditya.a@oracle.com>
Date:   Wed May 3 17:43:21 2017 +0530

    Bug #24929748	REVERSE SCAN ON A PARTITIONED TABLE DOES ICP
                  CHECK INCORRECTLY, CAUSING SLOWDOWN
    
    PROBLEM
    
    Partition helper functions assume that end range condition will
    be checked by the server and reset the end range condition
    causing innodb to do scans beyond the end range condition passed
    by ICP from optimizer.
    
    FIX
    
    Remove the redundant resetting of end ranges in partition
    helper functions
    
    [ #rb 15977 approved by deb ]

commit 0314d621f0cc87e401a67a8de4471706bb7f8792
Merge: 21093af 43ccff9
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed May 3 15:20:17 2017 +0000

    Merge branch 'mysql-5.6' into mysql-5.7

commit 5a4579365a94eeda21f48842c5b396cde98ced66
Merge: f08dd6c 8fd341f
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 16:15:54 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    (WL#8500 Adapt MySQL Cluster to 8.0
    
     - Fix windows build
     - Replace popen and pclose with _popen and _pclose respectively
       on windows platforms)

commit 8fd341fe4976f28f337da5713ceb5eea741ef7c6
Merge: bc1071a df71dc2
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 16:12:26 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4
    
    (WL#8500 Adapt MySQL Cluster to 8.0
    
     - Fix windows build
     - Replace popen and pclose with _popen and _pclose respectively
       on windows platforms)

commit df71dc289e68f2834e05b9cbf05ca3c0214ac158
Merge: ad47d4a 3f496ab
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 16:09:36 2017 +0530

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3
    
    (WL#8500 Adapt MySQL Cluster to 8.0
    
     - Fix windows build
     - Replace popen and pclose with _popen and _pclose respectively
       on windows platforms)

commit 3f496ab1d3f31191047f10b0d68fe3248348fa2c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 15:57:03 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Fix windows build
    - Replace popen and pclose with _popen and _pclose respectively
      on windows platforms
    
    (cherry picked from commit 4424cb5d5db6f2e9c0750c26a172717fcc9437dd)

commit 21093af29ac1018f3759b59e8fbb976dc77baef2
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Tue Mar 28 16:42:14 2017 +0530

    Bug#25984429 MTR: BACKPORT OPTION --report-unstable-tests TO 5.7
    
    Problem:
    --------
    Various Linux distributions are running the MySQL Test Suite during
    build. As known, MySQL test suite has some flaky tests. If a build
    is unlucky and gets a sporadic test failure, it is cancelled and
    in the worst case, the distribution is blocked from upgrading MySQL
    to a new one. Even if MTR is run with --retry > 1 and all failed
    tests pass on retry, exit code from MTR is non zero and build stops.
    
    Solution:
    ---------
    An MTR option named --report-unstable-tests is added which does the
    following:
    - Reports any test which has passed on at least one retry attempt
      in a separate category called "Unstable tests" in the summary.
      They will be in the format :
      <test_name>(<number_of_failures>/<number_of_attempts>)
    - In case all failures are due to unstable tests, it causes MTR
      to print a warning and terminate with a zero exit code.
    
    Note:
    This is a backport of the patch for Bug#24473420 from mysql-8.0
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>

commit 858f0a827c13aefc3c5484dbe06489ee3a14045f
Merge: 9672ff8 158220b
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Tue May 2 19:11:58 2017 +0200

    Upmerge of the 5.5.56 build

commit 158220bea188b907d08583b2d0ce69f346656245
Merge: 8a0a7e6 8594e1b
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Tue May 2 19:10:30 2017 +0200

    Upmerge of the 5.5.56 build

commit 8594e1ba1e331b3d001c6ae711d5ee5c27250b80
Merge: a0b48bb a2613a1
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Tue May 2 19:07:29 2017 +0200

    Merge branch 'mysql-5.5.56-release' into mysql-5.5

commit f08dd6ca7597e6a53a74ef17c69e801348332e1e
Merge: dd49a3f bc1071a
Author: Sreedhar Sreedhargadda <sreedhar.sreedhargadda@oracle.com>
Date:   Tue May 2 16:32:06 2017 +0200

    Upmerge of the 7.2.29 build

commit bc1071a984113263955c02339846cc11ed802b17
Merge: 7fc3834 ad47d4a
Author: Sreedhar Sreedhargadda <sreedhar.sreedhargadda@oracle.com>
Date:   Tue May 2 16:28:57 2017 +0200

    Upmerge of the 7.2.29 build

commit ad47d4ac4d080f039e85b0f1c935b2459f70383e
Merge: 28d740f 6de09f7
Author: Sreedhar Sreedhargadda <sreedhar.sreedhargadda@oracle.com>
Date:   Tue May 2 16:26:24 2017 +0200

    Upmerge of the 7.2.29 build

commit 9672ff891ce835e89f68bd74d37b4dd815e84cf3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 2 19:56:07 2017 +0530

    wl 5847:  Windows fixed.

commit 6de09f74c14806a2bdf98050020dab589ab21b1c
Merge: 472c8fb 8d6e3f1
Author: Sreedhar Sreedhargadda <sreedhar.sreedhargadda@oracle.com>
Date:   Tue May 2 16:07:14 2017 +0200

    Merge branch 'mysql-cluster-7.2.29-release' into mysql-5.5-cluster-7.2

commit 5a2eaccb82cdb9bf0b565fd3db065c118a30f3a4
Merge: a462ce1 8a0a7e6
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Tue May 2 18:56:44 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 8a0a7e61f0177604f37c73f25cfce6343ae4ab2c
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Tue May 2 18:54:33 2017 +0530

    Bug #25943038: QUERY WITH DERIVED TABLE IS CACHED IN MVCC
                   SCENARIO
    
    Issue:
    ------
    Queries with derived tables which used materialization were
    stored in Query Cache without fully taking into account storage
    engines for some tables used by them (specifically information
    for underlying tables of derived table was disregarded).
    So, cached results for such queries were used without check
    against SEs which led to stale results sometimes.
    
    This problem occurs when:
    1) Rows are being inserted into a table (t1 for example)
       but they haven't been committed yet. Storage engine
       used is INNODB
    2) Query with a derived table contains t1 as a base table.
    3) Optimizer has chosen to materialize the derived table.
    
    In this case Query Cache returned stale results for the query
    after transaction commit.
    
    Solution:
    ---------
    When a derived table is present, no check is performed to
    make sure that all the base tables qualify to be cached.
    This has been corrected. If the query qualifies to be
    cached, then the storage engine will be consulted at cache
    lookup time.

commit a462ce10fa9ac4c7cc0520ecdabbc2d856911a1e
Merge: d22f9da 36d17d0
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 2 12:45:42 2017 +0200

    Null-merge from 5.6.

commit 36d17d0cf6be996b7e5486e31ad4235b580ba459
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 2 12:44:54 2017 +0200

    BUG#25719975 SHEBANG HARD CODED AS /USR/BIN/PERL IN SCRIPTS, BREAKS ON FREEBSD
    
    Post push fix for Solaris.

commit dd49a3f70875e3103a6fc800364000a11abd0572
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue May 2 15:30:45 2017 +0530

    Updated spec file for cluster minimal rpm builds

commit d22f9da5e5130d7a2ba8ed06ab3542bbbb52f5d2
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 2 14:24:26 2017 +0530

    wl# 5847: ASAN and some more minor fixes.

commit 9966f26cd1d46605a541c99d4f545681a9af9631
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 14:53:32 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR HA_ERR_ROWS_EVENT_APPLY
    
    Reversed order of checks since multiple-channels seem to have un-initialized
    configuration settings.

commit b7f90ea54bac14b34d1338910fa6e28acd9a80f6
Merge: 0c66236 7fc3834
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Fri Apr 28 13:07:34 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    Conflicts:
    	storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
    	storage/ndb/test/run-test/daily-devel--07-tests.txt

commit 7fc38346cd6d7659e6531c169323d047c513300d
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Fri Apr 28 12:39:42 2017 +0200

    Bug#25806659 - NDBREQUIRE(LOGFILEPTR.P->FILEREF != RNIL) FAILS, FOR NEXT REDO LOG FILE NOT OPEN
    
    At the last write on a redo log file n, a command to open file n+2 is
    issued. At this time, it is expected that file n+1 is already opened
    for next writes. However, this may not be the case for a tardy disk,
    causing node crash.
    
    This fix will add handling an unopened file gracefully by introducing
    waits.

commit 0c6623623cb84180b2410caad9789b78c109090c
Merge: c484046 0f6801b
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:53:13 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 0f6801b67782b920c0af56e528c1d63e77770a42
Merge: 02a30e9 28d740f
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:51:04 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 28d740febc315571eded968a5b389bd4173b0745
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:49:51 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR HA_ERR_ROWS_EVENT_APPLY
    
    Removed function definition if no binlog.

commit c484046aefd240ecf3c4ba52722ba31ef02c20c0
Merge: a418ab3 02a30e9
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:05:20 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 02a30e9a5f5ca3f186a4a059b35636aff2de99ba
Merge: 6630ac1 ccdb0aa
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:04:51 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit ccdb0aac1ad4597a63c2b1b416c58b1f19cc0a4d
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:03:12 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR HA_ERR_ROWS_EVENT_APPLY
    
    Removed direct dependency of config option.

commit a418ab373ce9709aace5c5b1c4962193099d190c
Merge: d031d08 6630ac1
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 09:26:51 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 6630ac12a51c8a5131a63154b3946537893a494c
Merge: b0a9d73 f70822c
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 09:07:36 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit f70822c78b198a70fd4a83530c66fc0b54bd304e
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 09:05:00 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR HA_ERR_ROWS_EVENT_APPLY
    
    Added #ifdef HAVE_NDB_BINLOG ... #endif

commit d031d08adcd53d93219a16d166b9668eb21701af
Merge: bb660ce b0a9d73
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Apr 27 20:54:32 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR HA_ERR_ROWS_EVENT_APPLY
    
    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    Adding check to stop Ndb slave if multi-threaded slave configuration or if multi-master setup is detected.
    Added new test case for checking unsupported slave configurations.
    Added new test case for checking if multi-master replication is setup.
    Created generic 3 cluster config to be used by ndb_rpl_slave_multi_source_config.test and ndb_rpl_break_3_chain.test

commit b0a9d73f7ee8205ce16b47c4fa854d6e6f2ac14c
Merge: 8bfcdb1 0ff63fa
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Apr 27 17:30:42 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 0ff63fa165fd6255a391f7cf89329f68131e688e
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Apr 27 16:56:10 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR HA_ERR_ROWS_EVENT_APPLY
    
    Adding check to stop Ndb slave if multi-threaded slave configuration.
    Added new test case for checking unsupported slave configurations.

commit 90cae25d881580ad8b6529f688dcbf1aee756d4c
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 27 19:00:52 2017 +0530

    Bug#25287633:GCOLS: INCORRECT BEHAVIOR WITH CHARSET CHANGES
    
    Issue:
    ------
    Virtual generated column functions that contain certain
    string functions can cause problems when there is a change
    in charset.
    
    Steps:
    1) Create table t1 with virtual generated column containing
    string functions that generate strings in the connection
    character set.
    
    2) SELECT * FROM t1;
    This step creates the item tree for the generated column.
    While creating the objects, the table's memroot is used.
    The flag "permanent_changes_completed" is set to true to
    indicate that no further permanent changes will take place
    in the item tree.
    
    3) SET NAMES utf8;
    Changes the connection's default charset to utf8.
    
    4) SELECT * FROM t1;
    While re-fixing the generated column items
    (TABLE::refix_gc_items), it is noticed that the default
    charset of the result of some string functions doesn't
    match with other parameters. So a new Item object is
    created with the correct charset. This new object now
    replaces the one present in the item tree (created in
    step 2).
    
    But the new object is created on the statement's
    mem_root and hence will be destroyed at the end of the
    statement. Thus leaving the generated column's item tree
    with a dangling pointer.
    
    5) SELECT * FROM t1;
    While going through the generated column's item tree,
    dangling pointer strikes.
    
    The root cause here is that a conversion due to charsets is
    required and a new Item creation is required in step 4.
    This should be avoided.
    
    Solution:
    --------
    In the resolve_type phase, some string functions assign the
    current charset to the Item object. This can return strings
    in the connection character set.
    
    Use the table's charset (mentioned in the DDL) while doing
    fix_fields. Before fix_fields is called on the generated
    column's expression, switch to the table's charset. This
    will side-step any problem with aggregating charsets since
    it is independent of any charset changes made by the user
    after the DDL.

commit 910f892ab51806d5cd43f2732962e1a20faf33cd
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 27 16:25:13 2017 +0530

    Bug #23573575: GCOLS: INCORRECT BEHAVIOR WITH BLOB IN DML
    
    Issue:
    ------
    This problem occurs when:
    1) A virtual generated column is of type BLOB and is part
       of a secondary index.
    2) A REPLACE statement tries to update an existing row.
    
    The row in the clustered index has the new value but the
    value of the virtual generated column in the secondary
    index has not been updated.
    
    This can result in incorrect behavior with future DML
    statements.
    
    Root cause:
    -----------
    ha_index_read_map calls update_generated_read_fields.
    Field_blob object is required here to keep track of the
    actual value of column 'c'.
    
                           a   b            c
    table->record[1] ==> --------------------------------
                         | 7 | 7  |   ptr_to_blob_value |
                         --------------------------------
                                            ||
                                            \/
                                          ......................
                                          | <to-be-calculated> |
                                          ......................
    
    
                           a   b            c
    table->record[0] ==> --------------------------------
                         | 7 | 13 |   ptr_to_blob_value |
                         --------------------------------
                                            ||
                                            \/
                                          ........
                                          |  13  |
                                          ........
    
    table->record[0] was calculated in update_generated_write_fields.
    
    update_generated_read_fields tries to re-create the
    existing row to see if the index's value needs
    modification. Here it has to use the same blob object
    referred to above.
    
    At the end of update_generated_read_fields :
                           a   b            c
    table->record[1] ==> --------------------------------
                         | 7 | 7  |   ptr_to_blob_value |
                         --------------------------------
                                            ||
                                            \/
                                          ........
                                          |  7   |
                                          ........
                                            /\
                                            ||
                           a   b            c
    table->record[0] ==> --------------------------------
                         | 7 | 13 |   ptr_to_blob_value |
                         --------------------------------
    
    update_generated_read_fields never calls
    Field_blob::keep_old_value and hence the value is
    over-written with the current row. This allows the server
    to mistake that no change is required for the secondary
    index. This results in a mis-match between the values in
    the clustered index and the ones in the secondary index.
    
    Solution:
    ---------
    Effectively what we need is a producer-consumer type model:
    Whichever function (among update_generated_write_fields and
    update_generated_read_fields) is called first should set
    the m_keep_old_value flag to true.
    
    The succeeding function (again among the two) should consume
    the flag. If the flag isn't consumed, at the end of the
    statement, set it to false. This will avoid issues that
    arise when, for example an INSERT preceeds an UPDATE.
    
    There are other exceptions, like
    update_generated_write_fields being called from
    COPY_INFO::set_function_defaults. This was done as part of
    Bug#21875520, to avoid a much larger re-factoring. The flag
    is set to false in this case.

commit bb660ce8cf800b94df63d645f246eec0f1e5775b
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Fri Sep 23 11:31:43 2016 +0100

    Bug#24444878 MYSQLD CRASH DURING UNIQUE KEY CREATION
    
    - Regression introduced by fix for Bug#23089566
      HA_NDBCLUSTER::OPEN_INDEXES MEMORY LEAK. The mysqld crash in a
      debug compile assert.
    
    - Testcase created to show the problem, the debug time assert in
      release_indexes() removed to avoid since m_table poiunter is not
      really used by the function. It was just a way to detect if table
      is open or not.

commit e5d7c5e1a3dc070d50de322cda060aba947399ef
Merge: b4d5be6 8bfcdb1
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Apr 27 15:39:09 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 8bfcdb10754276e5b9ad247812e0d766d06a0219
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Apr 27 15:36:27 2017 +0530

    Bug#25882950 : CACHED INDEX IN NDBAPI'S DICT CACHE NOT CLEARED AFTER `CREATE TABLE` FAILURE
    
    When a table with foreign keys are created, first the index is created
    and then during foreign key creation, those indexes are loaded into the
    ndbapi's dict cache. But when the `create table` ultimately fails due
    to some FK issue, those indexes in the cache are not invalidated. Due
    to this, any upcoming `create table` with some similarly named indexes
    as the previous failed DDL gets all mixed up and gives out inconsistent
    results. This patch invalidates the indexes in cache on failure.

commit 3f1128eb4151b4c6a5b2a5f81fd54646cbeb2266
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Apr 27 15:35:36 2017 +0530

    Bug#25859977 : WRONG ERROR MESSAGE SHOWN AFTER ALTER ADD FK FAILURE
    
    When a new FK constraint, being added to a table, has the same name as
    of another already existing constraint, the DDL fails. During this
    failure the cluster handler returns the error code incorrectly. This
    patch fixes that.

commit b4d5be677d4bc60f10ef3c421ceeb468031baf73
Merge: df88bf2 56e3bef
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Apr 27 10:47:26 2017 +0200

    Upmerge of the 7.2.29 build

commit 56e3bef06f3144b6fb07f70b00819d01b4deec6d
Merge: 6cc3a5c 47042a3
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Apr 27 10:44:36 2017 +0200

    Upmerge of the 7.2.29 build

commit 47042a3a8e9695eb36db7496eb48c00e1641b89c
Merge: 36ebda3 472c8fb
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Apr 27 10:43:37 2017 +0200

    Null merge of the 7.2.29 build

commit 8d6e3f1ee656cd52d2cd9b0a92d97d480f97b723
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:41:27 2017 +0200

    Bug#25942414: SSL VARIABLES USAGE WHEN LIBMYSQL IS COMPILED WITH WITH_SSL=NO
    
    Description: If libmysql is compiled with WITH_SSL=NO,
                 --ssl-* are not useful.
    
    Solution: 1. Restricted WITH_SSL to values : bundled | yes | system
              2. Made "bundled" as default value for WITH_SSL. Also,
                 not specifying WITH_SSL or even specifying WITH_SSL=no
                 will be treated as/converted to WITH_SSL=bundled.
    
    Reviewed-By: Tor Didriksen <tor.didriksen@oracle.com>
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>
    (cherry picked from commit 3eb2058be34d1a21771fe89ff1a0c08f156899bc)

commit 472c8fb3a6c8d98cc6ef5fb2d30ece120d813299
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Apr 27 10:36:13 2017 +0200

    Raise version number after cloning 7.2.29

commit d2e4fbc9f4d56a45152da150a5886330a9b078bd
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:41:27 2017 +0200

    Bug#25942414: SSL VARIABLES USAGE WHEN LIBMYSQL IS COMPILED WITH WITH_SSL=NO
    
    Description: If libmysql is compiled with WITH_SSL=NO,
                 --ssl-* are not useful.
    
    Solution: 1. Restricted WITH_SSL to values : bundled | yes | system
              2. Made "bundled" as default value for WITH_SSL. Also,
                 not specifying WITH_SSL or even specifying WITH_SSL=no
                 will be treated as/converted to WITH_SSL=bundled.
    
    Reviewed-By: Tor Didriksen <tor.didriksen@oracle.com>
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>
    (cherry picked from commit 3eb2058be34d1a21771fe89ff1a0c08f156899bc)

commit 3c83d86511baa580b4b73fb2d75f9886e8854123
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:06:29 2017 +0100

    Raise version number after cloning 7.2.28
    
    (cherry picked from commit 8881754b6b6a804eefc130ddccfc0ff444bb292e)

commit 7096ec55ee1912dc49dbccd3ee4585e532623da9
Merge: 54e73e5 f927eda
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Apr 27 12:34:47 2017 +0530

    Empty version change upmerge

commit f927edaee823b3425dba062e02a5cb2e0cf95817
Merge: affb439 a0b48bb
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Apr 27 12:30:55 2017 +0530

    Empty version change upmerge

commit a0b48bb5e7773f03771cc93a9966c9607dfed3cd
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Apr 27 12:27:52 2017 +0530

    Raise version number after cloning 5.5.56

commit a2613a149e85c1b97b0a34c6cfcf37d057a443d9
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:41:27 2017 +0200

    Bug#25942414: SSL VARIABLES USAGE WHEN LIBMYSQL IS COMPILED WITH WITH_SSL=NO
    
    Description: If libmysql is compiled with WITH_SSL=NO,
                 --ssl-* are not useful.
    
    Solution: 1. Restricted WITH_SSL to values : bundled | yes | system
              2. Made "bundled" as default value for WITH_SSL. Also,
                 not specifying WITH_SSL or even specifying WITH_SSL=no
                 will be treated as/converted to WITH_SSL=bundled.
    
    Reviewed-By: Tor Didriksen <tor.didriksen@oracle.com>
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>
    (cherry picked from commit 3eb2058be34d1a21771fe89ff1a0c08f156899bc)

commit 57d15c867e32326fffbb91b75fa651b9bcf899b4
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Feb 27 17:20:51 2017 +0530

    Raise version number after cloning 5.5.55
    
    (cherry picked from commit 7df8dc750c26ead87c643f87dccba28a66cf3c9b)

commit 54e73e55e3e09a740d47e9bdc2624270ce4b26e0
Merge: 6301617 affb439
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:45:14 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit affb4391c1eaa4b172ce65bdb1193731c5de0feb
Merge: 520e6da 3eb2058
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:44:26 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit 3eb2058be34d1a21771fe89ff1a0c08f156899bc
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:41:27 2017 +0200

    Bug#25942414: SSL VARIABLES USAGE WHEN LIBMYSQL IS COMPILED WITH WITH_SSL=NO
    
    Description: If libmysql is compiled with WITH_SSL=NO,
                 --ssl-* are not useful.
    
    Solution: 1. Restricted WITH_SSL to values : bundled | yes | system
              2. Made "bundled" as default value for WITH_SSL. Also,
                 not specifying WITH_SSL or even specifying WITH_SSL=no
                 will be treated as/converted to WITH_SSL=bundled.
    
    Reviewed-By: Tor Didriksen <tor.didriksen@oracle.com>
    Reviewed-By: Georgi Kodinov <georgi.kodinov@oracle.com>

commit 6301617b611e1b6177f316050f7f6c5680595a6b
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Mon Apr 24 11:55:03 2017 +0100

    BUG#25800025: SQL THREAD ERROR 1778 WHEN GTID SKIPPING PARTIAL TRX
    
    Post-push fix for non-deterministic behavior of the MTR include file
    'rpl_receive_event_count.inc' sourced by
    'rpl_nogtid_rollback_on_anonymous_gtid' test case.

commit df88bf2b1aeee0e832f2a59e89808023fe9b97f0
Merge: 2d1051d 6cc3a5c
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Apr 26 17:44:53 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 6cc3a5c797c6da2c2709b77d71f024d67956614c
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Apr 26 17:43:15 2017 +0530

    Bug #25333414 CLUSTER FAILS TO RESTART AFTER ERROR 4239 'TRIGGER WITH GIVEN NAME ALREADY EXIST
    
    Fix ndbd startup failure.

commit febba40d7b3511cfa3b9911e7bb201cfa6bcfe78
Author: Jens Even Berg Blomsøy <jens.even.blomsoy@oracle.com>
Date:   Wed Apr 26 10:59:22 2017 +0200

    WL10166 Result missmatch content fix

commit 06f60d20cc6f80bff38793937dad371e173f2db3
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Apr 26 11:10:41 2017 +0530

    Bug #25793677   INNODB: FAILING ASSERTION: CLUST_TEMPL_FOR_SEC || LEN
    
    Problem:
    ========
    During searching, length of the virtual column field from virtual index record is
    less than the (expected) template column length and it leads to failure.
    
    Fix:
    ===
    Length of the virtual column field from virtual index record can be less than
    template column length if record is fetched from prefixed virtual index.
    
    Reviewed-by: Jimmy Yang jimmy.yang@oracle.com
    RB: 16047

commit 2d1051d5a65a164108ea9bbdd4f7c7bd3eeec202
Merge: 4f743da dbca0ba
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Apr 25 15:52:21 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit dbca0ba154611d86ef3571c7b8deaf40d2bd3fdb
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Apr 25 15:51:17 2017 +0530

    Bug #25333414 CLUSTER FAILS TO RESTART AFTER ERROR 4239 'TRIGGER WITH GIVEN NAME ALREADY EXIST
    
    The data node fails to restart because the NoOfFragmentLogParts
    config parameter is set to 16 even though only one LDM is running.
    All 16 log parts are assigned to the same LDM for redo log replay.
    This results in page exhaustion during redo log replay and causes
    a crash.
    
    Added a fix to to detect a config with more than 4 redo log parts
    per LDM, and reject it as an invalid config.

commit f85408e5dea242a55b83932e66bb11f946a181b1
Merge: 7df008c 520e6da
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue Apr 25 13:20:40 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 520e6da17595ae1983e23a5f856b090b94cd5f12
Merge: 01749a7 fc303e6
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue Apr 25 13:15:07 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit fc303e6e750bcd4be3df4941d860b5b42584c833
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue Apr 25 13:12:30 2017 +0530

    Added plugins for commercial docker rpm builds

commit 7df008c4e5f7ee4be7801170fd4138488bb30919
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Apr 11 08:23:49 2017 +0200

    Bug#25909965 REMOVE DEPENDENCIS ON LIBSTATOMIC.SO ON SOLARIS
    
    man -M /opt/developerstudio12.5/man CC
           -xatomic=a
               Specify which atomics support runtime library is linked.
               a must be one of the following:
               studio    Link with the libstatomic  library  bundled  with  Oracle
                         Developer Studio.
               gcc       Link with the libatomic library in /usr/lib.
               none      Do not link with any atomics support library.
               The option -xatomic=studio is the default when neither -latomic nor
               -xatomic  is  specified,  and  the   compiler   is   compiling   in
               -std={c++03|c++11|c++14} mode.
    
    So with -latomic we got dependency on
    /opt/developerstudio12.5/lib/compilers/atomic/sparcv9/libstatomic.so
    
    For InnoDB memory barriers: prefer HAVE_IB_MACHINE_BARRIER_SOLARIS
    over HAVE_IB_GCC_ATOMIC_THREAD_FENCE on Solaris, since the latter is
    really part of C11/C++11 and creates a dependency on libstatomic which
    is not installed by default.

commit b220c1751b9ca9a1e7fde31d0d204317d5eb2461
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Apr 18 15:28:37 2017 +0200

    Bug#25731075: INCOMPATIBLE POINTER TYPES WARNING WHEN BUILDING XCOM
    
    Broken build for gcc/Solaris
    Backport from trunk.

commit 766bdcd1482ed2f08c3cbd14317aae3179bb75ab
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Apr 24 15:41:18 2017 +0530

    LDAP: skipping SASL test temporally. need to specify sasl client path in the test. will fix it.

commit 1e81a9f1d221b587d42eaa8466dde4830d180883
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Mon Apr 24 15:16:58 2017 +0530

    BUG#25476479:  MYSQLD FILLS UP ERROR LOGS WITH [ERROR]
                   ERROR IN ACCEPT: BAD FILE DESCRIPTOR
    
    DESCRIPTION:
    ============
    When mysqld is secured with TCP wrappers and the files
    hosts.allow and hosts.deny are configured to restrict access
    from an IP address, very large error log files are generated
    if we try to connect to the server via that IP address.
    This runs indefinitely resulting in ever growing error log
    files and puts load on the machine. The server continues to
    serve authorized connections although slowly.
    
    ANALYSIS:
    =========
    When the listening socket is accepting connections, if a
    connection was refused by TCP wrappers, we were closing the
    listening socket which led to connect socket being polled
    continuously, leading to indefinite number of errors being
    logged to the error log.
    
    FIX:
    ====
    We are now closing the connect socket only, thus avoiding
    its polling and also allowing the listening socket to
    accept other connections.

commit 42b84aa3a592877f0e24e8dbd91926bd5bc60226
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Mon Apr 24 00:33:23 2017 +0530

    Bug #25264253: QUERY REWRITER PLUGIN CRASHES WHEN READ_ONLY IS
                   ENABLED
    
    ISSUE: When server is started with read_only option enabled, query
           rewriter plugin fails to take appropriate lock resulting in
           assertion and server exiting abnormally.
    
    FIX: Made change to ignore read_only option so that the query rewiter
         plugin takes appropriate lock.

commit 84eebede6570df4c77821ec20d4e0a736e43f1d1
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Wed Mar 29 13:27:26 2017 +0100

    BUG#25800025: SQL THREAD ERROR 1778 WHEN GTID SKIPPING PARTIAL TRX
    
    Problem
    -------
    
    SQL thread is unable to GTID skip a partial transaction.
    
    Analysis
    --------
    
    The SQL thread has a mechanism to rollback the partial transactions left
    on the relay log. The mechanism is activated every time the SQL thread
    is going to apply a Gtid_log_event and the THD already owns a GTID.
    
    The issue is happening when the transaction being applied is to be GTID
    skipped. Because in this case the THD owns no GTID, the rollback
    mechanism is not being used.
    
    Fix
    ---
    
    When applying a Gtid_log_event, the SQL thread will "rollback" the
    partial transaction when a transaction that was being skipped was
    incomplete in the relay log.

commit 95ab8be686acd375374d7b6a6def93c48ef6b50c
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Thu Apr 20 15:12:06 2017 +0200

    Bug#25912557 ST_LATFROMGEOHASH/ST_LONGFROMGEOHASH ODD INPUT TYPE REQUIREMENT
    
    The functions ST_LatFromGeohash, ST_LongFromGeohash and ST_PointFromGeohash
    did not allow data that originated from a CHAR column.
    
    Change-Id: I88f7fed5ad992394c18a945f00896c033b0688ba

commit e335827e39dd80fe1bc4d2ffc9a65b8a0dcef4af
Merge: af75eb5 01749a7
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Fri Apr 21 11:58:51 2017 +0530

    Bug#25452277: OUT OF DISK SPACE CONDITION LEADS TO SIGNAL 11
    
    Merge branch 'mysql-5.6' into mysql-5.7

commit 01749a76963ab0562e5a1b56cc7d40b276d54bd9
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Fri Apr 21 11:38:31 2017 +0530

    Bug#25452277: OUT OF DISK SPACE CONDITION LEADS TO SIGNAL 11
    
    Problem:
    ========
    An out of space condition has been developed, after some
    warnings mysqld exits abnormally with signal 11.
    
    Analysis:
    =========
    User has configured binlog_error_action= ABORT_SERVER.
    During master server execution disk becomes full and due to
    this, update on binary log index file fails. On this critical
    error server aborts. Now users try to restart the server but
    still there is no free disk space. While the server is
    trying to come up it finds the binary log being enabled it
    tries to open the file and update the index file with this
    information. Again it results in critical error and code
    tries to access server thread specific diagnostic area which
    is not yet initialized. This causes the server to exit
    abnormally.
    
    Fix:
    ===
    In existing code when server encounters any critical error
    while it is coming up it just logs appropriate error message
    into the error log and aborts. Similarly, binlog error exit
    handling code should just log message into error log when
    the actual 'thd' object is not yet ready.
    
    Write error message into error log and exit.

commit 4f743dad2e13647aabcd542a869fbcc47fd2265c
Merge: 2c7b148 c254bff
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Fri Apr 21 10:22:58 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit c254bff3c1e2e6add092513b4439c2823e1d5b5c
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Apr 20 14:03:08 2017 +0530

    Bug #25844166 NDB_CONFIG TO PRINT CONFIG DIFFERENT FROM DEFAULT
    
    post push fix
    
    Have used my_safe_itoa() in old push. But this function is dangerous to
    use in our code. Hence have replaced it with snprintf().

commit af75eb5552bb971352805e2a0784aba82bcf118a
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 20 21:33:11 2017 +0530

    ldap: Changed ldap sasl client library to dynamic library.

commit 0050b8b64546a87b9fcf9b0c1616e5b13d6a933a
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Thu Apr 20 16:57:43 2017 +0200

    BUG #23107137: TYPOS IN MYSQLXTEST --HELP-COMMANDS
    
    Description
    ===========
    Using mysqlxtest with --command-help switch gives output containing some
    minor typos. --help provides incomplete information for the --bindump help
    entry.
    
    RB: 16011
    Reviewed by: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
    Reviewed by: Lukasz Kotula <lukasz.kotula@oracle.com>

commit 4ef48eaa5daaf33e72b9b094485d7504025344dc
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Thu Apr 20 17:46:24 2017 +0530

    Bug#23280117: 5.7 BUG XXXXX TEST REPLACE NUMBER ROUND+GIS PRECISION DIFFERENCES
                  (CONTRIBUTION)
    
    Post push fix: Changing name of the mysqltest command from
    'replace_numberic_round' to 'replace_numeric_round'.
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>

commit 2c7b148c1d70641f5f1dfe9ff09ac5f720f448c8
Merge: 4dbf61a 5f90c53
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Apr 20 16:56:30 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 5f90c5313a98a5490b13b2d2da6670c0022e94de
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Apr 20 14:03:08 2017 +0530

    Bug #25844166 NDB_CONFIG TO PRINT CONFIG DIFFERENT FROM DEFAULT
    
    There are more than 256 configurations in cluster. So, when we like to find
    the configuration that are changed during run time it is difficult to find
    them, hence have added an option(--diff_default) to ndb_config to print
    only the configurations that are different from the default configuration
    of the node.

commit feb666b00e391ddb3a9330bf64159e7c750e0e25
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Thu Apr 20 11:11:34 2017 +0530

    Bug#23280117: 5.7 BUG XXXXX TEST REPLACE NUMBER ROUND+GIS PRECISION DIFFERENCES
                  (CONTRIBUTION)
    
    Issue:
    ------
    MTR tests written to test GIS functions fail with a result content mismatch
    on some platforms due to difference in precision. These have been corrected
    using the mysqltest function --replace_regex till now.
    This requires a complex regular expression to replace the result with a lower
    precision.
    
    Fix:
    ----
    For ease of use, a new mysqltest command 'replace_numberic_round' has been
    introduced to round off numeric values.
    The usage is as follows:
    --replace_numberic_round <precision>
    where precision is the number of digits after the decimal that the result will
    be rounded off to. The precision can be any number between 0 to 16.
    
    Patch contributed by: Daniel Black
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    Reviewed-by: Srikanth BR <srikanth.b.r@oracle.com>
    RB: 14633

commit cdd91861963186bcaa64dd0d393d85f0dd51cf1a
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 20 08:09:44 2017 +0530

    Bug #25331425: DISTINCT CLAUSE DOES NOT WORK IN
                   GROUP_CONCAT
    
    Issue:
    ------
    The problem occurs when:
    1) GROUP_CONCAT (DISTINCT ....) is used in the query.
    2) Data size greater than value of system variable:
    tmp_table_size.
    
    The result would contain values that are non-unique.
    
    Root cause:
    -----------
    An in-memory structure is used to filter out non-unique
    values. When the data size exceeds tmp_table_size, the
    overflow is written to disk as a separate file. The
    expectation here is that when all such files are merged,
    the full set of unique values can be obtained.
    
    But the Item_func_group_concat::add function is in a bit of
    hurry. Even as it is adding values to the tree, it wants to
    decide if a value is unique and write it to the result
    buffer. This works fine if the configured maximum size is
    greater than the size of the data. But since tmp_table_size
    is set to a low value, the size of the tree is smaller and
    hence requires the creation of multiple copies on disk.
    
    Item_func_group_concat currently has no mechanism to merge
    all the copies on disk and then generate the result. This
    results in duplicate values.
    
    Solution:
    ---------
    In case of the DISTINCT clause, don't write to the result
    buffer immediately. Do the merge and only then put the
    unique values in the result buffer. This has be done in
    Item_func_group_concat::val_str.
    
    Note regarding result file changes:
    -----------------------------------
    Earlier when a unique value was seen in
    Item_func_group_concat::add, it was dumped to the output.
    So result is in the order stored in SE. But with this fix,
    we wait until all the data is read and the final set of
    unique values are written to output buffer. So the data
    appears in the sorted order.

commit 86b66ec95fe227ab1dfa5d5be78dab216a33577b
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 19 16:20:42 2017 +0530

    wl 5847: ber_free not supported, removed.

commit adf405df7b9023daac1dc28cca62137d59570734
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 19 15:19:47 2017 +0530

    wl 5847: Ubuntu 16 will run 11 tests and minor fixes.

commit bb138be204dc315555ac9bc0480233e74b50b210
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 12:54:37 2017 +0530

    Rename ndbd_redo_log_reader man page to ndb_redo_log_reader

commit 4dbf61a540105c1dbeb8e995aa403d06579143e3
Merge: c4a2ca5 b8f1a1c
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 11:14:15 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit b8f1a1cb497c481b2c7c9db7773bfc755a3a384c
Merge: fa5142f 36ebda3
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 11:04:41 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 36ebda379bcffc03c9d6c19403eeec3a37bb297e
Merge: 148aaa3 3e02a52
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 11:01:15 2017 +0530

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit 3e02a529abdc4f43040b8e83fa075d8bb2280385
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 10:45:59 2017 +0530

    Rename ndbd_redo_log_reader man page to ndb_redo_log_reader

commit 4e99d4aa34dc0095d9f57269e1d720a57874de6b
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue Apr 18 14:18:50 2017 +0530

    Bug#25876807: FOR DIFFERENT VERSION (5.7 AND 5.8) GROUP, LEADER SHOULD BE ONLY FROM 5.7
    
    Updating missing @param lowest_version_end definition for
    sort_members_for_election() and removing @param lowest_version_end
    for sort_and_get_lowest_version_member_position() in gcs_event_handlers.h
    for Group Replication plugin.

commit f35db067815f0e80c2a5095385108b2c99e95e3a
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Tue Apr 18 09:52:38 2017 +0530

    Bug#25469190: MYSQLPUMP SHOULD EXCLUDE REPLICATION
                  REPOSITORY METADATA TABLES
    
    Description : Replication meta data tables such as
    mysql.slave_master_info and mysql.slave_relay_log_info
    gets backed up when MYSQLPUMP is executed.
    
    Analysis: The above mentioned replication tables should be
    excluded from backups because they are not a logical part of
    data. These tables contain replication channel meta data
    that will leave the replication meta data in an invalid
    state after the restoration of the dump.
    
    Fix: Both the tables are excluded from MYSQLPUMP.

commit d540b9de70c152baf41871ae6822bb5df07a0a58
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Tue Apr 18 09:45:22 2017 +0530

    Bug #25469161: MYSQLDUMP SHOULD EXCLUDE REPLICATION
                   REPOSITORY METADATA TABLES
    
    Description : Replication meta data tables such as
    mysql.slave_master_info and mysql.slave_relay_log_info
    gets backed up when MYSQLDUMP is executed.
    
    Analysis:- The above mentioned replication tables should be
    excluded from backups because they are not a logical part of
    data. These tables contain replication channel meta data
    that will leave the replication meta data in an invalid
    state after the restoration of the dump.
    
    Fix: Both the tables are excluded from MYSQLDUMP.

commit c0f3d4750b3af36dd98c4949120ade68ed2e7912
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon Apr 17 15:31:53 2017 +0530

    Bug#25876807: FOR DIFFERENT VERSION (5.7 AND 8.0) GROUP, LEADER SHOULD BE
                  ONLY FROM LOWER VERSION
    
    PROBLEM STATEMENT
    =================
    When a group contain members of two different versions (5.7 & 8.0), higher
    version members are put in read compatability mode and cannot write to the
    group. In single primary-mode, currently the primary member can be elected
    from the higher version members also thus making a member what should be in
    read mode writable, what can lead to failures in the lower version members.
    
    PROPOSED SOLUTIONS
    ==================
    The primary member should be elected from lower version members i.e 5.7, in
    single primary-mode. And so only the members with the lowest versions should
    participate in the election.

commit c0e71ffc464cbba48eb20154cc5fe3123becff8a
Merge: e350d6d 25afd70
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Mon Apr 17 12:07:52 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 25afd7057b6387528e73903b1521e841053de115
Merge: 0e159c3 c1d45aa
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Mon Apr 17 12:06:24 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit c1d45aa7c43e844f04f9fae0a0ad84d0c0d37926
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Mon Apr 17 12:04:14 2017 +0530

    Bug#25043674 - MYSQLACCESS SCRIPT LOADS AND EXECUTES CODE
                   FROM THE CURRENT DIRECTORY
    
    DESCRIPTION
    ===========
    When 'mysqlaccess' tool is run, it reads (and executes) the
    content of its configuration file 'mysqlaccess.conf' from
    the current directory. This is not a recommended behaviour
    as someone with ill intentions can insert malicious
    instructions into this file which could be executed
    whenever this tool is run.
    
    ANALYSIS
    ========
    The configuration file is presently looked for, in the
    following folders (in given order):
    1. Current directory
    2. SYSCONFDIR       //This gets expanded
    3. /etc/
    
    Owing to the reasons mentioned above, we should not permit
    the file to be in the current directory. Since the other
    two folders are assumed to be accessible only to authorized
    people, the config file is safe to be read from there.
    
    FIX
    ===
    Modified the script so that it looks for the config file
    now in the following two folders (in the given order):
    1. SYSCONFDIR
    2. /etc/
    
    If it's absent from above locations but present in current
    directory, an error is thrown asking the user to move the
    file to one of the above locations and retry.
    
    NOTE
    ====
    The location paths and their precedence are not documented
    for this tool. It needs to be noted as part of the
    associated documentation.

commit c4a2ca5ab5a01c51209061ff349199ece9aa4c60
Merge: 97542af fa5142f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Apr 14 19:39:54 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit fa5142f3378919cb07567f95336112355ffe6f39
Merge: 83e2830 148aaa3
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Apr 14 19:39:15 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 148aaa32c086a0f886801088b4e4796b6adafed3
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Apr 14 19:35:49 2017 +0530

    Bug #23141739 : ERROR 240 IS NOT DEFINED
    
    The error 240 is thrown when there is a mismatch between the fk
    trigger columns and the values supplied to them during the trigger
    execution. This mismatch is actually a side effect of the Bug#23068914
    due to which the distributed TC and LDM threads end up with different
    trigger ids for the same FK trigger after a restart. This base bug has
    already been fixed.
    
    This patch adds an error description for the error 240 and extends the
    MTR testcase of Bug#23068914 to cover this issue.

commit e350d6d930d9cb86d1af62115642531409b45c11
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Fri Apr 14 16:16:31 2017 +0530

    Bug #24753281: REQUEST FOR SLAVE_SKIP_ERRORS = ER_INCONSISTENT_ERROR
    
    Problem:
    --------
    Replication applier thread returns 3002, ER_INCONSISTENT_ERROR, when there's
    difference between expected error number and actual error number on slave.
    
    So when ER_INCONSISTENT_ERROR is passed as an input to slave-skip-errors,
    the replication should continue despite having different expected error and
    actual error on slave.
    
    But in current code, the slave is not able to ignore ER_INCONSISTENT_ERROR.
    
    Fix:
    ----
    Check if ER_INCONSISTENT_ERROR is passed in the list of errors to be
    skipped. If yes then do not throw error, just log this info with the mention
    of actual and expected error  as a note in the slave's error log.

commit 97542af3862dfbd83c495d1c4bed1249ffeefe2f
Merge: 9242b2b 83e2830
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Fri Apr 14 13:55:19 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 83e2830fd28e3bf12d8aea0b807b947ed78734aa
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Wed Apr 5 12:18:07 2017 +0530

    Bug #21576576: IMPROVE HEARTBEAT FAILURE REPORTING FOR SYSTEM RESTART
    
    Problem
    =======
    
    If one of the nodes fail due to missing sending heartbeats during
    system restart, all other nodes report that another node failed
    without any additional info.
    
    First, node 2 crashes because it thinks node 4 is dead due to missing
    heartbeats though it's not really dead.
    Then, after some time node 4 shuts itself down because of node 2 crash.
    
    Fix
    ===
    
    Added additional info to the failure.
    Now, the node that failed to send heartbeat along with heartbeat
    error is reported in the error log and data node log.
    
    Steps to test the fix:
    
    1) Start a 2 node cluster, where the data nodes have id 2 and 4.
    2) ndb_mgm -e "all restart -n"
    3) ndb_mgm -e "4 error 946"
    4) ndb_mgm -e "all start"
    Wait for a few minutes.
    
    The error log of node 2 will have the fixed error message.

commit 9242b2b7716769df4c3cc665bc51ff23b366e302
Merge: 0d1900c 3601e3f
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Apr 12 11:22:14 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 3601e3f92de763a23ee976f8852d2270b66545f4
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Apr 12 11:19:24 2017 +0530

    Bug #24438868 MINIMAL BINLOG FORMAT FOR UPDATE_ROW TO REDUCE UPDATE BINLOG SPACE USAGE
    
    An UPDATE_ROW binlog event contains 2 versions of the updated
    row: a Before Image which has the row before the update,
    and an After Image of the row after the update. The Before
    and After Image do not always include all the columns in the
    row. The binlog format decides which columns will be included.
    
    There is a requirement in ndbcluster to reduce the size of the
    binlog event while retaining the UPDATE_ROW format of
    BeforeImage/AfterImage. This can be done by writing only
    primary key columns from the Before Image and only modified
    columns from the After Image. However, the existing binlog
    formats do not support different sets of columns in the Before
    and After Images.
    
    The --binlog-format=MINIMAL option is not usable for ndbcluster
    because enabling the binlog format code breaks the
    --ndb-log-updated-only option in ndb replication.
    
    This patch implements 2 new ndb binlog formats for UPDATE_ROW
    where the Before Image and After Image are minimised to remove
    duplicate information.
    
    UPDATED_ONLY_USE_UPDATE_MINIMAL: log update as UPDATE_ROW, log
    only primary key columns in Before Image and only updated columns
    in After Image
    
    FULL_USE_UPDATE_MINIMAL: log update as UPDATE_ROW, log only
    primary key columns in Before Image and all non primary key
    columns in After Image
    
    This means that each column is contained only once in each event,
    bringing efficiency close to that achieved by the variants logging
    with WRITE_ROW events.
    
    The UPDATED_ONLY_USE_UPDATE_MINIMAL and FULL_USE_UPDATE_MINIMAL
    formats can be used with the conflict resolution algorithms
    NDB$EPOCH(), NDB$EPOCH2() and NDB$EPOCH_TRANS(), because these
    do not require the 'Before' values of non-primary-key-columns.
    Conflict resolution algorithms like NDB$MAX() and NDB$OLD()
    require the old values of non-PK columns, and will not work
    correctly with these new variants.

commit 0d1900ce2ee7a9839b21a0b8ef327b8c329db646
Merge: e88073f 234737f
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Apr 11 15:44:35 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5

commit 234737f99ddfe1b6e97ba9cb6073102a20f13d20
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Apr 11 15:44:11 2017 +0100

    Testcase robustness fix
    
    ndb_stop_on_error
    
    Wait for MySQLD to reconnect properly after restart before proceeding.

commit e88073fded752bbbfd6ab07b4a9c41009ebb88fe
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:26:34 2017 +0530

    Bug #21960004 (7.5+)
    
    SETTING MAX_ROWS=0 IS NOT THE SAME AS NEVER SETTING MAX_ROWS
    
    An inplace ALTER TABLE .. MAX_ROWS query intentionally updates only the
    mysqld metadata and not the NDB dictionary. And the REORGANIZE
    PARTITION query first checks the NDB dictionaries max_rows value to
    decide whether to reorganize or not. Due to this outdated value in the
    NDB dictionary, REORGANIZE is denied even if the max_rows is set back
    to 0.
    
    Also, if the table doesn't have any user defined partition balance, the
    default one is used. And when such a table's max_row is changed through
    a copy ALTER, its partition balance changes to SPECIFIC. When the
    MAX_ROWS is changed back to 0 using a inplace ALTER, in addition to the
    MAX_ROWS not being reset in NDB dictionary, the Partition Balance is
    not reset to default. Any subsequent ALTER TABLE .. REORGANIZE query
    fails as the Partition Balance of the table is still SPECIFIC. But if
    the MAX_ROWS is set to 0 using a copy ALTER, the Partition Balance is
    reset back to the default and any subsequent online REORGANIZE runs
    without any issues.
    
    This patch fixes the above issues by adding checks to deny any attempt
    to reset MAX_ROWS to 0 online. Resetting MAX_ROWS to 0 can only be done
    through a copy ALTER now. Also, the max_row values provided by MySQL is
    now used instead of the NDB dictionary value to make any decisions.

commit 260b802e7531128ed0689db6dd76846d2e4ae0b4
Merge: 4e32c7c 092639f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:25:02 2017 +0530

    Null merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 092639f99146e33a02cb1834c85103cbfec1a3f8
Merge: ae42e0f 91d4fbd
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:23:55 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 91d4fbd4781f503926ef6af446e0d2d65e108afd
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:23:37 2017 +0530

    Bug #21960004
    
    SETTING MAX_ROWS=0 IS NOT THE SAME AS NEVER SETTING MAX_ROWS
    
    An inplace ALTER TABLE .. MAX_ROWS query intentionally updates only the
    mysqld metadata and not the NDB dictionary. And the REORGANIZE
    PARTITION query first checks the NDB dictionaries max_rows value to
    decide whether to reorganize or not. Due to this outdated value in the
    NDB dictionary, REORGANIZE is denied even if the max_rows is set back
    to 0.
    
    This patch fixes this issue by using the max_row value provided by MySQL
    instead of the NDB dictionary value to make any decisions.
    
    Note : This fix is only for versions 7.3 and 7.4.
           Versions 7.5 and above have a slightly different patch.

commit 4e32c7c9d735bdcea844be282178b48518b11bdc
Merge: bee8af0 ae42e0f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:20:47 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit ae42e0f84ed20d2cf571745cecca1d0d80495f26
Merge: f619bbc a1e12de
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:19:02 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit a1e12de7f9e1c690b8ec0f9de62f91a1aa984c30
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:15:36 2017 +0530

    Bug#21960004
    
    Fixes the prepare_inplace_alter_table error handling.
    
    prepare_inplace_alter_table() doesn't handle the error return of
    prepareHashMap properly. And also the prepareHashMap function doesn't
    return the expected value when it fails at few places. This patch
    fixes them both.

commit 162b99f74e60bc8949130453c3092e819e7ade2f
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Apr 11 14:34:43 2017 +0530

    Bug #24754897 RPL_INJECTOR API FUNCTION FOR UPDATE_ROW WITH BEFORE AND AFTER COLUMN BITMAPS
    
    An UPDATE_ROW binlog event contains 2 versions of the updated
    row: a Before Image which has the row before the update,
    and an After Image of the row after the update. The Before
    and After Image do not always include all the columns in the
    row. The binlog format decides which columns will be included.
    
    There is a requirement in ndbcluster to reduce the size of the
    binlog event while retaining the UPDATE_ROW format of
    BeforeImage/AfterImage. This can be done by writing only
    primary key columns from the Before Image and only modified
    columns from the After Image. However, the existing binlog
    formats do not support different sets of columns in the Before
    and After Images.
    
    The --binlog-format=MINIMAL option is not usable for ndbcluster
    because enabling the binlog format code breaks the
    --ndb-log-updated-only option in ndb replication.
    
    This patch implements 2 new ndb binlog formats for UPDATE_ROW
    where the Before Image and After Image are minimised to remove
    duplicate information.
    
    UPDATED_ONLY_USE_UPDATE_MINIMAL: log update as UPDATE_ROW, log
    only primary key columns in Before Image and only updated columns
    in After Image
    
    FULL_USE_UPDATE_MINIMAL: log update as UPDATE_ROW, log only
    primary key columns in Before Image and all non primary key
    columns in After Image
    
    This means that each column is contained only once in each event,
    bringing efficiency close to that achieved by the variants logging
    with WRITE_ROW events.
    
    The UPDATED_ONLY_USE_UPDATE_MINIMAL and FULL_USE_UPDATE_MINIMAL
    formats can be used with the conflict resolution algorithms
    NDB$EPOCH(), NDB$EPOCH2() and NDB$EPOCH_TRANS(), because these
    do not require the 'Before' values of non-primary-key-columns.
    Conflict resolution algorithms like NDB$MAX() and NDB$OLD()
    require the old values of non-PK columns, and will not work
    correctly with these new variants.

commit bee8af06f015ea2321c560e681475504a0feb695
Merge: 7bdfa9b 4f6287b
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Apr 11 08:52:08 2017 +0200

    Merge from mysql-cluster-7.5.6-release

commit 7bdfa9bdd0ed38fb2300f4c07645df675aa239bf
Merge: 8d5f19d f619bbc
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Apr 11 11:35:23 2017 +0530

    Upmerge of the 7.2.28 build

commit f619bbcc183a8cb0d331f13a171bc2a279755875
Merge: bb64665 7b62f59
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Apr 11 11:34:01 2017 +0530

    Upmerge of the 7.2.28 build

commit 7b62f5911155bcabd833b101f8cfc4656c059a12
Merge: 79556c3 6739a76
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Apr 11 11:28:18 2017 +0530

    Upmerge of the 7.2.28 build

commit 6739a7645fd458beb8dacff4150e05ee274bece0
Merge: 8881754 91dfe8b
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Apr 11 11:23:54 2017 +0530

    Merge from mysql-cluster-7.2.28-release

commit 769803e69dea1ba50e17fee3f9384cabd0dbedca
Merge: 9662a2c 0e159c3
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Mon Apr 10 18:27:09 2017 +0200

    Upmerge of the 5.6.36 build

commit 0e159c39fd0e10cd5a9c4e1f3e383c7e56ce6a6b
Merge: 56794f7 1e7cb2a
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Mon Apr 10 18:20:39 2017 +0200

    Merge branch 'mysql-5.6.36-release' into mysql-5.6

commit 9662a2c7d70d4a861a9fcb9f6a04ad3ceb8a66c3
Merge: dea7749 c1df4fd
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Mon Apr 10 17:38:38 2017 +0200

    Merge branch 'mysql-5.7.18-release' into mysql-5.7

commit dea7749fba67f60d510146ed523f108407f945b8
Author: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
Date:   Mon Feb 20 14:20:45 2017 +0100

    Bug #25549637: QUERY WITH GROUPBY AND HAVING GETS ERROR;
    Bug #24497007: GROUPBY() AND HAVING() CLAUSES GENERATES WRONG SQL QUERY
    
    Description:
    In some cases of usage a crud.find message together with grouping
    criteria the x plugin returns unproper results.
    
    Fix:
    Generation of sql query has been improved by moving 'grouping_criteria'
    expression to the derived query.
    
    Reviewed-by: Lukasz Kotula <lukasz.kotula@oracle.com>
    RB:15532

commit 25d37dc54ec13f91f5f97984d1aed594c7d0dc68
Merge: 61b7233 56794f7
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Apr 10 16:31:11 2017 +0530

    Upmerge of the 5.5.55 build

commit 56794f79bb7982bc31f67c1356e7e3a0e205583e
Merge: 7f3f1f7 4e40dea
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Apr 10 16:30:11 2017 +0530

    Upmerge of the 5.5.55 build

commit 4e40dea46890d8274eeca7f6162441e59c2ff458
Merge: 189d28b 3a2a53a
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Apr 10 16:25:53 2017 +0530

    Merge branch 'mysql-5.5.55-release' into mysql-5.5

commit 8d5f19df1cd1a6391b75ff4effe265e71a2b6098
Merge: 4ef3f37 bb64665
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Mon Apr 10 16:17:09 2017 +0530

    Upmerge of the 7.3.17 build

commit bb6466555f47268be5c2935ebaaa68d2d1eb2b17
Merge: 38d16c4 79556c3
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Mon Apr 10 16:15:02 2017 +0530

    Upmerge of the 7.3.17 build

commit 4ef3f37390cd0d0489a06bd3e7a5d8c405b7b263
Merge: fab62c1 38d16c4
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Apr 10 16:00:40 2017 +0530

    Upmerge of the 7.4.15 build

commit 38d16c488a602922ec6cc7ecad3463b78cc6a432
Merge: f6f359f e2fefae
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Apr 10 15:58:18 2017 +0530

    Merge from mysql-cluster-7.4.15-release

commit 79556c3e54b538d82abc17a4faa7cec28e397618
Merge: 4d97baf 23ac7b2
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Mon Apr 10 14:32:54 2017 +0530

    Merge from mysql-cluster-7.3.17-release

commit 61b7233a161c175b9fe55c3cb5e653968c9a4b1b
Merge: 6fc2131 7f3f1f7
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon Apr 10 14:30:57 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 7f3f1f702d1335309596a063028456979a0aabfa
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon Apr 10 12:45:01 2017 +0530

    Bug #24323288: MAIN.MYSQLBINLOG_DEBUG FAILS WITH A LEAKSANITIZER ERROR
    
    Issue:
    ------
    On a system with AddressSanitizer support that includes Leaksanitizer,
    the test mysqlbinlog_debug fails.test when compiled with -DWITH_ASAN and
    -DCMAKE_BUILD_TYPE=Debug option.
    
    Cause:
    ------
    When the events are read from remote server using mysqlbinlog utility,
    in two scenarios the memory clean up is not done. Those scenarios are.
    
    1) When fake Rotate_event occur. Places where
       Rotate_event->when.tv_sec == 0
    2) When we are using raw mode with mysqlbinlog, then for those cases
       where the log file could not be created or write had some issues.
    
    Solution for 5.6 and 5.7:
    -------------------------
    5.6:
    ===
    Scenario (1) will be fixed by backport of Bug#21697461 from mysql-5.7,
    which is to create a method that will handle the memory clean up and
    call this method from all the suspected places.
    
    Scenario (2) will be an extension to Bug#21697461, for cases discussed
    above in the *cause* section.
    5.7:
    ===
    As we already have Bug#21697461 in mysql-5.7, scenario (1) need not be
    addressed separately.
    For scenario (2) same fix as above, extension of Bug#21697461.
    
    Solution for trunk:
    -------------------
    Implemented a different solution(removed Bug#21697461) to fix scenario
    (1) and (2).
    
    - A new solution is implemented to make the area around the
    - Manage the clean up of temp_buf through m_free_temp_buf_in_destructor
      variable added in Log_event class.
    - Created a new RAII class Destroy_log_event_guard to handle memory of
      Log_event object created in the dump_remote_log_entries method.
    - Extended mysqlbinlog_debug.test to test the changes done.
    
    A new solution is implemented thinking that any modification done to
    the area around the code causing memory leaks at present have lesser number
    of memory issues in future.

commit 6fc213173274a4819013f2b3d2e20b97eb2bea80
Merge: b0c7c57 33831f1
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Mon Apr 10 08:54:55 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 33831f1d048e49489a5c138098ac4855ee3a1833
Merge: 20d1b85 189d28b
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Mon Apr 10 08:52:39 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 189d28b303e90ca25f10d10d5f75966c93e3e8b2
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Mon Apr 10 08:51:28 2017 +0530

    BUG#25250768: WRITING ON A READ_ONLY=ON SERVER WITHOUT SUPER
                  PRIVILEGE.
    
    Post push fix for fixing test failure in embedded server mode.

commit b0c7c5709ef0ed01c12ba74ace7c187c530086aa
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Thu Mar 30 10:52:53 2017 +0100

    BUG#25503458 - SOME CLASS B PRIVATE ADDRESS IS NOT PERMITTED AUTOMATICALLY
    
    Description:
    ---------------
    According to
    https://dev.mysql.com/doc/refman/5.7/en/group-replication-options.html#sysvar_
    group_replication_ip_whitelist, when group_replication_ip_whitelist = AUTOMATIC,
    private network is permitted automatically.
    
    Below 172.21.134.27/23 is class C private IP address, but 172.21.134.0 is not
    permitted. How To Repeat? Set class C private address other than 172.16.X.X
    
    Analysis:
    ----------------
    Looking at the code in get_ipv4_local_private_addresses in gcs_xcom_networking.cc
    we notice that local class B addresses are not being tested in a range but only
    for 172.16.X.X
    
    Suggested Fix:
    ----------------
    Refactored get_ipv4_local_private_addresses to make numeric and range comparisons.

commit d0c79b3b53fe5794633d5dbf6cdc3a754f0e176c
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Apr 7 17:02:38 2017 +0530

    WL 5847# Fixed NDB build issue.

commit 158b2d97fb2831e9ed815e8357802fe0755d80e0
Merge: f5870e1 20d1b85
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri Apr 7 13:51:07 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 20d1b85778bb9bcb10968d2f461c74ef7e883560
Merge: 4be1ad8 98549f1
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri Apr 7 13:47:36 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 98549f14482c068c43b7fda2f69c0885795da36e
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Mon Jan 9 20:09:57 2017 +0530

    BUG#25250768: WRITING ON A READ_ONLY=ON SERVER WITHOUT SUPER
                  PRIVILEGE.
    
    Backport from mysql-5.7 to mysql-5.5 and mysql-5.6.
    
    BUG#13969578: TEMPORARY TABLE IN A DATABASE ON A READ-ONLY
                      INSTANCE CAN BE OVERWRITTEN
    
    Analysis:
    ========
    
    Creation or modification of a persistent table by a non-super user
    is NOT ALLOWED in read_only mode. Only TEMPORARY tables are allowed
    to be created or modified in read_only mode. But the creation of
    a persistent table was being allowed when a temporary table of
    the same name existed.
    
    The routine which denies updating a non-temporary table in a
    read_only mode does not handle the case of creation of a regular
    table when a temporary table of the same exists.
    
    Fix:
    ===
    Handled the condition where an attempt is made to create a persistent
    table having the same name as that of the temporary table. Hence
    the creation of a persistent table by a non-super user when a
    temporary table of the same exists is denied under read_only mode.

commit fab62c1e52469953fd5823d7a634a9b693000c66
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Apr 6 11:13:37 2017 -0700

    Add missing GPL to three files under jones-ndb

commit c1db2246e64cbfc10ba509bc94d60acfa1326ef3
Merge: b4afa60 f6f359f
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 17:15:38 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5

commit f5870e1c28c81fb6f85f04422791f84be9eaf20c
Merge: 3100442 e99d2b7
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 21:41:37 2017 +0530

    Merge branch 'mysql-5.7-wl5847' into mysql-5.7

commit e99d2b7485511c1f7c1248813c8d0442e1d8d099
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 21:39:50 2017 +0530

    skipping.

commit f6f359f053afd0d6cd75ca29fe470f80a42aa51e
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 17:06:39 2017 +0100

    Bug #25799506   NDB : LOCKING TO A CPUSET USES A LOT OF CPU
    
    SparseBitMask has a default max size of 2^32-2.
    The code in my_the_config.cpp loops over this full range probing
    for set bits.
    
    That wastes a lot of cpu.
    
    This patch modifies it to only look at the bits which are set
    in the SparseBitmask.

commit b4afa60c17d72195286e63cb05ea1bb1612ca90e
Merge: 9b4555d b5f5d12
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 16:46:06 2017 +0100

    Merge ../mysql-5.6-cluster-7.4 into mysql-5.7-cluster-7.5
    
    Null merge, except (c)

commit b5f5d1273cd457e498a25e4acc25ecd036b6fa5a
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 16:43:22 2017 +0100

    Bug #25830247   NDB : CPUSET LOCKING DOES NOT REUSE CPUSET STRUCTURES
    
    There is code spread across NdbLockCpuUtil.c and NdbThread.c for managing a set of cpuset arrays.  The idea is that a minimal set of unique cpusets will be maintained.  Cpusets can be reused by different threads, with reference counting used to avoid leaks.
    
    However :
     - The code to reuse a cpuset does not work as the cpuset content is not updated when a cpuset is created, so the search cannot work
     - The code to release a cpuset does not work as the cpuset id of a thread is not read before it is nulled, leaking the cpuset.
    
    Probably these bugs are not too problematic for static cpuset assignments, but they cause problems when the number of unique cpusets is high, or if cpuset locking is changed at runtime.

commit 22f5a9e00b3331b4f36f24c5e9b709b4535e56ca
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 18:02:57 2017 +0530

    extra logs.

commit 310044285aa244ed6d1414e7beb0604f1906fb94
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 6 17:50:57 2017 +0530

    Bug #25361251: INCORRECT BEHAVIOR WITH INSERT ON DUPLICATE
                   KEY IN SP
    
    Issue 1:
    --------
    The VALUES part of the ON DUPLICATE KEY UPDATE can refer to
    the column list of an INSERT statement. When a BLOB value
    is used in such a clause as part of an INSERT statement in
    stored procedure, this can result in incorrect behavior.
    
    BLOB values require some special handling because of
    problems like the one mentioned in Bug#13901905. This is
    done using the "insert_update_values_map" member of LEX.
    Field_blob values are added to this map during
    Item_insert_value::fix_fields. But the cleaning up takes
    place at the end of the statement in lex_end.
    
    This works fine for conventional execution statements. But
    for statements in the body of an SP, lex_end is called only
    once per statement. This is irrespective of whether the
    statement is executed in a loop. This can result in
    incorrect behavior because "insert_update_values_map" needs
    to be cleaned up after statement execute.
    
    
    Solution 1:
    ------------
    The solution is to make sure that lex->clear_values_map is
    called at the end of statement execution.
    
    
    Issue 2 (from Bug #24538207):
    -----------------------------
    The problem here is similar to the one mentioned above. The
    INSERT is a prepared statement. Each PREPARE also creates a
    new "insert_update_values_map" for handling the BLOB values.
    Only lex_end cleans up here too.
    
    This results in the same problem as above.
    
    Solution 2:
    ------------
    The "EXECUTE ..." part will be fixed by Solution 1. But for
    the "PREPARE ..." statements, lex->clear_values_map will be
    added at the end of "Prepared_statement::prepare".

commit 9b4555ddeccaceb0ee0b10f95f77c19df6335aaa
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 12:38:14 2017 +0100

    Testcase robustness fix
    
    ndb_stop_on_error
    
    Wait for MySQLD to reconnect properly after restart before proceeding.

commit c349f6732818d0d72c83ae645245e0705708cb27
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 15:38:20 2017 +0530

    final

commit 18c98671f44c050e262ebb4bdacbe3327c49f8a9
Merge: 860aafc 21e1b0d
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Apr 6 09:05:03 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 21e1b0d0a997f02cf9b5e834a76bb2afb624b3f2
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 29 17:42:58 2017 +0200

    Bug#25800933 BROKEN CONCURRENCY CONTROL WHEN UPDATING 'M_NODE_TOTAL_SEND_BUFFER_SIZE'
    
    The node internal scheduler (mt.cpp) collect statistics about its own
    progress and its outstanding work. One such statistics being collected is
    the amount of outstanding 'send-bytes' which is being collected in
    send_buffer::m_node_total_send_buffer_size. This may later be
    used by the send thread scheduler, which use amount of outstanding sends
    as a metric to self tune its send performance vs latency.
    
    In order to reduce lock contention on the internal send buffers, they
    have been split in two thr_send_buffer parts: the 'm_buffer' and
    'm_sending' buffers - each of them are protected by their own mutex.
    'm_node_total_send_buffer_size' was maintained to reflect the total size
    in these two send buffers.
    
    It turns out that we were not consistent regarding which mutex we
    used in updating 'm_node_total_send_buffer_size':
    
     - In link_thread_send_buffers() we locked send_buffer::m_buffer_lock
     - In bytes_sent() we locked send_buffer::m_send_lock
     - In reset_send_buffer() we locked both.
    
    Thus there is effectively no concurrency protection of
    'm_node_total_send_buffer_size'.
    
    This patch replace m_node_total_send_buffer_size with the two
    seperate 'm_buffered_size' and 'm_sending_size' which keeps
    track of respective size of the two buffers. These new counters
    are updated under protection of the two different mutexes
    protecting each of the send buffers.
    
    mt_get_send_buffer_bytes() will add these together to get the
    total size. This method is already documented as doing an
    unprotected 'get' of the buffer seize, which should be OK as
    we can do with a buffer size being slightly off. As the
    concurrency controll is now fixed , the updates will be
    correct, and the value will not 'drift' over time.

commit 860aafcf96aeb39c678d0573db7654481df628dd
Merge: 16a5351 f564c7d
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Wed Apr 5 15:55:45 2017 +0530

    Bug#11766869 NDB_CONFIG TO DUMP COMPLETE CURRENT CONFIGURATION
    
    NULL Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit f564c7d8cea2abc3c24866a4de0345c328a55a05
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Wed Apr 5 15:52:31 2017 +0530

    Bug#11766869 NDB_CONFIG TO DUMP COMPLETE CURRENT CONFIGURATION
    
    Changed the native_strcasecmp to strcasecmp to avoid the compilation
    failure.

commit 16a5351d4d197cfc46ac1224c6b313a48121e92a
Merge: 92b8ba7 02912af
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Wed Apr 5 14:28:16 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 02912af72f1da5a6d56b2066ac66092f8171a204
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Wed Apr 5 14:02:48 2017 +0530

    Bug#11766869 NDB_CONFIG TO DUMP COMPLETE CURRENT CONFIGURATION
    
    We need to use query command to get value of current configurations from
    the ndb_config tool. There are almost 250 different configuration and
    if suppose user require all the configuration parameter, it
    is very difficult for the user to call them one by one with query, hence there
    arise the need for a new option type "--query-all" which dump all the configuration .
    
    Have added a new option in ndb_config to dump the entire configuration.

commit 42073c98c122f09c6a639c0f64c10dcf1bfc380f
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Apr 4 11:26:38 2017 +0530

    sample push.

commit d495a0952d467ed7a42d639775a65aaccd83aa81
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Tue Apr 4 06:54:00 2017 +0100

    BUG#25681977 GROUP REPLICATION NODE ON OPC FAILED TO REJOIN AFTER REBOOT
    
    PROBLEM
    -------
    For many maintenance operations, VMs on OPC need to be restarted, but
    after a VM restart, the node fails to rejoin the GR group. The problem
    is that the private IP is changed after a VM restart and the remaining
    nodes have a cached reference to the previous private IP.
    
    When a node reconnects, a node's description called "server" is reused
    if there is any. The server contains a reference to the addrinfo
    structure and the current implementation does not check whether the
    stored information is still valid or not.
    
    FIX
    ---
    To fix this issue, a new addrinfo structure is always fetched while
    adding a new node or connecting to it.

commit 5f07d496288d7846cb343363f8aa7f507b316f5c
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Apr 4 10:17:11 2017 +0530

    merge and some test.

commit f08b441ed2f7480ee28d8241f062ff0708c24ae8
Merge: 2cb66f6 a59bf83
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Apr 4 10:15:07 2017 +0530

    Merge branch '5.7' into mysql-5.7-wl5847

commit 92b8ba725463a53fbfb81d64c241c2a93cbe8130
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Apr 3 19:58:22 2017 -0700

    Fix for wl#9819 mtr testing of embedded server.

commit 2cb66f6512046951c6f12b6ab5b3cbb41849a2c8
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Apr 3 21:38:34 2017 +0530

    New tests added.

commit a59bf83cc9b1ab2646184b9295a4dbafa77d05d9
Merge: 9c2175e 4be1ad8
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon Apr 3 12:35:58 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 4be1ad8103a6b58324146e5039944d3f3d93bfc2
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Mar 30 09:13:05 2017 +0200

    Bug#25811814	DEBIAN/UBUNTU PACKAGES SHOULD BUILD WITH --FAIL-MISSING
    
    * Changed --list-missing to --fail-missing
    * Added exclusions for files that should not be included
    * Added missing manpages to packages

commit 9c2175e5cb22ea7ce24e133b765f1bafb4ba5743
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 31 12:39:59 2017 +0200

    Bug#24352163: CANNOT COMPILE WITH CLANG ON MAC OS X 10.10.5
    
    Fix "cannot take the address of an rvalue of type" compilation
    error when compiling with -std=c++11.
    
    Partial backport from trunk of:
    ea56f33fc55183b88a8f5f6fd9e1abbf1176c9f6
    
    Also similar to contribution from Davi Arnaut.

commit d81f9679d2124275323b1a0380a8b863ef403ed1
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 31 13:58:34 2017 -0700

    wl#9819 fix one more mtr test for "mysqld" vs. "mysqld-debug"

commit 572d96859309c1f88b46870862076753b326dad8
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 31 12:14:59 2017 -0700

    wl#9819 fixes for ndb.ndbinfo test failures in pushbuild
     Treat both / and \ as path separators on all platforms
     Ignore "-debug" and ".exe" in process_name

commit 37b5a1491e9a98c6bbf46818505b08d7ae8ee691
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Fri Mar 31 17:13:46 2017 +0530

    Bug#24748639:CAN'T SET SLAVE_SKIP_ERRORS > 3000
    
    Problem:
    MySQL 5.7 has introduced error numbers > 3000 but "slave_skip_errors"
    doesn't allow error numbers which is greater than
    3000(error numbers between 2000 and 2999 are for client side errors)
    
    Fix:
    Modify the MAX_SLAVE_ERROR variable, and add check for the client
    side error while checking for errors to be skipped.

commit 366e8bb163bd855ff63b8426f3da2a9982186c4e
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 30 13:55:22 2017 -0700

    wl#9819: Remove use of g_eventLogger for debugging message in Qmgr

commit eb1e8c63b30ce8b19f0aa3a9deef9eb337ecd8ea
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 30 10:47:15 2017 -0700

    wl#9819 ha_ndbcluster_connection.cc
      Use report_port and report_host for ProcessInfo if set in server.
      Add further comment on problem of mysqld.cc calling ha_init() before set_ports.
      The intent is to improve this code before DMR 3.

commit 1b8ce91cc49ef209d49a8d59ba47ed185e11a969
Author: John David Duncan <john.duncan@oracle.com>
Date:   Sun Mar 19 10:14:25 2017 -0700

    Bug#25675643 Fix duplicate system sections in NDB config

commit 26d57dc2fe3890e6c74f3f9f438c6e98cfef9e8c
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 16 15:28:29 2017 -0700

    wl#10321 jtie mapping for Ndb_cluster_connection::get_system_name()

commit 1e9270bbd6c40d4da23def60d83cc29e2f1b7320
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 23 11:51:23 2017 -0700

    wl#9819 bugfix: ndb_basename was implemented incorrectly for Windows

commit 52fb78e96f0ed34ad3580833be4fd1a4703c23e1
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 24 13:37:37 2017 -0700

    wl#9819 bugfix: Use safe_noflush_sendSignal() from ClusterMgr.
    This adds new safe_sendSignal() methods that take a LinearSectionPtr[].

commit e647398d9dc137898ec4fae20d22e86d944a79e1
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Mar 14 10:56:58 2017 -0700

    wl#9819 Version 2.  Patch #10: set service URI from memcached

commit c3ae4ec62d8e379fca0b8bf5a686d952e77e43e3
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 12:36:19 2017 -0800

    wl#9819 Version 2.  Patch #9: mtr test

commit 48dc6faed3755b9cdf2eb34e0b0262ab3e644044
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 9 16:26:32 2017 -0800

    wl#9819 Version 2.  Patch #8: map set_service_uri() for ndbjtie

commit 98fe0f02ef8f722a5eb9c45f531b2341fee96d15
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 12:09:28 2017 -0800

    wl#9819 Version 2.  Patch #7: mysqld

commit cd9a3f3c427ff1495d71ae20ac7663dd2d95c0d0
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 12:07:37 2017 -0800

    wl#9819 Version 2.  Patch #6: Ndb_cluster_connection

commit 5c852fdcc7c010591d8ce71bc4f510ae561ce230
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 12:02:36 2017 -0800

    wl#9819 Version 2.  Patch #5: Qmgr

commit ccc284e1ed04776da32988fdef6adb1cb5b9e744
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 12:02:08 2017 -0800

    wl#9819 Version 2.  Patch #4: ClusterMgr

commit 93d8b58e9ab20530941c69b7b08cdea5a58c976b
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 12:00:15 2017 -0800

    wl#9819 Version 2.  Patch #3: ProcessInfo, OwnProcessInfo, and SocketServer

commit 3e5544f59384a16c23a11fcf0f5de3b514126e32
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 10 08:34:09 2017 -0800

    wl#9819 Version 2.  Patch #2: New definition of ProcessInfoRep signal.

commit f68b71df3b3e1ada0cffbf4b4a74a864369687a3
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 9 09:57:06 2017 -0800

    wl#9819 Version 2.  Patch #1: ndbinfo processes table definition

commit ae9f43338895d697e35e6e357ec6ea42d6f89845
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Feb 17 10:05:17 2017 -0800

    wl#10321 new mysqld status variable Ndb_system_name

commit 749529ef4623042c0ff1f784110cde678f900a85
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Mar 16 12:07:53 2017 -0700

    wl#10147 changes after code review

commit 9a22358f7cc5123cadb47aaacc3526549c63ca63
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Jan 10 16:36:19 2017 -0800

    wl#10147 ndbinfo.config_nodes: mtr test case

commit ce92091539d3e0e31ea16fb646a4fc00ed4d36ba
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Mar 6 15:56:22 2017 -0800

    wl#10147 ndbinfo.config_nodes: implementation of new ndbinfo table

commit 5c1974a89c49d895b5e0ea7c3405b3451a9cfc1e
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Jan 3 10:08:44 2017 -0800

    wl#9819 patch #14: mtr test for ndbinfo.processes

commit e136aa9a64bcf88170d63511a01c1022203eb50a
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 20 12:22:11 2016 -0800

    wl#9819 patch #13: Map Ndb_cluster_connection::set_application_address() to Java for ndbjtie

commit 8d0edd513bf21e837effe4d3c51e147a03ae4855
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 20 11:53:34 2016 -0800

    wl#9819 patch #12: mysqld uses set_application_address()

commit 0724306fbdfba5a30f1bf0d28bf0ca5955395390
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 20 11:51:06 2016 -0800

    wl#9819 patch #11: New method set_application_address() on Ndb_cluster_connection

commit 57cfb54a48385e61003c846925fe4356ef4a24fa
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 20 09:28:10 2016 -0800

    wl#9819 patch #10: New function ndb_mgm_get_name() in mgm api

commit c6dfed1c2ab1135241580334d4c1d5a27d3fa07e
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 13 09:50:32 2016 -0800

    wl#9819 patch #9: Send ProcessInfoRep from ClusterMgr

commit b1eb54f60ea09a67f6af4f840be5cebe6e3a03a4
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Dec 12 13:48:27 2016 -0800

    wl#9819 patch #8: Handle ProcessInfoRep signal and ndbinfo.processes scan in Qmgr

commit 02330e6b9ab3fa597f86624dbb84be2c23ffc774
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Dec 12 13:00:56 2016 -0800

    wl#9819 patch #7: Define new signal ProcessInfoRep
     Define GSN
     Define signal data structure
     Define debugger print function

commit 1e16ae772dba3839331dc616fae7eb58259b8b41
Author: John David Duncan <john.duncan@oracle.com>
Date:   Sat Dec 10 10:31:52 2016 -0800

    wl#9819 patch #6: Memory allocation in Qmgr
    In initData(), a new array receivedProcessInfo is dynamically allocated
    to hold one ProcessInfo struct for each configured API and MGM node.

commit 2416ba5acc156bc13ead07775df59d24371583ca
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 6 16:03:21 2016 -0800

    wl#9819 patch #5: Initialize OwnProcessInfo in MGM and NDB nodes

commit b20a34aaa76e8633d216b8f2a9fbc323648c55cd
Author: John David Duncan <john.duncan@oracle.com>
Date:   Wed Dec 7 15:40:13 2016 -0800

    wl#9819 patch #4: Define ndbinfo.processes view and ndb$processes base table

commit 0a86a572f411ca4d0bacc7905263973b3127f55d
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 6 08:31:12 2016 -0800

    wl#9819 patch #3: Declare & implement ProcessInfo and OwnProcessInfo

commit a72fac4aab35f147259a4cd2bca85bb8b218fef6
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Dec 6 15:31:45 2016 -0800

    wl#9819 patch #2 : Misc. housekeeping required for worklog
     (A) move ndb_basename into utility library
     (B) new portability function ndb_getsockname()

commit f79e5687db3b28a637b77a5b3c33c2d4ed67e357
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Dec 2 13:19:16 2016 -0800

    wl#9819 patch #1 : NDBD angel process reports its process id to kernel process

commit 39d8611eed5e42cafa0f974b786aca14b459cb24
Merge: d3643d8 ee048d8
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Thu Mar 30 15:18:31 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit ee048d8a0881ed88186317c80e73a257df386787
Merge: f29e57b 9b8907b
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Thu Mar 30 15:13:04 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit d3643d80a0d72ccabb3a7415d6adc82bd0c11322
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Thu Mar 30 16:42:28 2017 +0530

    Bug 25364178 - XA PREPARE INCONSISTENT WITH XTRABACKUP
    
    Issue: XA PREPARE, XA ROLLBACK and XA COMMIT for transaction
    from a disconnected session does not take global commit lock
    and modifies binlog and innodb redo log even when server is
    in FTWRL. This could lead to inconsistent backups when
    backup tools assume the server is in read-only state during
    FTWRL mode.
    
    Fix: Take global commit lock during these operations. Failure
    to acquire lock during XA PREPARE will result in transaction
    rollback. Failure to acquire lock during XA COMMIT and XA
    ROLLBACK will return an error without changing transaction state.

commit 56d0979dce4970121d9a2e62a16476a4729bb5a2
Merge: b2f4cc9 f29e57b
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Thu Mar 30 11:50:04 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit f29e57b928abcb20fbde50855ea2053ff937cd13
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Thu Mar 30 10:39:24 2017 +0100

    BUG#18949364 I_BINLOG.BINLOG_MYSQLBINLOG_FILE_WRITE FAILS: COULD NOT
                 CONSTRUCT LOCAL FILENAME
    
    Problem
    -------
    
    mysqlbinlog client program is using default temporary directory for
    constructing temporary local files.
    
    Fix
    ---
    
    Added a mysqlbinlog client program option into MTR configuration factory
    to use the test case temporary directory for constructing temporary
    local files.

commit b2f4cc906b80efee03ccf60e2a16a89ae65a6c44
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Fri Mar 17 14:17:59 2017 +0530

    Bug#25349924 MTR: FIXES AND ENHANCEMENTS TO THE --XML-REPORT OPTION
    
    Issues
    ------
    The XML report generated by MTR when the --xml-report option is used has
    the below problems :-
    - It does not report any test which has failed in one of the retries
      but has passed on the final attempt as a failure i.e., it is
      reported like a successful test making usage of the option with
      --retry > 1 ambiguous
    - It does not distinguish between disabled and skipped tests
    - The xml reports are generated in the source directory 'mysql-test'
      even for out-of-source builds
    - Testcase tags lack information about combinations.
    - There can be multiple <testsuite tags> for a single suite scattered
      accross the report such that each tag has a bunch of tests belonging
      to a suite.
    - The <failure> tag does not include any information regarding failed tests
    
    Changes
    -------
    The patch does the following :-
    - Reports tests failing on any retry attempt with the <failure> tag
    - Adds statistics and fields for skipped tests and disabled tests separately
    - Creates xml report in build directory if no absolute path is given for
      out-of-source builds
    - Adds a field named variation in the <testcase> tag in case it is a
      combination run
    - Aggregate results of all tests belonging to a suite within a single
      <testsuite> tag
    - Generates and reports information regarding failures with a brief reason
      in an attribute named 'message' and embeds other details within the tag
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    RB: 15016

commit 9d019116da5da0822706f41fce67eaa19cf2d3ca
Merge: 050c2bc ac7c0a7
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed Mar 29 18:06:26 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit ac7c0a7223fc53dd9c8d219048e8d455d4ebaec8
Merge: c3d917f 4d97baf
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed Mar 29 18:05:07 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 4d97bafcfff16c0da9fedd5c8e87a704af6f362a
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed Mar 29 18:02:10 2017 +0200

    Fixing testSystemRestart StaleNodeTakeoverDuringSR to ignore error
    711 and increase the createTable wait timeout.

commit 050c2bccd5ef00485aa87d21d35d6f8fdf46ea49
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Mar 29 16:53:46 2017 +0530

    Bug#25749218 - PACKAGE(MYSQL-CLUSTER-COMMUNITY-TEST-7.6.1-1.EL7.X86_64.RPM )MISSING DEPENDENCY
    
    Fixed cluster test packages dependencies, cluster test packages requires both data-node and managment-server
    packages

commit 78f086caec09cb144e4a1d58a3ee1fb44bce1589
Merge: 87532ad 34e2f12
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Mar 29 12:06:18 2017 +0200

    NULL Merge branch 'mysql-5.6' into mysql-5.7

commit 34e2f12510c6deb639bab35bd80ac4c57d03e1c4
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Mar 29 11:14:16 2017 +0200

    Bug#25795538 SEGFAULT-T FAILING UNDER RECENT ADDRESSSANITIZER
    
    Patch for 5.6 only.
    
    Disable Segfault test for ASAN builds.
    
    Fix mismatching new/delete for Fake_TABLE objects.
    
    Backport patch for:
    Bug#21255860: ASAN: MEMORY LEAK IN QUEUE UNIT TEST

commit 9ece9b99481ffcd7d1aafd133cbba86c0a2a698e
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Tue Mar 28 15:11:42 2017 -0700

    WL#9545 Clusterj automatic reconnect on cluster failure
    post-push fix for pb2 failures

commit 87532ad368b158b1f8c4000922db05d7b6668567
Author: Marek Szymczak <marek.szymczak@oracle.com>
Date:   Tue Mar 28 18:32:15 2017 +0200

    Bug#24360663 AUDIT LOG FILTER JSON PARSER DOES NOT CHECK WHETHER JSON ELEMENTS ARE EXPECTED
    
    Problem:
    ========
    Audit log filter is defined as JSON. JSON parsing algorithm searches for
    certain elements in the JSON tree. Remaining elements are simply discarded.
    This potentially creates a problem for a user. Filter is accepted as correct,
    but in fact the filter does not work as intended.
    
    Following filter may look correct for the user, but event element is not
    expected at this point. Without any notification the user may not know,
    whether the filter is correct or not.
    
    '{ "filter": { "event": { "name": "status" } } }'
    
    This should generate error message that "event" is not expected at this level:
    
    ERROR: 'event' element not expected here [$.filter.event].
    
    Fix:
    ====
    When a certain JSON element is not expected at certain point, error is generated:
    
    '{ "filter": { "class": { "name": "general",'
    '                         "event": { "name": "status",'
    '                                    "log": { "and": [ { "field": { "name": "general_command.str",'
    '                                                                   "value": "aaa" } } ],'
    '                                             "log2": false } } } } }'
    
    ERROR: 'log2' element not expected here [$.filter.class.event.log.log2].
    
    Although JSON "comment" element is not used by the parser, it does not generate error:
    
    '{ "filter": { "comment": "This is my super filter" } }'
    
    Revieved-by:
    ============
    Harin Vadodaria <harin.vadodaria@oracle.com>
    Ramil Kalimullin <ramil.kalimullin@oracle.com>

commit e2fefae05446471a71b7d8ee5c7e34371cd8d87d
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Tue Mar 28 14:13:30 2017 +0200

    Add man page for ndb_print_frag_file for rpm
    
    (cherry picked from commit c3d917f47f8b265b5a639245a498aa650187dac7)

commit 8e689be65d89ceb1e15a7b4cc21b21a9a561000d
Merge: 678debf c3d917f
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Tue Mar 28 14:15:56 2017 +0200

    Empty upmerge of ndb_print_frag_file man page

commit c3d917f47f8b265b5a639245a498aa650187dac7
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Tue Mar 28 14:13:30 2017 +0200

    Add man page for ndb_print_frag_file for rpm

commit 9b8907b708dbd2643dbf587bfa8f4e6fb13a5a0d
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue Mar 28 13:22:32 2017 +0200

    BUG#25719975 SHEBANG HARD CODED AS /USR/BIN/PERL IN SCRIPTS, BREAKS ON FREEBSD
    
    Use cmake variable to adjust shebang to platform.

commit 678debf7216291f09b1fdb8fb3199ffe3a3e0031
Merge: 4b44bb9 a55172c
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Tue Mar 28 15:49:37 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit a55172c73e1ecaae4b8153b81674f37dbfd94be9
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Fri Feb 17 16:13:09 2017 +0530

    Bug #20607730 CLUSTER FAILED TO SHUTDOWN GRACEFULLY....
    
    c_waitGCPMasterList is an array pool and its hard coded to 10. When ever
    graceful shutdown is initiated master node gets WAIT_GCP_REQ signal equal
    to the no of nodes configured. So, as it is hard coded to 10 when we have
    a cluster with more than 10 nodes, due to lack of pool resource we always
    get "Forced node shutdown completed. Caused by error 2305: 'Node lost
    connection to other nodes and cannot form a un-partitioned cluster, please
    investigate if there are error(s) on other node(s)(Arbitration error).
    Temporary error, restart node'."
    
    So, to avoid this have changed the pool size to the max no of nodes that
    can be configured in the cluster.

commit 91dfe8b806b9d7558d8cfa8000ded41982d070d5
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:41:31 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY
    
    While writing comments if database object names has a new
    line character, then next line is considered a command, rather
    than a comment.
    This patch fixes the way comments are constructed in mysqldump.
    
    (cherry picked from commit 1099f9d17b1c697c2760f86556f5bae7d202b444)

commit 835bfd824dde6174b8006a654193ce601584f136
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Mon Mar 13 17:01:59 2017 +0400

    Backport of "SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL" second part

commit 932315fd72e93026ffb35b196d8d93acdd7b9f07
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Tue Mar 28 10:16:59 2017 +0200

    Backport of "SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL"

commit 29784ed8785d12531c5e05adaa2508dccf74e9d5
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Mar 8 14:38:15 2017 +0530

    Bug#22195588 - Post push fix
    
    This patch makes changes to the ndb_info.inc include file in the MTR
    test case to make it windows compatible.
    
    (cherry picked from commit bf311918b844afb2ca2b579d36891b990152bc6f)

commit 3f34b4ca77bf1f0b0d0d028942569ac247f41b9a
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 13:17:44 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITARY QUERY.
    
    Post push fix.
    
    (cherry picked from commit de4b2f7f7c541b9e97df9a4c7b261065f1de7f6d)

commit 3c53542b7c75e47109d6d496e2c2542840a5f426
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:44:04 2017 +0100

    Merge branch 'mysql-5.5' into mysql-5.6
    
    (cherry picked from commit 7396facd28cc8fb6de7817c4e5978993b7267b6b)

commit 942cbe0497c6ebc849a72bb2e10247caec458c47
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:28:57 2017 +0100

    Bug#25714674: MYSQL SERVER REMOTE PREAUTH PROBLEM THROUGH INTEGER OVERFLOW
    
    Description: A missing length check for length-encoded string causes
                 problem in preauthorization stage.
    
    (cherry picked from commit bb1af908fce21b0d8708cdccde628e3d5b1d86ec)

commit 55388bd71831561668279bdae85ce3bd4b0cccec
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 18:09:51 2017 +0100

    Revert for the fix for the 'Bug#23593091: MYSQL SERVER MSI - REGISTRY ITEMS LEFT BEHIND WHEN > 1 SERVER VERSION INSTALLED'
    The Server Installer needs some changes to accomodate for this fix so it got postponed for the next release.
    
    (cherry picked from commit 17811bc0759ef241d46b2ef1e6f51bc1c4f5695d)

commit 61f091bacf87708f57d0821f2836d59f7fed619f
Author: Sreedhar Sreedhargadda <sreedhar.sreedhargadda@oracle.com>
Date:   Tue Mar 28 07:33:07 2017 +0200

    Applying patch supplied by Ramil for Bug#25575605 SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL

commit ad9822288a279f0da23306a80e5854f9631e0bb6
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 13:38:24 2017 +0100

    Bug#25643023	SERVER ABORTING WHILE INITIALIZING DATABASE WITH INIT SCRIPTS
    
    If the datadir is deleted and the service restarted, the service
    script will reinitialize the database, then try to set auth_socket
    plugin for the now passwordless root account. The latter should not
    happen, because a) It's a major change in an old GA, and b) The sql
    simply fails, since it's run in bootstrap mode.
    
    (cherry picked from commit c93e3dfcca4a59c4228c5bce1eaac7b83f2c31db)

commit be79dbc17e0409cdc3010911a27ef3f91a1cbb61
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Mar 1 13:30:58 2017 +0100

    Bug#25648545	PACKAGING CONFLICTS WITH MARIADB PACKAGES ON DEBIAN/UBUNTU
    
    Added conflicts:
    * mysql-packagesource-client conflicts with mariadb client
    * mysql-packagesource-server conflicts with mariadb server
    * mysql-packagesource-test conflicts with mariadb test package
    
    (cherry picked from commit 7b50590b2512eb063f2d6c012aca7e4b52d17558)

commit 23ac7b2a385ffbebefc21c1964fd60c69e9781dc
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 13:17:44 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITARY QUERY.
    
    Post push fix.

commit 4588df5249c7e67aa41a33506e8a1112eae232a3
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:44:04 2017 +0100

    Merge branch 'mysql-5.5' into mysql-5.6
    
    (cherry picked from commit 7396facd28cc8fb6de7817c4e5978993b7267b6b)

commit 2567f9692e7daf1e57f427447d6ded61b71631f5
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:28:57 2017 +0100

    Bug#25714674: MYSQL SERVER REMOTE PREAUTH PROBLEM THROUGH INTEGER OVERFLOW
    
    Description: A missing length check for length-encoded string causes
                 problem in preauthorization stage.

commit f4fbee03f477cc37633cde6a7c21232820675fd2
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 18:09:51 2017 +0100

    Revert for the fix for the 'Bug#23593091: MYSQL SERVER MSI - REGISTRY ITEMS LEFT BEHIND WHEN > 1 SERVER VERSION INSTALLED'
    The Server Installer needs some changes to accomodate for this fix so it got postponed for the next release.

commit d1d0811f74732f9e7d1d5cb6e51875d22238f967
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 02:05:24 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    MYSQL_OPT_SSL_MODE option introduced.
    It is set in case of --ssl-mode=REQUIRED and permits only SSL connection.

commit 06963bfe695e0d0c3bf88260b847b5a39222b884
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 13:38:24 2017 +0100

    Bug#25643023	SERVER ABORTING WHILE INITIALIZING DATABASE WITH INIT SCRIPTS
    
    If the datadir is deleted and the service restarted, the service
    script will reinitialize the database, then try to set auth_socket
    plugin for the now passwordless root account. The latter should not
    happen, because a) It's a major change in an old GA, and b) The sql
    simply fails, since it's run in bootstrap mode.

commit 5ee80004d28313422fac8d6512d204004c53cc2a
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Mar 1 13:30:58 2017 +0100

    Bug#25648545	PACKAGING CONFLICTS WITH MARIADB PACKAGES ON DEBIAN/UBUNTU
    
    Added conflicts:
    * mysql-packagesource-client conflicts with mariadb client
    * mysql-packagesource-server conflicts with mariadb server
    * mysql-packagesource-test conflicts with mariadb test package

commit 4b44bb98e8624118e48810cb86a9897e291be25e
Merge: 098f9c4 8ec30bb
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Mar 27 09:11:09 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 8ec30bb59258f1c8e4331ae5622bcbcbe21b145c
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Mar 27 09:08:39 2017 +0200

    Bug#25777337 TC BLOCK DOES NOT HANDLE 'DROPPED' LONG 'TRANSID_AI SIGNALS
    
    Handling of TRANSID_AI signals 'dropped' due to
    'out of long signal message buffers' were not implemented
    in Dbtc::execSIGNAL_DROPPED_REP(). Such signals could (only)
    come from unique index operations.
    
    This patch introduce handling of such dropped TRANSID_AI
    signals by aborting the TcIndexOperation.

commit 275023ee4b1d7145825c597c9d4db1cdfaa078b1
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Mar 27 08:54:57 2017 +0530

    test not needed for el5

commit 5eb6e342b43b8237558919f89d7157abcd6f56d8
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Sun Mar 26 21:27:11 2017 +0530

    test in all.

commit 098f9c447a789895602cda61f3c0c9ae88cc4542
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 24 15:02:17 2017 -0700

    Disable ReconnectTest

commit 6b3f303c67c800b611c746f0b5769ba0fdee49b1
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 24 11:55:40 2017 -0700

    WL#9545 Clusterj automatic reconnect on cluster failure
    post-push fix for pb2 failures
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/store/ClusterConnection.java
      add method closing() to separate marking dbs as closing versus force close
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/ClusterConnectionImpl.java
      implement closing() to mark dbs as closing
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/SessionFactoryImpl.java
      use closing() method to mark all cluster connections then close them
    
    clusterj-test/src/main/java/testsuite/clusterj/ReconnectTest.java
      change misbehaving thread to catch any exception and terminate instead of looping

commit c8cebd283e839d41ba706746ed9e666509091d1a
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 21:26:48 2017 +0530

    aa

commit 483f4cc63161dd7a938db3f2e340db1b0368d72b
Merge: 260ff54 d7a9fbe
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 19:58:19 2017 +0530

    Merge branch 'mysql-5.7' into mysql-5.7-wl5847

commit d7a9fbe453f54bf6418a9523dd7aa3d72fd66687
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Tue Mar 21 13:04:59 2017 +0100

    WL#10520: Backport WL#9837 to MySQL 5.7.19
    
    This worklog is created for the backport of the WL#9837: "Group Replication:
    Transaction savepoint support" to MySQL 5.7.19
    
    This worklog goal is to improve Group Replication by adding support to
    SAVEPOINT.
    
    The SAVEPOINT statement sets a named transaction savepoint with a name of
    identifier. If the current transaction has a savepoint with the same name, the
    old savepoint is deleted and a new one is set.
    
    The ROLLBACK TO identifier command reverts the state of the transaction back to
    what was when executed the command SAVEPOINT identifier.
    
    The RELEASE SAVEPOINT statement removes the named savepoint from the set of
    savepoints of the current transaction. No commit or rollback occurs. It returns
    an error if the savepoint does not exist.

commit 260ff547395d33af4b8d4acfaa66e6fe02bf2c10
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 14:55:45 2017 +0530

    Added some test change.

commit 22c609f0b8b37f666fe7c03e9b378882447e65a5
Merge: 176b261 0f887f9
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 14:14:38 2017 +0530

    Merge branch 'mysql-5.7' into mysql-5.7-wl5847

commit 176b2612ee4e8b24de86634eeef239cec378d213
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 14:09:58 2017 +0530

    log level.

commit 7aa168cd5319f3a67fa535c36aefbb81fb2daf10
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Fri Mar 24 12:18:52 2017 +0530

    BUG#25365223 ERRORLOG UPDATED WITH NOTES INFORMATION WHEN A REF
    FKEY ISN'T FOUND IN GRSETUP
    
    Issue
    ====
    The issue is that the info message that InnoDB prints when a table
    is created with a reference which doesn't exist fills up the log as
    it's printed for every insert when foreign_key_checks is disabled.
    
    Fix
    ===
    The fix is to display the message only if foreign_key_checks is
    enabled.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>

commit 38fb460fb1f0e8cb8a846a0cfb9bd4b2349b88ef
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 09:31:00 2017 +0530

    reverted the loogging

commit b2f2dbb919ebf204d9c4fe92b8ed2d2e3e421e74
Merge: 88aafc5 7ea4f5c
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 23 22:47:01 2017 +0100

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5 (bug#25152165)

commit 7ea4f5cdee0b17d8cb1898372311010b5a49ee35
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Mar 22 21:56:30 2017 +0100

    Bug#25152165 DATA NODES RESTART AFTER ALTER ONLINE TABLE REORGANIZE PARTITION
    
    Never send keydata in KEYINFO20 to SUMA.
    
    Make Suma ignore sections for KEYINFO20.

commit 14bdff6a237267311de8c09b215bcc6c12775ed0
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Mar 22 21:48:07 2017 +0100

    Bug#25152165 DATA NODES RESTART AFTER ALTER ONLINE TABLE REORGANIZE PARTITION
    
    Test case demonstrating bug.
    
    Tables with primary key longer than ~80 bytes can not reorganize.

commit 0f887f9fbc34c35f7eec370db2416643d473d627
Merge: aa8b481 52e0df8
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Mar 23 22:59:33 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 52e0df89e83266637dcfee0eaa3b72910bbcf491
Merge: 398e8a8 e7bd56c
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Mar 23 22:58:19 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit e7bd56cccb3ab90afb29d139f433d8398ad126a0
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Mar 23 22:57:25 2017 +0530

    Bug#24465081	FAILURE IN ATOMIC_* TESTS DUE TO CLEAN-UP ISSUES
    IN BINLOG_DISKFUL
    
    Problem: binlog_diskfull is not cleaned properly which causes problems
    to other tests.
    
    Analysis: simulate_no_free_space_error simulation point is inside
    my_write function which is called during SET GLOBAL.DEBUG statement.
    When the simulation point is active, SET GLOBAL.DEBUG will fail
    before it sets SESSION.DEBUG value. This uncleaned SESSION.DEBUG
    is causing problems to other tests.
    
    Fix: Instead of GLOBAL.DEBUG, test script will use SESSION.DEBUG directly
    now and it will be cleaned at the end of the test.
    Also, it is observed that search pattern logic is missing in the test
    which verifies that DROP TABLE does produce the expected errors. Hence
    adding them along with this patch.

commit c891dcd07b5e9a131b566d2efcd37aab13272179
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Mar 23 18:32:11 2017 +0530

    test

commit aa8b481ee68c10c5377036b19c730c3c767aec1f
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Mar 23 07:44:49 2017 +0530

    Bug#25674926 VIEW CHANGE LOG EVENTS GENERATE NEW GTIDS
    
    Problem: When there is replication (async) between
             two groups, group nodes are confused when it
             receives view_change_log_event that is generated
             on the other group. This event is making round
             trips between these two groups in case if
             the async replication is circular replication.
    
    Analysis: GR plugin pipeline considers that
              View_change_log_events are only injected on
              the pipeline by the plugin itself when a view
              change happens. On that moment, the pipeline
              wrap the View_change_log_event on a GTID and
              queue it on group_replication_applier channel.
              View_change_log_events that go through
              group_replication_applier and group_replication_recovery
              channels are not injected back on the plugin applier,
              that would cause a infinite loop. But Other channels
              are injecting the GTID, BEGIN, VIEW, COMMIT into the
              plugin pipeline. Then pipeline wraps again the VIEW
              on a new GTID and queues it on group_replication_applier
              channel. This is creating a infinite loop between two
              groups.
    
    Fix: When a GTID, BEGIN, VIEW, COMMIT is injected on the pipeline,
        this VIEW must not originate a new GTID2, BEGIN, VIEW, COMMIT on
        group_replication_applier channel.

commit 82fbed68c97b6b50876b4ca28cafa7887c9ac657
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Mar 22 19:04:06 2017 +0530

    AD test..

commit 88aafc503d40281940f4d74436f86bd4cbc5fcb4
Merge: f0e06cc d933980
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Mar 22 18:13:09 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit d9339809a47ba8a249a46cf5af799a34f79c1260
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Mar 22 18:12:27 2017 +0530

    Bug #25476474 SIGNAL 11 AT HA_NDBCLUSTER::EXEC_BULK_UPDATE
    
    A bulk update is executed by reading records and executing a
    transaction on the set of records. The transaction is started
    while reading the set of records. In this case, the transaction
    start fails. The transaction execution code then attempts to
    dereference the NULL transaction pointer, which causes a segfault.
    
    The mysql update function does not exit on fatal errors. The
    approach is to save all errors, continue execution and evaluate
    success/failure after the execution completes. With this approach,
    it is not guaranteed that the necessary init work is successfully
    completed before calling the bulk update executor. So it is
    necessary to have more error-handling in the ndb bulk update
    executor.
    
    Fixed by adding some error-handling in the ndb bulk update
    executor.

commit 81f25f2cc1a742c5f1a98ff9692bc16ca30d1a3e
Merge: 3c55332 398e8a8
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Mar 22 16:40:41 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 398e8a8ebc9fe776cc372ef14dd0dc38a86d3883
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Mar 22 16:39:35 2017 +0530

    Bug #25573565   TABLE REBUILD USES EXCESSIVE MEMORY
    
    Problem:
    =======
       Offsets allocates memory from row_heap even for deleted row
    traversal during table rebuild.
    
    Solution:
    =========
      Empty the row_heap even for deleted record. So that
    offsets don't allocate memory everytime.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 15694

commit f0e06cc2bc975ca5be084be9c307803e1da53cd4
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 22 09:19:31 2017 +0100

    Bug#25654833 MYSQL CLUSTER 7.5.5 REPLICATION SLAVE SQL THREAD HANGS WITH CREATE TABLE
    
    This is 'best effort' patch for the above problem, which seems to be a regression introduced in 7.5.5. Based on bug description, we *assume* this to be caused bu the 'part 3 of 4' push of patch for Bug#25042101 'SPLIT BINLOG INJECTOR_MUTEX IN TWO, DO REQUIRED CLEANUP':
    
    .........
      Remove thread_yield() in binlog injector code previously put there
      as a temp stopgap in the commit below. This used to be required
      as the injector thread held the injector_mutex > 99% of the time when
      waiting for pollEvents(). That blocked client threads either wanting to
      access the data shared from the injector thread, or needing the injector_mutex
      while waiting for injector_cond to be signaled
    
      This should not be required anymore, as:
    
      1) injector_mutex has been splitt in two separate mutexes.
      2) We changed init of the injector_event_mutex from a 'FAST' to a 'SLOW'
         mutex which has better 'farness' properties in the scheduler
    .........
    
    The theory is that using the more 'fair' SLOW-mutex variant is not as 'fair' as assumed to be on all OS/VM variants. Thus the 'yields' may be unsafe to remove.
    
    Bug has been hard to reproduce:
    
     - It has been 'randomly' reproduced using Oracle Linux 7 on top
       of 'Virtualbox'
     - It has than gone away for a couple of days.
     - It has *not* been reporoduced with this patch.
    
    So it should be reasonable to expect that reintroducing the 'thread_yields' should solve the problem.
    
    We cant say for sure though....

commit 3c55332fe331b3689ac724345c8a80a5853d204a
Merge: 66a717d decdffe
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 22 11:24:11 2017 +0530

    Null Merge branch 'mysql-5.6' into mysql-5.7

commit decdffeeb558ad84888b5cd2bafb8e7ccd504a33
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 22 11:21:00 2017 +0530

    Bug #25501659: HANDLE_FATAL_SIGNAL (SIG=11) IN GET_ADDON_FIELDS
    
    ISSUE: Uninitialized Field member of Table structure was getting
           dereferenced in function get_addon_fields() resulting in
           server exiting abnormally.
    
    FIX: Passed pointer to Table structure to get_addon_fields() to
         get read_set from it directly.

commit 66a717d579e3575181b006b294f779a6279006c5
Merge: 77febd3 b04443f
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Mar 22 09:36:31 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit b04443f1abe21fbbcc67a563198435b44a04f08b
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Mar 22 09:36:17 2017 +0530

    Bug#24609402 MYSQLBINLOG --RAW DOES NOT GET ALL LATEST EVENTS
    
    Fixing post push pb2 failure

commit 77febd376d3a73fc2e83b9adfe62ac4a840b5319
Merge: 03a4c9c b33900b
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Mar 21 15:14:26 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit b33900bdedbed8433c780a0fddb7c68e1672fe80
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Mar 21 15:10:48 2017 +0530

    Bug#24609402 MYSQLBINLOG --RAW DOES NOT GET ALL LATEST EVENTS
    
    Problem: When mysqlbinlog is used with --raw option, output file
             is not getting flushed till the process is completed.
             With --stop-never option (mysqlbinlog process never completes),
             output file will never contain any events.
    
    Analysis & Fix: --read-from-remote-server is a mysqlbinlog tool option that
                    allows the users to read the binlog from a MySQL server
                    rather than reading a local file.
                    The read binary log event will be processed and
                    written to output files in text format. In this case,
                    the output file is getting flushed after every event in
                    copy_event_cache_to_file_and_reinit() function.
    
                    By default, mysqlbinlog reads binary log files and writes
                    events in text format. But the --raw option tells
                    mysqlbinlog to write the events into output file directly
                    in their original binary format. In this case, the output
                    file is not getting flushed until mysqlbinlog downloads all
                    the content. This will be more problematic if --stop-never
                    option is used (which is used for "live" binlog backup) as
                    the mysqlbinlog process will never stop, the output file
                    will never get flushed.
    
    Fix: Flush the output file after every event is written to it
         (just like how we flush when --raw is not specified).

commit 03a4c9cabe477d26965ba12d20b1d89ef4f81f2d
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Mon Mar 20 13:00:58 2017 +0530

    Bug#25479538  ASSERT:SIZE == SPACE->SIZE DURING BUF_READ_AHEAD_RANDOM
    
    The assert as added by the fix for BUG#25053705  is blocking the ntest. So removing
    the assert for now until I come up with a fix for the bug.
    
    Reviewed-by : Satya Bodapati <satya.bodapati@oracle.com>

commit e2f0fa9950d919db54684521b703f775ed3b792c
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Tue Mar 21 10:31:43 2017 +0530

    Bug #25189192	ERRORS WHEN RESTARTING MYSQL AFTER RENAME TABLE.
    
    PROBLEM
    
    While renaming table innodb doesn't update the InnoDB Dictionary table
    INNODB_SYS_DATAFILES incase there is change in database while doing
    rename table. Hence on a restart the server log shows error that it
    couldnt find table with old path before rename which has actually been
    renamed. So the errors would only vanish if we update the system
    tablespace
    
    FIX
    
    Update the innodb dictionary table with new path in the case there is
    not a change in the table but the database holding the table as well.
    
    Reviewed-by: Jimmy Yang<Jimmy.Yang@oracle.com>
    RB: 15751

commit 5ceeb3277ba3a64eb380a62bd303585a368e514b
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Tue Mar 14 14:23:37 2017 +0100

    Bug#22671846: SENDING LARGE MESSAGES CAN TRIGGER NODE EXIT FROM GROUP
    
    Second attempt.
    
    Problem:
    
    When large messages are sent, the XCOM thread becomes busy for a long
    time sending it. As this happens, mainly as the number of member
    nodes grows, the alive task can trigger a group view change and GCS
    can trigger a node exit due to the 5 second timeout period.
    
    Solution:
    
    For large messages, the select will mark the socket as readable many
    times for a single message, since TCP sends a large message as
    multiple fragments anyway. Each time this happens, the
    acceptor_learner task is activated and will call read_msg/read_bytes.
    Until now we have updated only when a complete messages has been
    received, which may take a long time. By updating the server timestamp
    inside the loop in read_bytes/buffered_read_bytes, the timestamp will
    be updated often enough that nodes are not marked as being
    unavailable.

commit d353d67970280ad8fd44f41aa5412014267c0d39
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon Mar 20 08:58:24 2017 +0100

    Packaging: Added new manpage
    
    A new manpage was added for ndb_print_frag_file. Added to deb and rpm packaging

commit 29edf3f8fffa4dd3a6cfdb42aa769d7108e9c7a5
Merge: 31f0274 28dbfd0
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon Mar 20 08:34:57 2017 +0530

    Null Merge branch 'mysql-5.6' into mysql-5.7

commit 28dbfd0b41769acc1dd4dcf7d8bd2430b1c64d19
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon Mar 20 08:32:27 2017 +0530

    Bug #25175249       ASSERTION: (TEMPL->IS_VIRTUAL && !FIELD)
                    || (FIELD && FIELD->PREFIX_LEN ? FIELD
    
    - Post push fix to avoid compilation failure in pb2

commit c9f9603c46bd8d6749628a6fd29f07802fb8f893
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Sat Mar 18 18:43:15 2017 -0700

    Clusterj use unique ids for AutoCloseableTest

commit c1df4fd3c54174ff13b1d5de10e2506e868b28b4
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:59:02 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7
    
    (cherry picked from commit f1e6ace429bb95b417e46fa7e5104790dbca5412)

commit 9f6875173eeccc6d40963df7a96808609ce919ec
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:32:22 2017 +0100

    Bug#25714674: MYSQL SERVER REMOTE PREAUTH PROBLEM THROUGH INTEGER OVERFLOW
    
    Description: A missing length check for length-encoded string causes
                 problem in preauthorization stage.

commit aeea2571b5bdfc8b69779abe22641a1375e1b421
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:30:24 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7
    
    (cherry picked from commit dbe8c69488c1d7d156d27d02935c1d6e4a2adc18)

commit 1e7cb2a9af423dae8db534e323a69333cec7779d
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 13:17:44 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITARY QUERY.
    
    Post push fix.
    
    (cherry picked from commit de4b2f7f7c541b9e97df9a4c7b261065f1de7f6d)

commit 239c72507f93bcb9a46cc51f3f607bbfe8ef216c
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:44:04 2017 +0100

    Merge branch 'mysql-5.5' into mysql-5.6
    
    (cherry picked from commit 7396facd28cc8fb6de7817c4e5978993b7267b6b)

commit 2f9d9af828689be9b80edb5d8a0f1027aa95082b
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:28:57 2017 +0100

    Bug#25714674: MYSQL SERVER REMOTE PREAUTH PROBLEM THROUGH INTEGER OVERFLOW
    
    Description: A missing length check for length-encoded string causes
                 problem in preauthorization stage.
    
    (cherry picked from commit bb1af908fce21b0d8708cdccde628e3d5b1d86ec)

commit d364ec0bcaa1886ef4cae58fddff66d4308c09fa
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 22:33:41 2017 -0700

    Disable clusterj ReconnectTest

commit 3a2a53ac8dd3c7febdbf38ed7b8c90204e620137
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:41:31 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY
    
    While writing comments if database object names has a new
    line character, then next line is considered a command, rather
    than a comment.
    This patch fixes the way comments are constructed in mysqldump.
    
    (cherry picked from commit 1099f9d17b1c697c2760f86556f5bae7d202b444)

commit e2ba9271a2b9525dba2f6d8e8195ef907e71ba70
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 19:59:17 2017 -0700

    Disable clusterj ReconnectTest

commit 3d0a6e5103a371acaee3140bc10cc5d2a316aad1
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 18:08:41 2017 -0700

    WL#9545 Clusterj automatic reconnect on cluster failure
    
    clusterj-api/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-api/src/main/java/com/mysql/clusterj/Constants.java
      add property com.mysql.clusterj.connection.reconnect.timeout
      add default for com.mysql.clusterj.connection.reconnect.timeout
    
    clusterj-api/src/main/java/com/mysql/clusterj/Session.java
      make Session extend AutoCloseable for easier application error handling
    
    clusterj-api/src/main/java/com/mysql/clusterj/SessionFactory.java
      add method reconnect(int) to allow application to reconnect
      add method reconnect() to allow automatic reconnect
      add method currentState() to report state: Open, Closed, Reconnecting
    
    clusterj-core/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/SessionFactoryImpl.java
      implement new methods from SessionFactory
      add internal flag to getSession to allow reconnect to get a session when not open
      implement reconnect thread to asynchronously reconnect to cluster
        while reconnecting, getSession will throw a ClusterJUserException
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/SessionImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/query/QueryImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/store/Db.java
      add method assertNotClosed(String)
    
    clusterj-core/src/main/resources/com/mysql/clusterj/core/Bundle.properties
      add new messages for reconnection
    
    clusterj-test/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-test/src/main/java/testsuite/clusterj/AutoCloseableTest.java
      new test case for Session AutoCloseable semantics
    
    clusterj-test/src/main/java/testsuite/clusterj/ReconnectTest.java
      new test case for application-initiated reconnect
    
    clusterj-tie/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/ClusterConnectionImpl.java
      add a wait for Ndb objects to close after marking them closing
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/ClusterTransactionImpl.java
      use new assertNotClosed method
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/DbImpl.java
      implement new assertNotClosed method
      allow closing an ndb object even if a transaction is open
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/DbImplForNdbRecord.java
      implement new assertNotClosed method
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/NdbRecordImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/NdbRecordScanOperationImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/NdbRecordScanResultDataImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-tie/src/main/resources/com/mysql/clusterj/tie/Bundle.properties
      add new messages
    clusterj-tie/src/test/resources/clusterj.properties
      add new default property connect timeout for running tests
    
    clusterj-tie/src/test/java/testsuite/clusterj/tie/AutoCloseableTest.java
      new test case for AutoCloseable
    
    clusterj-tie/src/test/java/testsuite/clusterj/tie/ReconnectTest.java
      new test case for application reconnect
    
    clusterj-unit/pom.xml.in
      change Java version from 1.5 to 1.7
    
    storage/ndb/config/type_JAVA.cmake
      change Java version from 1.5 to 1.7

commit 897a2ede8489133f71cb1d3f14966f6c1e79bd0a
Merge: 4cacfb7 fd86928
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Mar 17 15:10:55 2017 +0100

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit fd86928389a7c2360e9b84a44883e88cb3407461
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Mar 17 15:02:48 2017 +0100

    Bug #25702850 TOO LARGE RESULT SIZE REPORTED FROM TUP-BLOCK TO LQH
    
    The pseudo_read instruction FLUSH_AI attrInfo is used to
    produce two TRANSID_AI result rows from the same row: One
    going to the SPJ block with keys for fuether lookups, and the
    other to the API containing the result row. The total length
    of both of these rows were reported in the TUPKEYCONF signal
    from TUP -> LQH. This could cause LQH to prematurely terminate
    scan batches as it believed that the total number of
    ScanBatch 'bytes' was about to be exhausted.
    
    This patch change this such that only the result row going to the
    API is reported as part of the 'read_length' being reported.

commit 2a79df23fe534b55f48a51a218797556f5dbe222
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 17 18:47:48 2017 +0530

    Fix build issues, forest etc.

commit 31f02740dade323c98bfce5602c91f52f1cdf616
Merge: e4e0569 de4b2f7
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 13:26:40 2017 +0100

    Null merge from mysql-5.6

commit de4b2f7f7c541b9e97df9a4c7b261065f1de7f6d
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 13:17:44 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITARY QUERY.
    
    Post push fix.

commit e4e05691fb7941528ee3b2927a4ea6fff23d8888
Merge: f1e6ace 9d97026
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 12:11:11 2017 +0100

    Null-merge from 5.6"

commit 9d970268634ecdb2764c18508e20b87159a045e7
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 12:07:52 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY
    
    Post push fix. Recording main.mysqldump result file.

commit 4cacfb778f67bbe6b69c4d08c940e52ffd0470cb
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 16 15:00:09 2017 +0100

    Bug #25738510: CLUSTERJ FAILS AFTER SWITCH TO ORACLE DEVELOPER STUDIO
    ON SOLARIS PLATFORMS
    
    Explicitly link libndbclient.so with C++ libraries on Solaris.
    
    CMAKE_CXX_LINK_FLAGS will contain '-lstdc++ -lgcc_s -lCrunG3 -lc'
    if needed.

commit f1e6ace429bb95b417e46fa7e5104790dbca5412
Merge: bcc8548 7396fac
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:59:02 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 7396facd28cc8fb6de7817c4e5978993b7267b6b
Merge: 31c698e 1099f9d
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:44:04 2017 +0100

    Merge branch 'mysql-5.5' into mysql-5.6

commit 1099f9d17b1c697c2760f86556f5bae7d202b444
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 08:41:31 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY
    
    While writing comments if database object names has a new
    line character, then next line is considered a command, rather
    than a comment.
    This patch fixes the way comments are constructed in mysqldump.

commit bcc854833591367b1c3b7e08143442cd58521df4
Merge: 5b14c8e 31c698e
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Mar 17 11:25:14 2017 +0530

    Null Merge branch 'mysql-5.6' into mysql-5.7

commit 31c698e24feb8391f2b020e9b33b3bd7496b57df
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Mar 17 11:24:25 2017 +0530

    Bug #25175249	ASSERTION: (TEMPL->IS_VIRTUAL && !FIELD)
    		|| (FIELD && FIELD->PREFIX_LEN ? FIELD
    
    - Backport the patch to mysql-5.6
    
    Reviewed-by: Jimmy Yang<jimmy.yang@oracle.com>

commit 5b14c8ee20595e2b8aa8cc331b14bd23a87215df
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri Apr 29 13:44:13 2016 +0100

    BUG#23203678 CHANGING MASTER_DELAY AFTER STOP SLAVE RESULTS IN LOSS OF EVENTS
    
    Problem
    -------
    
    The slave server is losing events not yet applied when
    MASTER_AUTO_POSITION=0, both replication threads are stopped and the
    applier delay is changed using CHANGE MASTER TO MASTER_DELAY.
    
    Analysis
    --------
    
    WL#6120 introduced the possibility of issuing CHANGE MASTER TO commands
    without having both replications threads started.
    
    Issuing CHANGE MASTER TO RELAY_LOG_FILE/RELAY_LOG_POS/MASTER_DELAY is
    possible with only the SQL thread stopped.
    
    When both thread are stopped and a CHANGE MASTER TO MASTER_DELAY is
    being issued, the slave is purging the relay log. In this case, as it is
    possible that the SQL thread was not in sync with the I/O thread, the
    SQL thread positions should be copied to the I/O thread. The I/O thread
    will then start replicating from where the SQL thread stopped, but this
    (the copy of the positions) is not happening.
    
    Fix
    ---
    
    Fixed the behavior of the MASTER_DELAY option.

commit 6a7668b1f27df41c5e36cf244b7735b0e932963c
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Thu Mar 16 10:08:12 2017 +0100

    Bug#25726723 - REMOVE UNNECESSARY REPORTING OF EVENT BUFFER STATUS
    
    This patch :
    - Corrects the calculation of free percent of event buffer to base on the configured eventbuffer_max_alloc size instead of total_alloc size.
    
    - When ndb_eventbuffer_free_percent is configured but not eventbuffer_max_alloc (defaulting to 0 meaning unlimited), Event Buffer Status message in cluster log with report_reason=LOW/ENOUGH_FREE_EVENTBUFFER will NOT be written out.
    
    - When ndb_report_thresh_binlog_epoch_slip is configured,  Event Buffer Status message in cluster log with report_reason=BUFFERED_EPOCHS_OVER_THRESHOLD will be written out every 10 sec instead of 1, when slip > threshold.

commit 1432af93388b5c8aea0c85fb148b8d16a1d6a5d9
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Mar 15 23:36:07 2017 +0100

    Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
    MEMCACHED BUILD PROBLEMS
    
    Make RPATH and RUNPATH remain when installing ndb_engine.so
    
    Unused path to libraries pointing into source directories made CMake add
    RPATH and RUNPATH during build and triggered RPATH_REMOVE on install.

commit 18b373a75391807d765f99a9b07191975403cd09
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue Feb 21 10:08:25 2017 +0000

    BUG#25587390 RPL.RPL_XA_SURVIVE_DISCONNECT_LSU_OFF TEST FAILING ON
                 DAILY-5.7 ON PB2
    
    The test case is failing by chance, when the random seeds generate
    values equal to zero for two test case variables.
    
    The fix ensures that the variables will never be zero.

commit a9edb5227c816bc80de64259d847556fa630db07
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Mar 9 15:21:19 2017 +0530

    Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
    MEMCACHED BUILD PROBLEMS
    
    Replace the -lCrun flag in the linking command for ndb_engine.so.
    No explicit reference to libCrun is required

commit 52b30b144ccabc25aa30d62b66f5d86f1b2530cf
Merge: 579637d 0888195
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Wed Mar 15 17:01:00 2017 +0000

    Merge branch 'mysql-5.6' into mysql-5.7

commit 08881958ea173db18684da9faa2b4322f1f56ba2
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue Mar 14 11:04:46 2017 +0000

    BUG#25717761 I_RPL.RPL_STRESS_FLUSH_ROTATE_RELAY_LOG SPORADIC ERROR
                 REPORTED WITH MTS
    
    The i_rpl.rpl_stress_flush_rotate_relay_log test case is failing
    sporadically when executed with MTS because of a non-suppressed error
    message: Slave SQL for channel '': ... The slave coordinator and worker
    threads are stopped, possibly leaving data in inconsistent state.
    
    The error is happening because there is a "STOP SLAVE" in the test case
    that is not waiting for the MTS applier to by in sync with the relay log
    to stop.
    
    The provided fix refactored the test case to sync the MTS applier and
    also removed unneeded STOP/START of the slave threads.

commit 579637daba48c372fe6210f33e410fcb4293acfe
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:32:22 2017 +0100

    Bug#25714674: MYSQL SERVER REMOTE PREAUTH PROBLEM THROUGH INTEGER OVERFLOW
    
    Description: A missing length check for length-encoded string causes
                 problem in preauthorization stage.

commit dbe8c69488c1d7d156d27d02935c1d6e4a2adc18
Merge: 0970bf1 bb1af90
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:30:24 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit bb1af908fce21b0d8708cdccde628e3d5b1d86ec
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:28:57 2017 +0100

    Bug#25714674: MYSQL SERVER REMOTE PREAUTH PROBLEM THROUGH INTEGER OVERFLOW
    
    Description: A missing length check for length-encoded string causes
                 problem in preauthorization stage.

commit 0970bf1c34b628d1fc45fab5b6debe2fad2f8c92
Merge: 1ba5907 bb012df
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 15 16:53:51 2017 +0530

    Null Merge branch 'mysql-5.6' into mysql-5.7

commit bb012dffd6149eb9d2bfdb74f9033626ee7e1277
Merge: 17811bc 06c46fb
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 15 16:52:51 2017 +0530

    Null Merge branch 'mysql-5.5' into mysql-5.6

commit 06c46fb0ca4a59136b7fa332d4b52f94155c8b83
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 15 16:45:21 2017 +0530

    Bug #25447551: HANDLE_FATAL_SIGNAL (SIG=11) IN
                   FT_BOOLEAN_CHECK_SYNTAX_STRING
    
    ISSUE: my_isalnum macro used for checking if character is
           alphanumeric dereferences uninitialized pointer
           in default character set structure resulting in
           server exiting abnormally.
    
    FIX: Used standard isalnum function instead of macro my_isalnum.

commit 07dc66331eac15e130fade7cc0fe0db77d4217b5
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Mon Mar 13 17:01:59 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    Changed MYSQL_OPT_SSL_MODE to be the same as in 5.6 (ABI compatibility).
    
    (cherry picked from commit 47bb4eb5df1629b5d5e30aebfa9d7a6d74388a5d)

commit 1ba590721f6ffbbcbf8f173cb1e9122f98bc3f9f
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Mar 14 05:18:32 2017 +0100

    Revert "Bug#22671846: SENDING LARGE MESSAGES CAN TRIGGER NODE EXIT FROM GROUP"

commit f064d9f95a95cf20a810e5aca5192f90ff167a7d
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Mon Mar 13 19:51:45 2017 +0100

    Fixed compile error introduce by fix for Bug#22671846.

commit 546b06299aba8d75b521eb7f7421aa10a756a99b
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 19:02:52 2017 +0100

    Revert for the fix for the 'Bug#23593091: MYSQL SERVER MSI - REGISTRY ITEMS LEFT BEHIND WHEN > 1 SERVER VERSION INSTALLED'
    The Server Installer needs some changes to accomodate for this fix so it got postponed for the next release.

commit c3455a9ba5bbd80ae879c01fc4faad432d341f67
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 18:54:10 2017 +0100

    Revert for the fix for the 'Bug#23593091: MYSQL SERVER MSI - REGISTRY ITEMS LEFT BEHIND WHEN > 1 SERVER VERSION INSTALLED'
    The Server Installer needs some changes to accomodate for this fix so it got postponed for the next release.

commit 09b50ab8c41db000561d92809e48755b907c149b
Merge: 67475cc 17811bc
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 18:16:48 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 67475cc3b109f7f16ee9f65cd8ba26d288a0458a
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Tue Mar 7 18:42:21 2017 +0100

    Bug#22671846: SENDING LARGE MESSAGES CAN TRIGGER NODE EXIT FROM GROUP
    
    Problem:
    
    When large messages are sent, the XCOM thread becomes busy for a long
    time sending it. As this happens, mainly as the number of member
    nodes grows, the alive task can trigger a group view change and GCS
    can trigger a node exit due to the 5 second timeout period.
    
    Solution:
    
    For large messages, the select will mark the socket as readable many
    times for a single message, since TCP sends a large message as
    multiple fragments anyway. Each time this happens, the
    acceptor_learner task is activated and will call read_msg/read_bytes.
    Until now we have updated only when a complete messages has been
    received, which may take a long time. By updating the server timestamp
    inside the loop in read_bytes/buffered_read_bytes, the timestamp will
    be updated often enough that nodes are not marked as being
    unavailable.

commit 17811bc0759ef241d46b2ef1e6f51bc1c4f5695d
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 18:09:51 2017 +0100

    Revert for the fix for the 'Bug#23593091: MYSQL SERVER MSI - REGISTRY ITEMS LEFT BEHIND WHEN > 1 SERVER VERSION INSTALLED'
    The Server Installer needs some changes to accomodate for this fix so it got postponed for the next release.

commit 2626bf3859ea240487b94fe1f56761b031add74d
Merge: 3b201be 7a042d3
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Mon Mar 13 17:06:03 2017 +0400

    Null-merge from mysql-5.6

commit 7a042d3c38f17aaca6c6ea46e71868c8e4819c7b
Merge: 0d07d7f 47bb4eb
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Mon Mar 13 17:05:38 2017 +0400

    Null-merge from mysql-5.5

commit 47bb4eb5df1629b5d5e30aebfa9d7a6d74388a5d
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Mon Mar 13 17:01:59 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    Changed MYSQL_OPT_SSL_MODE to be the same as in 5.6 (ABI compatibility).

commit 3b201be6779b0c00b4a6f550df2df4201922c334
Merge: 015f58f 0d07d7f
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Mon Mar 13 17:39:34 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 0d07d7fd7d043e23ee6b4f350b346f87057b750b
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Mon Mar 13 17:37:29 2017 +0530

    Bug #25196653: INCORRECT BEHAVIOR OF SP IN INDEX CONDITION
                   PUSHDOWN
    
    Issue:
    ------
    This problem occurs when:
    1) A certain type of Stored Procedure / Function (SP) is
       used in a query's WHERE clause.
    2) Such a condition is pushed to the storage engine as part
       of Index Condition Pushdown (ICP).
    
    Root cause:
    -----------
    When a condition containing an SP is pushed down as part of
    ICP, it might initiate new sql statements which are part of
    SP. This is not allowed by some storage engines.
    
    Fix:
    ----
    A condition containing SP is currently restricted from being
    part of ICP. But in certain cases Item_func_sp can be
    converted to a constant item (Item_cache_*) and the same
    check needs to applied in this case too.

commit 015f58fb4ef6c81e4704dfedc6952d9a21fff906
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Mar 10 15:04:46 2017 +0100

    Make unit tests ASAN clean:
    
    Disable (FatalSignalDeathTest, Segfault) for ASAN
    
    Backport from trunk:
    5fcdc09e5d60cfddc40d23b02b5334038657a3b7
        Fix flaky InnoDB unit test mem0mem by using SetUpTestCase rather than SetUp.
    b8c056699e7c0895ec2439ee1fa4db7f186406d8
        Fix memory leak in ut0new unit test.

commit f3e297d822efb6d638bd187da12f248ea0915a6a
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Mar 8 16:57:45 2017 +0100

    Bug#25685958 ASSERTION FAILED: RETVAL == 0 IN ITEM_SUM_HYBRID::VAL_DECIMAL()
    
    Turns out the DBUG_ASSERT added as part of patch for Bug#59686 is a bit
    too strict. Relax it to accept a nullptr or a zero value.

commit f65e27bcaa51c3327fb127dd333de787af465f8f
Merge: 000a60d 672ede5
Author: Marc Alff <marc.alff@oracle.com>
Date:   Mon Mar 13 11:09:53 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 672ede5c9f4be7a2029f630b89c9933cc94cf875
Author: Marc Alff <marc.alff@oracle.com>
Date:   Mon Mar 13 11:06:57 2017 +0100

    Test cleanup for windows,
    which prints host:port in column host.

commit 000a60db274eaeaba69a1831375469552ee5fcf5
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon Mar 13 15:03:15 2017 +0530

    Bug #25175249	ASSERTION: (TEMPL->IS_VIRTUAL && !FIELD)
    		|| (FIELD && FIELD->PREFIX_LEN ? FIELD
    
    - Fix post-push failure regarding missing check of clust_templ_for_sec
    before calling fts doc id extraction.
    
    Reviewed-by: Jimmy Yang<jimmy.yang@oracle.com>

commit 24d1e36b477aab85c480408f9ec9e5090938368e
Merge: cbb2565 7f0e47d
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Fri Mar 10 22:40:02 2017 +0530

    Null merge branch 'mysql-5.6' into mysql-5.7

commit 7f0e47d678973db400181799a68490eb6d028958
Merge: f91b941 031cb6c
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Fri Mar 10 22:38:24 2017 +0530

    Null merge branch 'mysql-5.5' into mysql-5.6

commit 031cb6c9f2d8b669bea62ce2b63b327e3a059d8a
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Fri Mar 10 22:34:38 2017 +0530

    BUG#24807826: UINT3KORR SHOULD STOP READING FOUR INSTEAD OF
                  THREE BYTES ON X86
    
    Post push fix for resolving main.archive test failure in valgrind.

commit cbb256541e35923d5c87051c10a154adac877391
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Fri Mar 10 12:35:58 2017 +0100

    BUG#25510757: PREVENT LARGE TRANSACTIONS IN GROUP REPLICATION
    
    A large transaction can have bad consequences on a group, either in
    terms of memory allocation and on network bandwidth consumption, which
    may cause failure detector to think that a given member is unreachable
    while it is just busy.
    
    To avoid these bad consequences, we introduce a safety option which
    prevents big transactions to being committed on the group.
    DBA can configure this option in order to match her/his workload
    requirements.
    
    Introduced new global variable to limit transaction size.
    DML transactions that overcome that limit are rollback.
    Option name: group_replication_transaction_size_limit= bytes
    
    Variable Scope      Global
    Dynamic Variable    Yes
    
    Type                integer
    Default             0 (5.7)
                        150000000 (8.0)
    Min Value           0
    Max Value           2147483647
    
    Value of 0 will allow transaction of any size, switching off option.

commit 0d7c08b88341d24518d98b33fd8cf64b6a3daf45
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 9 23:50:16 2017 +0100

    Bug#25695818 DATA NODE BUS ERROR IF BUILT WITH ORACLE DEVELOPER STUDIO 12.5 ON SOLARIS SPARC
    
    Make m_versionInfo aligned to 8 byte boundary within GlobalData.
    
    By that the compiler bug is avoided, at least in code path accessing
    m_versionInfo.

commit 7b485523772fbd80d0e609d403aa5f87295fe89c
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 02:05:24 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    MYSQL_OPT_SSL_MODE option introduced.
    It is set in case of --ssl-mode=REQUIRED and permits only SSL connection.
    
    (cherry picked from commit f91b941842d240b8a62645e507f5554e8be76aec)

commit 47857fb511fe8581afe8dc4fb5182ad7d3b84f96
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Mar 1 13:30:58 2017 +0100

    Bug#25648545	PACKAGING CONFLICTS WITH MARIADB PACKAGES ON DEBIAN/UBUNTU
    
    Added conflicts:
    * mysql-packagesource-client conflicts with mariadb client
    * mysql-packagesource-server conflicts with mariadb server
    * mysql-packagesource-test conflicts with mariadb test package
    
    (cherry picked from commit 7b50590b2512eb063f2d6c012aca7e4b52d17558)

commit 4dbbd9917b4670ce639e437e44217f78ec5d26ee
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 13:38:24 2017 +0100

    Bug#25643023	SERVER ABORTING WHILE INITIALIZING DATABASE WITH INIT SCRIPTS
    
    If the datadir is deleted and the service restarted, the service
    script will reinitialize the database, then try to set auth_socket
    plugin for the now passwordless root account. The latter should not
    happen, because a) It's a major change in an old GA, and b) The sql
    simply fails, since it's run in bootstrap mode.
    
    (cherry picked from commit c93e3dfcca4a59c4228c5bce1eaac7b83f2c31db)

commit 58d488712031b06cf26b37e9798206c4a771c4ef
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:12:26 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7
    
    (cherry picked from commit 0f94c14be2276f93b6a98b397111cb475076e0a6)

commit ce9730102288064f8ccd59b2f36dcbc3151383db
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 12:40:34 2017 +0100

    Bug#25641417	PACKAGE UPGRADE FROM 5.6 TO 5.7 FAILING ON DEBIAN/UBUNTU PLATFORMS
    
    The mysql_plugin file is in the client package in 5.6, and server in 5.7,
    causing file conflicts on upgrade.
    
    (cherry picked from commit 9fa34bcd92e949d96b2d6a21104d3c1fc7c85d18)

commit 17a7643c385c663c36e325826ac44bfd1cbbe1c8
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Mar 1 13:04:07 2017 +0100

    Bug#25650096	PACKAGE UPGRADE FROM 5.5 NATIVE TO 5.7 THROWS ERRORS ON DEBIAN
    
    When upgrading from native 5.5 packages in Debian we need to reset ownership
    on /var/run/mysqld (owned by root), or the systemd service will throw an error
    because it can't assign it to the mysql user.
    
    (cherry picked from commit 88c2441d41933307208227629481adfe28ac764f)

commit 0797de68fef1319decaa0fd47211ec5b44a0edd9
Author: Oystein Grovlen <oystein.grovlen@oracle.com>
Date:   Wed Mar 1 14:29:48 2017 +0100

    Bug#25650399: DOWNGRADE FROM MYSQL 8.0 TO 5.7 WILL CRASH SERVER
    
    MySQL 8.0 adds a generated column to the two tables mysql.server_cost
    and mysql.engine_cost.  MySQL 5.7 fails if system tables contain
    generated columns.  Hence, downgrade to 5.7 will not work when cost
    tables contain generated columns from 8.0.
    
    This patch is for 5.7 and backports fix to read_cost_constants() from
    8.0.  mysql_system_tables_fix.sql is changed to remove columns
    should they exist.  This will make mysql_upgrade, if run during
    downgrade, restore these tables to its original form.
    
    sql/opt_costconstantcache.cc
       In order for resolving of generated column to work correctly when
       opening cost tables, lex_start() must be called.
    
    scripts/mysql_system_tables_fix.sql
       Add SQL code to remove the columns from 8.0 should they exist.
    
    scripts/mysql_system_tables.sql
       Specify only non-default values in insert statements for cost tables.
       This way mysql_upgrade does not give errors if extra columns exist.
    
    mysql-test/t/opt_costmodel_downgrade.test
    mysql-test/r/opt_costmodel_downgrade.result
       Test to verfiy that 5.7 does not crash should generated columns exist in
       cost tables.  Also verifies that running mysql_upgrade will remove
       the columns.
    
    (cherry picked from commit 6f909b48b8f324079dd9f2a2813312194d17cff1)

commit 7597dc927e5fd5f5bd2259b190cc70ed15c8e167
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri Mar 10 10:08:14 2017 +0100

    Bug#25672750 PASSWORD VALIDATION PLUGIN ACTIVATION IS BINLOGGED FOR RPM DISTRIBUTION
    
    Disable logging to binary log in scripts.
    
    Also syncs SysV initscript and systemd ExecPre script.

commit 2ec030813eff3e3102dd15c1ed5b28211009902d
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 01:19:50 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    MYSQL_OPT_SSL_MODE option introduced.
    It is set in case of --ssl-mode=REQUIRED and permits only SSL connection.
    
    (cherry picked from commit 3b2d28578c526f347f5cfe763681eff365731f99)

commit 76262b07a3e95edebe0f634abe131785768fabaf
Merge: 9c351ec f91b941
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 02:06:29 2017 +0400

    Null-merge from mysql-5.6

commit f91b941842d240b8a62645e507f5554e8be76aec
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 02:05:24 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    MYSQL_OPT_SSL_MODE option introduced.
    It is set in case of --ssl-mode=REQUIRED and permits only SSL connection.

commit 9c351ece3969169bf1ad27320a9725e14fad12ea
Merge: cd88a9d eb7e68e
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 01:30:55 2017 +0400

    Null-merge from mysql-5.6

commit eb7e68ee6bdfbf39ec9ac5fa0c3bf08b30afa989
Merge: 821b976 3b2d285
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 01:29:17 2017 +0400

    Null-merge from mysql-5.5

commit 3b2d28578c526f347f5cfe763681eff365731f99
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 01:19:50 2017 +0400

    BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING SSL CONNECTION
    
    MYSQL_OPT_SSL_MODE option introduced.
    It is set in case of --ssl-mode=REQUIRED and permits only SSL connection.

commit cd88a9dc2bbf6436b6c17be8af2ba8e50a7a911d
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Thu Mar 9 15:33:45 2017 +0000

    BUG#22150112 REPLICATION BREAKS WITH NOT PRESERVE EVENTS
    
    Problem and analysis:
    Events defined as "ON COMPLETION NOT PRESERVE" can be automatically
    dropped when they complete executing or when the scheduler is started.
    The issue reported refers to when the event scheduler is started and
    events that have passed their execution times are automatically dropped.
    This automatic drop was already removing the event from the event queue
    and from the mysql.event table. However, it was not being written to
    the binlog and, consequently, a slave would not replicate these drop events.
    This would cause an error on the slave if the master created another event
    with the same name as one automatically dropped.
    
    Fix:
    When the scheduler is started, if any event is dropped automatically,
    the drop is written to the binlog so that it can be replicated to
    the slaves.

commit b5a8aef550b0eb9c2ccfb9d86da4b8fe3d845b00
Merge: 3bb768f 821b976
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Thu Mar 9 11:41:48 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 821b976814e3b3d26961c03a01e47be46c3b04fb
Merge: 8c1a0ff 7546938
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Thu Mar 9 11:40:47 2017 +0100

    Merge branch 'mysql-5.5' into mysql-5.6

commit 7546938d2a80b4fd245ba8cba4b4260ca2e9b543
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Wed Mar 8 08:29:02 2017 +0100

    BUG#25364806 MYSQLD_SAFE FAILING TO START IF DATADIR GIVEN IS NOT ABSOLUTE PATH
    
    mysqld_safe is working on real files, however passing these file paths
    as is to mysqld as options gives different meaning when paths are
    relative.
    
    mysqld_safe uses current working directory as basedir for relative paths,
    while mysqld uses $datadir as basedir.

commit 3bb768f711dc97fe45f38f9ac15cbb202105273b
Merge: 9c749d3 8c1a0ff
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Thu Mar 9 15:00:40 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 8c1a0ff645621c9dd98f267496000f9d245e6209
Merge: c35e1d5 909d9b8
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Thu Mar 9 14:58:51 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 909d9b8aae960fc68e17d0c1fcfe1dd0c77bcd41
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Thu Mar 9 14:57:20 2017 +0530

    BUG#24807826: UINT3KORR SHOULD STOP READING FOUR INSTEAD OF
                  THREE BYTES ON X86
    
    Analysis:
    =========
    The macro uint3korr reads 4 bytes of data instead of 3 on
    on x86 machines.
    
    Multiple definitions were created for this macro for
    optimization in WIN32. The idea was to optimize reading of
    3 byte ints by reading an ordinary int and masking away the
    unused byte. However this is an undefined behavior. It will
    be an issue unless users are aware of allocating an extra
    byte for using this macro.
    
    Fix:
    ====
    Removing the definition which reads 4 bytes of data. The
    only definition of this macro would now read just 3 bytes
    of data thus prohibiting the usage of an extra byte.
    
    Note:
    =====
    This is a backport of Patches #5 and #6 for Bug#17922198.

commit f27296fe5120e83880a8ea69ccee76ff9431ebf8
Merge: 8258507 bf31191
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Mar 9 02:14:16 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit bf311918b844afb2ca2b579d36891b990152bc6f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Mar 8 14:38:15 2017 +0530

    Bug#22195588 - Post push fix
    
    This patch makes changes to the ndb_info.inc include file in the MTR
    test case to make it windows compatible.

commit 9c749d320dd593970250794de6d2cf284872d5c8
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 8 15:58:14 2017 +0100

    Test cleanup for 5.7

commit 86a6a0cf545974dc7d9a668e4ec2f23d533806d1
Merge: 69f39d4 c35e1d5
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 8 15:56:17 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit c35e1d5ebb8866e0314bbefe2f350c16c8e985c1
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 8 15:55:19 2017 +0100

    Test cleanup

commit 69f39d4ef28648aafb235108cd3616ead93a527c
Merge: 85919e9 31a302d
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 8 13:57:41 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 31a302d880df99c25864d058f81f2fc5387ad118
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Mar 7 15:00:30 2017 +0100

    Bug#25309017 - THE FIX FOR BUG 78777 HAS DIFFERENT
    BEHAVIOR WITH PERF.  SCHEMA VS. WITHOUT IT
    
    Context:
    ========
    
    Before the fix for MySQL BUG 78777,
    THD::proc_info was not reset when a session goes IDLE.
    
    While SHOW PROCESSLIST handled this case,
    SHOW ENGINE INNODB STATUS did not,
    and displayed an incorrect status for an idle thread.
    
    The fix for bug 78777 exposed then another issue:
    
    When a session that was IDLE is now active again,
    aka when a request is received,
    the session status is not always changed back
    to reflect the statement execution.
    
    When compiling with the performance schema,
    the session status was changed to Init, as expected.
    
    When compiling without the performance schema,
    the session status was left unchanged.
    
    In particular for the SHOW PROCESSLIST statement,
    the STATE column for the running session did not reflect that
    this statement is being executed (with a state set to Init).
    
    Having statements that behave differently with and without the performance
    schema is very undesirable, as this confuse monitoring tools and cause
    regressions.
    
    Root cause:
    ===========
    
    The problem is with init_net_server_extension().
    
    When compiling without the performance schema,
    this function takes a shortcut and do not hook up
    net_before_header_psi() and net_after_header_psi()
    at all, assuming these functions have no effect.
    
    This is incorrect, init_net_server_extension()
    has an effect even without hte performance schema,
    because the call to THD_STAGE_INFO() affects THD::proc_info,
    which is the data exposed in column STATE in SHOW PROCESSLIST.
    
    The reason for THD_STAGE_INFO() to behave this way
    is to maintain consistency between
    - the (relatively recent) performance schema STAGE instrumentation
    - the existing THD::proc_info instrumentation,
      which has to be preserved for backward compatibility.
    
    Fix:
    ====
    
    In init_net_server_extension(),
    do not take shortcuts when compiling without the performance schema.
    Invoke net_after_header_psi() normally,
    by hooking up the callback.
    
    Tested both with and without the performance schema.

commit 85919e9d2b5e518c199665d357d3bd366786d3bc
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Mar 7 18:39:50 2017 +0530

    Bug#24285104 RELAY LOG CORRUPTION NOT HANDLED CORRECTLY WITH
    MULTI-SOURCE REPLICATION
    
    Post push:
    Fixing a test failure

commit ca59ea753b757942c834093c83b1e83717a62869
Author: Aditya A <aditya.a@oracle.com>
Date:   Tue Mar 7 16:16:06 2017 +0530

    Bug #23046302   COUNT(*) MUCH SLOWER ON 5.7 THAN 5.6
    
    Test case fix for cmp_per_index.test which was using count(*)
    for scanning the table using primary index. The removal of
    Wl6742 triggered count(*) to use secondary index which was
    causing the test to fail for some innodb compression levels.
    Fix is to force the table to use primary index by doing
    select * from table.

commit 6960299bb23d554838d88ca412a79ff7cbb034b4
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Mar 7 12:20:12 2017 +0530

    Fixed crash

commit f88d481d308b4047bea817be2af1bd686766f34e
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Mon Mar 6 13:05:05 2017 +0100

    WL#10166 Require WKB input in WKB parsing functions
    
    Post-push fix: re-record test case
    
    Change-Id: I7064d26c76ca0a35a040dffd76a5587214ee752f

commit 825850763aa437488a347e2920aa38eba3b358c4
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 3 12:36:30 2017 -0800

    NDB memcache: fix S scheduler to use version 2 of multiwait

commit 8634f1ff852579e7bb609b4055e677f0341e0c29
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 3 18:23:04 2017 +0530

    window fixed

commit 88c2441d41933307208227629481adfe28ac764f
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Mar 1 13:04:07 2017 +0100

    Bug#25650096	PACKAGE UPGRADE FROM 5.5 NATIVE TO 5.7 THROWS ERRORS ON DEBIAN
    
    When upgrading from native 5.5 packages in Debian we need to reset ownership
    on /var/run/mysqld (owned by root), or the systemd service will throw an error
    because it can't assign it to the mysql user.

commit 9fa34bcd92e949d96b2d6a21104d3c1fc7c85d18
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 12:40:34 2017 +0100

    Bug#25641417	PACKAGE UPGRADE FROM 5.6 TO 5.7 FAILING ON DEBIAN/UBUNTU PLATFORMS
    
    The mysql_plugin file is in the client package in 5.6, and server in 5.7,
    causing file conflicts on upgrade.

commit 635e6c31ecad6a3e152f3f33126c0c29c00e1add
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:13:53 2017 +0100

    Raise version number after cloning 7.5.6

commit 4def8562953def72a561553e91985e5303cde41b
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 3 15:51:02 2017 +0530

    Fixed build issues.

commit 0f94c14be2276f93b6a98b397111cb475076e0a6
Merge: cf4ab59 7b50590
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:12:26 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit 7b50590b2512eb063f2d6c012aca7e4b52d17558
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Mar 1 13:30:58 2017 +0100

    Bug#25648545	PACKAGING CONFLICTS WITH MARIADB PACKAGES ON DEBIAN/UBUNTU
    
    Added conflicts:
    * mysql-packagesource-client conflicts with mariadb client
    * mysql-packagesource-server conflicts with mariadb server
    * mysql-packagesource-test conflicts with mariadb test package

commit cf4ab59edd2ec191acc4f2b14a19aa529931ec88
Merge: 2409846 c93e3df
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:09:31 2017 +0100

    Null merge branch 'mysql-5.6' into mysql-5.7

commit c93e3dfcca4a59c4228c5bce1eaac7b83f2c31db
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 13:38:24 2017 +0100

    Bug#25643023	SERVER ABORTING WHILE INITIALIZING DATABASE WITH INIT SCRIPTS
    
    If the datadir is deleted and the service restarted, the service
    script will reinitialize the database, then try to set auth_socket
    plugin for the now passwordless root account. The latter should not
    happen, because a) It's a major change in an old GA, and b) The sql
    simply fails, since it's run in bootstrap mode.

commit 24098469fb4d402f93d0a0390d1ff73a37c76ec0
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu Mar 2 15:31:34 2017 +0530

    Bug #22963951	REDUCE THE TIME OF LOOKING FOR
    	MLOG_CHECKPOINT DURING CRASH RECOVERY
    - Post-push fix

commit 6f909b48b8f324079dd9f2a2813312194d17cff1
Author: Oystein Grovlen <oystein.grovlen@oracle.com>
Date:   Wed Mar 1 14:29:48 2017 +0100

    Bug#25650399: DOWNGRADE FROM MYSQL 8.0 TO 5.7 WILL CRASH SERVER
    
    MySQL 8.0 adds a generated column to the two tables mysql.server_cost
    and mysql.engine_cost.  MySQL 5.7 fails if system tables contain
    generated columns.  Hence, downgrade to 5.7 will not work when cost
    tables contain generated columns from 8.0.
    
    This patch is for 5.7 and backports fix to read_cost_constants() from
    8.0.  mysql_system_tables_fix.sql is changed to remove columns
    should they exist.  This will make mysql_upgrade, if run during
    downgrade, restore these tables to its original form.
    
    sql/opt_costconstantcache.cc
       In order for resolving of generated column to work correctly when
       opening cost tables, lex_start() must be called.
    
    scripts/mysql_system_tables_fix.sql
       Add SQL code to remove the columns from 8.0 should they exist.
    
    scripts/mysql_system_tables.sql
       Specify only non-default values in insert statements for cost tables.
       This way mysql_upgrade does not give errors if extra columns exist.
    
    mysql-test/t/opt_costmodel_downgrade.test
    mysql-test/r/opt_costmodel_downgrade.result
       Test to verfiy that 5.7 does not crash should generated columns exist in
       cost tables.  Also verifies that running mysql_upgrade will remove
       the columns.

commit ea15198672a29514d61be2a0ebf59020944b9429
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu Mar 2 11:56:15 2017 +0530

    Bug #22963951	REDUCE THE TIME OF LOOKING FOR
                    MLOG_CHECKPOINT DURING CRASH RECOVERY
    Analysis:
    =========
    In mysql-5.7, there can be maximum three scans are possible.
    Simultaneous scan and apply is possible only in the third scan.
    
    First scan: Scan all the redo logs from checkpoint lsn and process
    only MLOG_FILE_* records during first scan. It scans till the
    last MLOG_CHECKPOINT.
    
    Second scan: Scan all redo logs from checkpoint lsn and add log
    records to hash table. It verifies whether space id is having
    corresponding MLOG_FILE_NAME record. If the hash table heap memory
    is reached the threshold then stop adding records to hash but it
    continues to scan till end of the redo log file.
    
    Third scan: Scan all redo logs from checkpoint lsn and add log records
    to hash table only if the tablespace exists. If the heap memory reached
    the threshold then simultaneous scan and apply will happen.
    
    Note: Third scan only happens if hash table memory reaches the
    threshold during second scan.
    
    Fix:
    ====
    
    Merge first scan and second scan and make it a single scan. Single scan
    if the hash table doesn't reach the threshold limit.
    In worst case scenario, it does two scan.
    
    Reviewed-by: Debarun Banerjee <debarun.banerjee@oracle.com>
    RB: 14725

commit 3d128e906a4b788aacb2ac76fc1ccc5e10c4b0e1
Author: Marek Szymczak <marek.szymczak@oracle.com>
Date:   Wed Mar 1 17:23:53 2017 +0100

    Bug#25541837 PRIVILEGE_SUPER=FALSE RESETS ALMOST ALL PERMISSIONS
    
    Problem:
    ========
    Invalid boolean operator used during removal of the specified privilege, using
    the sec context service.
    
    Fix:
    ====
    Unary complement (bit inversion) applied during unsetting specified privilege,
    using the sec context service.
    
    Reviewed-by:
    ============
    Georgi Kodinov <georgi.kodinov@oracle.com>
    Steinar Gunderson <steinar.gunderson@oracle.com>

commit 273b529be4ce9434779141d597a173defef0c292
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Tue Feb 28 15:40:45 2017 +0100

    BUG#25256910: NODE RECOVERY FAILS WITH ERROR_CODE: 1062; HANDLER ERROR HA_ERR_FOUND_DUPP_KEY [Post-Fix]
    
    Failures were detected on weekly-5.7 failing the execution of DROP TABLE t1.
    
    An explanation for this problem is that at the end of the test we start the
    server 2 applier again. The applier has a transaction to apply on t1 but we
    never check if it is already applied or not.
    
    In the end of the test we also do a drop on table t1, that in theory could be
    certified and executed sooner than the remote transaction on t1.
    
    So it was added a wait condition to confirm the presence of the data on
    server2.

commit 1258dd40d34c151650c6e21ad79393d3b6085ddd
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Wed Mar 1 10:58:50 2017 +0530

    BUG#25601131 : BACK-PORT 'TEST-PROGRESS' OPTION TO MYSQL-5.7
    
    Beck-port of BUG#20755059

commit 6f4f535c0bc57379eb3531a19cb30f0cf7deca3b
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Mar 1 08:23:26 2017 +0530

    Bug#24285104 RELAY LOG CORRUPTION NOT HANDLED CORRECTLY WITH MULTI-SOURCE
    REPLICATION
    
    Post push: Fixing build issue

commit cc3cc1207b9ecdd41c97426602b8f71fa472d4e6
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Feb 28 22:20:14 2017 +0530

    Bug#24285104 RELAY LOG CORRUPTION NOT HANDLED CORRECTLY WITH MULTI-SOURCE
    REPLICATION
    
    Problem: Corruption of one channel's relay logs + server restart is
             making few channels (good channels) to disappear.
    
    Analysis: In create_slave_info_objects(), after reading the all the
              available channels from the repository tables, server create
              and initialize each and every channel. The logic was written
              in such a way that if there is an error while initializing
              one channel, server will skip creating other channels than
              the default one. Also when the skip-slave-start=false, server
              should start the slave threads for all the channels. But the logic
              is written in a way that if there is an error during initialization
              of a channel, it will skip starting slave threads for those
              channels which are in good condition as well.
    
    Fix: Both problems that are explained above in the analysis section are
         fixed now. Now irrespective of errors on other channels, server will try
         to create/initialize channels that are in good condition and also
         it will start slave threads for the good channels if skip-slave-start
         is disabled. Also as part of this fix, we have restructured
         create_slave_info_objects function to increase the code readability
         START SLAVE and STOP SLAVE, which are supposed to operate on all the
         channels, are also modified such that they will continue
         executing on all good channels even if they find one bad channel
         in between.

commit dc649662ae5f65041fabe46309a8bbc54389c390
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Tue Feb 28 18:07:46 2017 +0530

    BUG#24595581: NULL POINTER DEREFERENCE WHILE USING LONGTEXT
                  FUNCTION IN SUBQUERY
    
    ANALYSIS:
    =========
    Server runs into null pointer dereferencing when a
    deterministic function returning longtext is used in a
    subquery.
    
    Item::const_item() is 'true' for all items having no table
    reference bits set. So it is 'true' for subqueries and
    deterministic functions that do not reference any tables.
    However, we cannot always consider items to be constant
    based on the referenced table bits. In this scenario, a
    deterministic function is considered a const item. Hence the
    resolver tries to evaluate the function in the preparation
    phase. At this phase, the query tables are open but not
    locked. After the evaluation, all the tables in the outer
    query block are closed. Later during the execution phase,
    when we try to lock the query tables, the TABLE object will
    be unused, thus leading to a null pointer dereference.
    
    FIX:
    ====
    We are overriding the function 'fix_after_pullout' in the
    'Item_func_sp' class where we are not considering
    deterministic functions as const items based on their table
    reference, thus preventing the resolver from evaluating
    the function in the preparation phase.

commit 8eb46eda365a8050b2a598350ffa151c3191ded3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 28 17:07:47 2017 +0530

    Fix build issues.

commit 5a62916a9be64f9f9418de3caade01cfe44b4c4b
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 28 15:55:53 2017 +0530

    Fixe build issues

commit b0758de5f4aafa10d103ed81931e2181e72c7a37
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 28 15:17:01 2017 +0530

    Fix build issues and added tests

commit bd6b053807a12c2cd9079cad88819fa608e056db
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 07:27:03 2017 +0100

    Backport fix for Bug#22849423 to 5.6
    
    The fix adds the Debian/Ubuntu install path to mtr search ca
    
    (cherry picked from commit a3ef6eadac144cc4aa426e0b1a6e027d55ac7d36)

commit 3fb44f9a128dfaee6375cb38590c37293530f488
Merge: 245f0cb a3ef6ea
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 07:28:00 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit a3ef6eadac144cc4aa426e0b1a6e027d55ac7d36
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Feb 28 07:27:03 2017 +0100

    Backport fix for Bug#22849423 to 5.6
    
    The fix adds the Debian/Ubuntu install path to mtr search ca

commit 245f0cbdaed263c8e198a4693d2e6659d3660610
Merge: 18daf1f 9b24c83
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 11:32:51 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 9b24c83bb601b9a634e165ded7d8d209cbe25eab
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 11:29:02 2017 +0530

    Bug#25076007: SERVER CRASHES IF BINARY LOG IS ROTATED AND
    DISK-FULL CONDITION OCCURS
    
    Post push fix.
    
    Adding Doxygen comment.

commit 18daf1f9fd258a13e5f194c58a40a79fcb8c8125
Merge: ad94354 e676549
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 10:43:58 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit e676549f1a7baf4a36b646ab364daaeeecefc445
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 10:40:17 2017 +0530

    Bug#25076007: SERVER CRASHES IF BINARY LOG IS ROTATED AND
    DISK-FULL CONDITION OCCURS
    
    Description:
    ============
    Master Server crashes if binary log is rotated and disk-full
    condition occurs on binlog stored partition.
    
    Analysis:
    =========
    In Master Slave setup when slave requests for data from the
    master, a dump thread is created and the dump tread
    initially checks for the existence of binary log. If the
    binary log is enabled it continuously reads data from the
    binary log and sends it to slave.
    
    If due to some critical error, as mentioned in bug scenario,
    rotation of binary log fails due to disk-full scenario then
    the action specified in binlog_error_action is taken.  If
    users choose to ignore the error, then the binary log will
    be disabled.Both the binary log file/index file are closed.
    
    Their corresponding IO_CACHEs are cleared. The server will
    continue to do its work without writing transactions into
    the binary log. In such case dump thread will get EOF on
    current binary log and it will try to move to next binary
    log. At this point dump thread assumes that binary log is
    still active and tries to read the next binary log file name
    from index file IO_CACHE.  Since the IO_CACHE is in cleared
    state it causes server to exit abnormally.
    
    
    Fix:
    ===
    Added a check for the existence of binary log when dump
    thread is switching to next binary log. If binary log is in
    disabled state, all binary logs up to the current active log
    are transmitted to slave and an error is returned to the
    receiver thread.
    
    During testing valgrind issues were found in open_binlog
    code. At the time of disabling binary log only the IO_CACHE
    of binary log index file is cleared without closing the
    actual binary log index file. This results in memory leak.
    Replaced individual cleanup steps with appropriate cleanup
    function call.

commit ad943544efdc1082e6abeb2d561841e06252f1a2
Merge: 7d1cb95 880c896
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 10:08:35 2017 +0530

    Bug#24901077: RESET SLAVE ALL DOES NOT ALWAYS RESET SLAVE
    
    Merge branch 'mysql-5.6' into mysql-5.7

commit 880c896253ecd7dbabcf73bccde6890f9bd2244e
Merge: bdf3c02 e0de998
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 10:04:50 2017 +0530

    Bug#24901077: RESET SLAVE ALL DOES NOT ALWAYS RESET SLAVE
    
    Merge branch 'mysql-5.5' into mysql-5.6

commit e0de998d32b97db344ae7ced3e4654bc970ee589
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Feb 28 10:00:51 2017 +0530

    Bug#24901077: RESET SLAVE ALL DOES NOT ALWAYS RESET SLAVE
    
    Description:
    ============
    If you have a relay log index file that has ended up with
    some relay log files that do not exists, then RESET SLAVE
    ALL is not enough to get back to a clean state.
    
    Analysis:
    =========
    In the bug scenario slave server is in stopped state and
    some of the relay logs got deleted but the relay log index
    file is not updated.
    
    During slave server restart replication initialization fails
    as some of the required relay logs are missing. User
    executes RESET SLAVE/RESET SLAVE ALL command to start a
    clean slave. As per the documentation RESET SLAVE command
    clears the master info and relay log info repositories,
    deletes all the relay log files, and starts a new relay log
    file. But in a scenario where the slave server's
    Relay_log_info object is not initialized slave will not
    purge the existing relay logs. Hence the index file still
    remains in a bad state. Users will not be able to start
    the slave unless these files are cleared.
    
    Fix:
    ===
    RESET SLAVE/RESET SLAVE ALL commands should do the cleanup
    even in a scenario where Relay_log_info object
    initialization failed.
    
    Backported a flag named 'error_on_rli_init_info' which is
    required to identify slave's Relay_log_info object
    initialization failure. This flag exists in MySQL-5.6
    onwards as part of BUG#14021292 fix.
    
    During RESET SLAVE/RESET SLAVE ALL execution this flag
    indicates the Relay_log_info initialization failure.
    In such a case open the relay log index/relay log files
    and do the required clean up.

commit 7d1cb95cbbdc5314433fabb2c7f7ac3f54d2167b
Author: Aditya A <aditya.a@oracle.com>
Date:   Tue Feb 28 08:02:59 2017 +0530

    Bug #25080442   PARTITIONED TABLES USE MORE MEMORY IN 5.7 THAN 5.6
    
    Additional features in innodb have added new variables in memory
    structures which increases the total memory usage. In dict_index_t
    in-memory structure which is allocated for each index these three
    additional members are added in mysql-5.7.
    
    
    last_ops_cur_t* last_ins_cur :- cache the last insert position.
    last_ops_cur_t* last_sel_cur :- cache the last selected position
    rec_cache_t     rec_cache    :- cache the field that needs to be
                                    re-computed on each insert.
    
    These three caches are only used for temporary or intrinsic tables
    but memory for them is allocated for all tables which increases
    the overall usage of memory
    
    Fix
    ---
    This fix optimizes the memory usage by allocating memory for these
    caches only when they are used .

commit a0066a01a825cb8f0ec5d023f22cea0d7473fe50
Merge: 9da96bc 707a693
Author: Jens Even Berg Blomsøy <jens.even.blomsoy@oracle.com>
Date:   Mon Feb 27 20:57:01 2017 +0100

    WL#10166 Require WKB input in WKB parsing functions
    
    Give a deprication warning when using geometries as parameters
    to the FromWKB functions. This functionality will be removed in 8.0.

commit 9da96bc242a59a9ba7add49814f9ddb63d070085
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Mon Feb 27 22:16:00 2017 +0530

    Bug#24816271 - OKVCLIENT.ORA MUST HAVE STANDBY_SERVER
    
    DESCRIPTION
    ===========
    Initialization of keyring_okv Oracle Key Vault plugin fails
    when STANDBY_SERVER in the config file 'okvclient.ora' is
    missing.
    
    There could be a scenario when SERVER entry is present but
    STANDBY_SERVER entry is absent in the config file. In such
    a case initialization should not stop as the former exists,
    but its not happening at present and hence this bug.
    
    ANALYSIS
    ========
    The config file is parsed in OraConfFileParser::parse(). It
    returns error if 'standby_server_url' is empty, making it
    mandatory to set its value in config file okvclient.ora.
    This restriction should be removed.
    
    FIX
    ===
    Setting STANDBY_SERVER in config file is made optional now.
    When 'standby_server_url' is empty, a warning stating the
    same is thrown but the initialization is continued.
    
    NOTE
    ====
    This change would accompany a corresponding modification in
    documentation too. It now needs to be clearly mentioned
    that STANDBY_SERVER hereon is an optional entry in config
    file 'okvclient.ora'

commit 3fa9831662d6ddb25f5fd64dbbdc62f2c163a439
Merge: 89ee0ff bdf3c02
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Feb 27 17:28:51 2017 +0530

    Raise version number after cloning 5.7.18

commit bdf3c0202303390f91741ac90d7e0f1c46fb66df
Merge: 4265487 7df8dc7
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Feb 27 17:24:40 2017 +0530

    Raise version number after cloning 5.6.36

commit 7df8dc750c26ead87c643f87dccba28a66cf3c9b
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Feb 27 17:20:51 2017 +0530

    Raise version number after cloning 5.5.55

commit 707a69384c9962fe97b6912d541d49f2c6f0f646
Author: Jens Even Berg Blomsøy <jens.even.blomsoy@oracle.com>
Date:   Fri Feb 24 09:56:25 2017 +0100

    WL#10166 Require WKB input in WKB parsing functions
    
    Give a deprication warning when using geometries as parameters
    to the FromWKB functions. This functionality will be removed in 8.0.

commit 1eecc449b572022a4634dbe6c1468990c284cf65
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 16:59:24 2017 +0530

    build issue fix

commit bac198dd94a6b3cf9c85b74e9327d6bef2ca3086
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 16:25:21 2017 +0530

    Fix buid issue

commit dc7327d057e761554711835c4436ef84ba43d0aa
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 16:03:00 2017 +0530

    Fixed build issue

commit 4b41c28e2bc25e516aec3f2be5de71f3e24311fd
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 13:12:48 2017 +0530

    fixed TLS_CTX

commit 4718b74ddf2d671732d9633f9d6ed43517f76d26
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 11:56:12 2017 +0530

    Fix crash.

commit f5915a06d35bf6ea3f7e90b94ec93fb7469bff2b
Merge: 621deac e2e0fd5
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 11:30:05 2017 +0530

    Merge branch '5.7' into mysql-5.7-wl5847

commit 621deac24bb62416186441055ec5664d4a5018a3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 11:26:51 2017 +0530

    for gcov 1

commit 5a4818fc81c67bac57e1efd5889260aaa9117657
Merge: 1c8057c 72e307e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Feb 24 12:01:56 2017 +0530

    Merge branch '5.7' into mysql-5.7-wl5847

commit 1c8057cfbdec1279dbc9ffe674e8ad5a42b35f7e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Feb 23 13:04:19 2017 +0530

    fixed build issues.

commit ac01082ce71e65eadcef778ea16d1af3ba146379
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 21 16:35:10 2017 +0530

    Fixed build issues.

commit a9b7dae891695b9015a9111a51e3ca7df276d0c7
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 21 12:15:06 2017 +0530

    Added test and fix a bug

commit 43448b85a3ddc756345696f693cc22a311c8aee1
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 20 18:44:46 2017 +0530

    Fixed solarise build issue and added file to run the test.

commit 23c5e6f16aa081459368e292fd8a9803ca638db9
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 20 14:04:36 2017 +0530

    Removed unwanted files

commit dd06c771de007357ff54b191b6e1b4bc8adf1c4f
Author: git <yashwant.sahu@oracle.com>
Date:   Mon Feb 20 12:38:48 2017 +0530

    Fixed build issue.

commit 97ee094bbfb587047af9bd01e5d0a38df2e2d0e2
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 20 11:23:31 2017 +0530

    build fix

commit 0d6139e5ebb2220d03314d9c08addef2c2eff096
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 20 10:25:20 2017 +0530

    Fixed build issue and fixed review comments

commit 73c567107bd2fca8afdddbc1f4cce261ef4d8d13
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 7 12:32:12 2017 +0530

    Test Fix.

commit 6e44da8023985ede37f1f9b90bf552fba5f7aeba
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Feb 7 12:15:33 2017 +0530

    Fixed tests.

commit b70c4dd42a3b9ff62fa8d7a051a1ff08d50dffef
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Feb 3 16:36:18 2017 +0530

    Added more tests.

commit 0f7d09e9706965665ad8f2f98118f9dc9042d5de
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Feb 1 18:09:49 2017 +0530

    test.

commit 72baa7e86b501c82915673adf6f24d2faff9a9fc
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Feb 1 16:29:50 2017 +0530

    Added test and fix TLS name.

commit 454da6889a914195d0133f3c85c5ec7ac66736ba
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Jan 23 14:10:26 2017 +0530

    23 Jan. working

commit 29f06c1786f709c1d8a8ba0f96e44e60dbca89e3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Jan 11 15:02:49 2017 +0530

    removed hashed pool

commit e66ae6423f56b6232f5e21c62f4073d4bc1f4889
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Jan 6 14:29:00 2017 +0530

    wl:8196: removed deperacted LDAP codes.

commit 79ffb23cff5d0df9184a4a642e9d290563f2e33c
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Jan 4 12:11:53 2017 +0530

    wl: 8196: ldap, fixed pool

commit cc3c3841c040bec1d01450b99b40e581679c83c3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Dec 27 12:31:54 2016 +0530

    After hash pin

commit a0eb97f9c398f35ddde8b0eae55cfb378a17deb0
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Sep 7 18:19:57 2016 +0530

    ldap: fixed makefile

commit 539891f5dee15baa234351813f0806d0f60553dc
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Sep 2 15:22:40 2016 +0530

    ldap plugin: initial version
