commit 3d1b61a9b4617ca33891446e402aa9b7981e725e
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Fri Nov 3 12:25:38 2017 +0100

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

commit 2beabffb1f83aafd00aef69777179657d1b9fb7c
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Tue Jan 23 10:54:33 2018 +0100

    Updated copyright year to 2018

commit 0e6c4a409505e8cfdc198391bf318419b12f7355
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Jan 19 20:12:50 2018 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (cherry picked from commit ba6bda2db9baea8b708e7e5b4482264506478401)

commit adc87ff5d54c8c023d8be4e9d82f787b02dff134
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Jan 19 20:10:31 2018 +0530

    Bug#27308632 : NDB NODE RESTART SHOULD FAIL IF FILESYSTEM NOT UPGRADED
    
    Upgrade testcase for the patch.
    Testcase added to versions 7.5.10+.
    The fix will be pushed to 7.6.4+.
    
    (cherry picked from commit 9de0a138dad8d164f26ae1f5a3aa05a7d71296c8)

commit 72f6317292fdba864147361656f5a50ade10e570
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Jan 19 20:10:19 2018 +0530

    Bug#27308632 NDB NODE RESTART SHOULD FAIL IF FILESYSTEM NOT UPGRADED
    
    Version 7.6.4 introduces some changes to the disk data tablespace file
    format, and the Local Checkpoint LCP disk file format. Due to this any
    upgrade of the data nodes to v7.6.4 should use a initial restart to
    create the necessary files in the NDB file system. If initial restart
    is not done, the data nodes will crash during upgrade failing to find
    the required files. To avoid this crash, this patch adds a check and
    fails with a clear error if an initial restart is not done. This also
    prevents any damage being done to the data on disk. This commit has the
    fix and the upgrade test case is pushed in a lower version and merged
    up.
    
    (cherry picked from commit ac7dd7ed27bd644ff6009cec9ff08333db7d7d1c)

commit e57e8baea60502b7a7ef360adbc9752f8bbcb6b3
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:44:45 2018 +0100

    WL#8069
      Post-push fix:
      When performing an LCP during COPY_FRAGREQ in a node restart
      we were not handling LCP keep list for the special deletes
      occuring during node synchronisation. This made it fail in
      the condition after completing the LCP.
    
      Made use of LCP keep list also in this state to fix it.
      Modified the new test case testNodeRestart -n PLCP_I1 to
      reproduce the fixed bug
    
    (cherry picked from commit 63fda3890b307c6c13e4b4f039592a3fc4fc4ae0)

commit d0ede909039b3c2dbe20fb7536c9bba07b562619
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:39:11 2018 +0100

    WL#8069: Post-push fix: A bit more work on the debugging framework for Partial LCP
    
    (cherry picked from commit 04aa7c4d023de5d50ae25d747785aedcd2db73d2)

commit b65071b0f7ff004acd0aa3d4c4d56e8a49b60345
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:35:57 2018 +0100

    WL#8069: Post-push fix: Added 23 new counters for LCP specific events to improve debug printouts and printouts at crash occurrences
    
    (cherry picked from commit 1fbaf2b48498664ced6fba3e57a02b19b1f5c311)

commit 1440debd239b140f54d50fd592feafa7cc553760
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:34:02 2018 +0100

    WL#8069: Post-push fix: Moved consistency check for LCPs to after writing data file to ensure this is available for analysis in case of a crash
    
    (cherry picked from commit 23a86ffc769dd6d43eb9a0682fda40e33fa3ab16)

commit e8bebbb7ad1331a37d56bfac57e2cb9531b3bdc7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:31:37 2018 +0100

    WL#8069: Post-push fix: Added two new test cases for initial node restart
    
    (cherry picked from commit 3386a159336ca2bebf3d6706bdeb09dfa748d4fc)

commit 97e23ab7c57e4b9e35ec412b2a45786ed7fc9040
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:29:35 2018 +0100

    WL#8069: Post push-fix: Verify page list cannot be used with large page caches
    
    (cherry picked from commit 3cd883f2ade139f69847f76e5c8dacb8ea767c2b)

commit 2b30b33fd092cc6677a7a4fb267b3a4de048d7b5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jan 18 16:27:37 2018 +0100

    WL#8069: Post push fix: Added a bit more debug printouts
    
    (cherry picked from commit 3676c4eac78a59126293ea32b25b73522e3e5a7a)

commit dff31555707eda65d5b1426ccf725d8dc060f6fd
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue Jan 16 10:51:03 2018 +0100

    WL# 8478: Undo log speedup
    
    MTR test case cleanup.
    Drop table using SQL query instead of ndb_drop_table.
    
    (cherry picked from commit adad49ad7d670f0917b02c19c09d60dbc479ee52)

commit a05b2c32804baa6e4842ddeb1760ed8d2a48e869
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Thu Jan 11 18:33:25 2018 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    MTR test cleanup.
    
    (cherry picked from commit f5c4cd8d7045164768fea8c566695ba9f0c035cb)

commit 4c90abdd22ea1d23ee19122011feb86cf82e513b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jan 8 14:26:24 2018 +0100

    WL#8069: Post push fix: Rearrange debug output such that tree can have debugging in debug builds without having it in production builds
    
    (cherry picked from commit 6d1873417a3cdacd00df4d8834576b48edc1931b)

commit 45d35181ea83152f2e45216fda65c1a637fa8e51
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Dec 22 15:25:03 2017 +0100

    WL#11128: Post-push fixes
    
    (cherry picked from commit 645186a187d420dae662492f07b5b60d1b66f6eb)

commit efa419d3b2734e40a0a848e7d06be84be0313e45
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Dec 14 19:13:24 2017 +0530

    Bug#27130570 : ASSERT IN DBLQH::SENDKEYINFO20()
    
    Dblqh::sendKeyinfo20() method skips amending the actual keyinfo, if the
    request is from a SUMA block from the kernel as the block is only
    interested in the scanInfo_Node detail. The sender BlockReference is
    used to find out if the request is from a SUMA block. But in certain
    circumstances where multiple NDB objects are being used parallely from
    an API node, the block number extracted from the blockreference is same
    as that of a SUMA block even though the request is coming from an API
    node. Due to this ambiguity, the Dblqh mistakes the request from the
    API node for a request from a SUMA block and crashes. This patch fixes
    that by checking node ids before checking the block number.
    
    (Already pushed to higher versions so null merging up this commit)
    
    (cherry picked from commit 542e299ec7bc8008dc0a52aba091a5af9cda77bd)

commit 6efa024cfa4850cc871289c1b241a1b61f36911e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Dec 21 15:39:36 2017 +0100

    WL#8069 Post-push fix
    BUG#27245083
    We are using two different methods to distinguish whether a page have
    already been handled by LCP scans. The first one is a flag on the
    page. This flag is set when the first alloc/dealloc of a page during
    an LCP scan is an allocation, in this case set the page flag to
    indicate that the page can be skipped since we had no rows in the
    page at the start of the LCP scan.
    The second variant is used when the first event is a release of the
    page. In this case we set the lcp_scanned_bit in the page map.
    Later alloc/release of the same page will not touch any of those
    flags.
    
    The reason that we have two approaches dependent on whether the
    first event is alloc or release is that we need to know the page
    state at the start of the LCP scan to properly set the last LCP
    state in each page during the LCP scan. If we only use one flag
    we will lose the vital information about what the state of the
    page at the start of LCP was.
    
    (cherry picked from commit a5c75db7af7916d2a91b324ad4079ee32e4e53fd)

commit 3cfa91206a06b42a73cc34387e272663b19b8783
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Dec 21 13:49:41 2017 +0100

    WL#8069: Post-push fix, improve testing for PLCP_3
    
    (cherry picked from commit 9c05d933e599c6634f8f8db8ed2d8fab5559ea7b)

commit 34eeb5eb33a2067152d0fe033042d15974ae4fb4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Dec 21 13:47:12 2017 +0100

    WL#8069: Post-push fix, align debug printouts of rowid to row(x,y), more debug printouts
    
    (cherry picked from commit 2fb53149a982ff4d78e2b6749c9214f80f5ca8d3)

commit d932146dcded2be067d11263a309247a5ba2a71f
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Dec 18 13:15:46 2017 +0100

    WL#8069: Enabled some debug output, more printout before crash, a minor switch of two calls for clarity
    
    (cherry picked from commit 47231e2fbaeec301b024729ed581237eccfe38ad)

commit d10ee0cf95ce25b7149e12f1c4e1c94b6536c627
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Dec 11 15:39:06 2017 +0100

    WL#11128: Post-push improvements to MCC
    
    (cherry picked from commit 6b6790231f58c6c7ebb8981147fc3448271cd22d)

commit 667498d82a14f21038f1dfd195cf1538528ac56a
Author: John David Duncan <john.duncan@oracle.com>
Date:   Wed Dec 6 14:17:22 2017 -0800

    Add license text to copyrighted README files under storage/ndb/nodejs
    
    (cherry picked from commit d169b0b60086fed9c14ba148ec6a3da023c30e54)

commit 24cd60c08c26d3228454a2a59ae13b2b0bc3be9c
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Dec 6 17:51:28 2017 +0100

    WL#11128: Post-push fixes for MCC
    
    (cherry picked from commit df3714b3830d77884a3e1b357d309253251b5d6c)

commit 5f0490a03493e5cb7f8ab0634814b0d01095eaf2
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Dec 4 11:54:02 2017 +0100

    WL#8069: Post-push fix, remove leftover debug printouts
    
    (cherry picked from commit 7a3b49a7530056bcb06bd5d2198ebc96113ccb98)

commit f4c6ba0a09c0f742ccd0b922b6fb056dc1996cec
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Dec 4 11:04:46 2017 +0100

    BUG#25835748: Post-push fix, check for is execution thread and spintime was wrong way, needed a exclamation mark for negation
    
    (cherry picked from commit 076aa0ff88b85f2e14c645f899ca487e3d489cd8)

commit f1fe066622955c046f8dc19a167c48826dbb022d
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Dec 13 08:13:43 2017 +0100

    Disable maintainer mode for debug build on Ubuntu 17.10
    
    The platform comes with GCC 7.2, which has new warnings causing
    build failures with MYSQL_MAINTAINER_MODE=1
    
    (cherry picked from commit e81de883489098c91c6d3f3484da8cf22a4168a6)

commit d21d12b63b9092a34f788cfd512c21b922c7f255
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Sep 19 18:30:45 2017 +0200

    Bug#26825211 BACKPORT FIX FOR #25643811 TO 5.7
    
    Backport relevant parts of patch for:
        Bug #25643811: MYSQL DOES NOT COMPILE WITH GCC 7
    
    Change-Id: Iafc7bc70b3621e12b484694ff927fb15e21ac5d2
    (cherry picked from commit d6d46a76f58229efd7dea7633068c67b148b89ed)

commit 83e6eb4a70e538ffe5865b9c6700a89a302602be
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Sep 13 08:13:49 2017 +0200

    Deb packaging: Add support for Ubuntu 17.10 (Artful)
    
    (cherry picked from commit 5a0a83243a6aecbdc694fb63b1c0b3832c0111ee)

commit a54de881fbfdc5a5688ea40146b4c3ee0dfdc911
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 30 10:44:34 2017 +0100

    WL#11128: Post-push fix

commit d5c198f2cc4c003e19521cf19b2ebb7ad521506c
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 29 16:47:27 2017 +0100

    WL#10172: Post-push fix, decrease size of test

commit f48a7a59f0f53cd5e18a743e728ab2b5353ee71f
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 29 16:05:29 2017 +0100

    WL#11128: Post-push fix, add Safari as supported Web browser

commit 8c482cf9c5ebeab48b3112133ea13b16d85630c5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 29 15:05:13 2017 +0100

    WL#10172: Post-push fix, ndb_read_location_domain test doesn't work on SPARC

commit a28615569b01f6a3d874b1d1798d70c723868bf2
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 29 15:00:27 2017 +0100

    WL#11128: Post-push fix, BOLD tags not ended properly

commit 607ced25fa263c2994f3f061fc6e72e3ae769f0e
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue Nov 28 11:51:38 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    Code refactoring for better readability.

commit df5371e88c554dd9a22e04d65a96f7d83e0fcb64
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 29 12:17:00 2017 +0100

    WL#11128:
    Introduced storing a MCC config file in web server instead of using
    cookies. This removes any size limitations on the MCC config.
    The config is protected by passphrase.
    Fixed InternalIP address handling field to hosts
    Ensured that localhost cannot be mixed with remote hosts
    Fixed things to make MCC work with remote hosts on premise and in the
    cloud.
    
    WL#11289
    Make communication between web client and web server use https by default
    since we now use a password on each MCC config file.

commit 40ca5d659729aa78716d83d9938855421feadfc0
Merge: d906fb7 15b3ab1
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 29 00:37:53 2017 +0000

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 15b3ab110fad3c8093a128b8d68a0329cf468dbf
Merge: 6a98090 4370be3
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 29 00:37:05 2017 +0000

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

commit 4370be358b127907b5c232c6a45631fb612189e1
Merge: 6c988c6 ae5f18b
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 29 00:35:41 2017 +0000

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

commit ae5f18b1f0efadfe90019ce515010f12c49764c6
Merge: 97d35dc 552870f
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 29 00:34:34 2017 +0000

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

commit 552870f045b181e3935e7ddfbce6e30a06302bea
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 23 11:18:11 2017 +0000

    BUG#27166613 Ensure ATRT waits for processes to be undefined before (re)start
    
    While CPCD is of asynchronous nature (i.e. when requesting to start a process
    does not necessarily mean the process has started when the method returns)
    ATRT assumed CPCD was syncrhonous. Hence, when ATRT restarted a process it
    could happent that it would start a process before it has completely stop
    leading to test run failures.
    
    The main change was to add logic to wait for a process to stop. This logic
    must be used after stopping a process or a set of processes.
    We did not make wait for process stop part of the stop logic to prevent
    refreshing state every time we want to stop a process and to allow stopping
    several processes in one go, and then waiting for those to finish also in
    one go.
    
    The above change additionally required that process status update is done
    via update_status method only, hence emoving wrong assumptions about the
    processes life-cycle (e.g. when saving a process, first perform stop, and
    then save its status).
    
    Additionally, we made CpcClient connection more robust by checking that
    messages are actually sent and received (prevent erroneous usage of the
    API before connection is open).
    
    Finally, added extra logging to ATRT to be able to more easily diagnose test
    failures.
    
    NOTE: There's an interesting situation when resetting processes configuration,
          we start by stopping the management nodes first and then the data nodes.
          Stopping the second last data node, causes the last data node to quit
          by itself (watchdog). We updated the logic not to fail on this scenario.
          However, a better approach would be to reverse all this logic, stopping
          first all the servers, then the data nodes, and last the mgmd nodes.

commit d906fb71538c44e7d0b51440e7923fc4e3a26ef1
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 27 12:46:19 2017 +0100

    BUG#25835748 and WL#10172 post push fix, don't run ndb_read_location_domain and ndb_restore_indexbuild test on Windows

commit 2a7986bd72544d6b49334e05aa03c8bae1eb26bf
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 27 12:19:58 2017 +0100

    BUG#25835748: Post push fix, introducing g_eventLogger into mt_thr_config.cpp caused link issue on Solaris, changed to use printf instead of g_eventLogger

commit ee633b5b0dce04be3147a07a07272b8b7569601a
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue Nov 21 12:07:05 2017 +0530

    Bug #27129545: WL#8478: NODE CRASHED DURING RESTART WITH ERROR "PGMAN (LINE: 2286) 0X00000002 C
    
    The undo record data is stored in a buffer managed by LGMAN.
    In DBTUP(0), a copy of this(through LinearSectionPtr) is sent to the LDM threads.
    However, before this copy is made, there can be a signal sent to PGMAN from DBTUP(0).
    This gives a chance to LGMAN to overwrite the undo record data buffer.
    Hence, for cases where a signal is sent to PGMAN in DBTUP(0), save the buffer in c_proxy_undo.m_data
    Also improve testability of the assumption that LGMAN assumes DBTUP does not rely on keeping
    the buffer pointer valid.

commit 44a9493a9214199d84e2a9a67c8cc9d64e890122
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Thu Nov 2 15:54:14 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    Add disk tables to autotest test cases related to undo logs.

commit bf95f1581c179245800ec0f32e1e5d288621b619
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Thu Nov 2 15:44:39 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    MTR Test case
    -------------
    
    Steps followed:
    
    1) Create disk tables and do some basic operations on them.
    2) Start LCP so that disk table pages flushed to disk.
    3) Restart one data node in "no-start" mode.
    4) Insert error 7248 to that node for the latest LCP to be
       invalidated, so that the undo log records till the previous LCP
       are applied.
    5) Start node and wait for it to start.
    6) Make sure tables are intact.

commit b2abacabe01f91c32a811b995691eca24c052677
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Thu Nov 2 14:46:26 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    Enforce ordering of application of undo records for a given page
    in the LDM threads.
    
    With parallel undo log application, many undo records can be sent to the
    LDM threads without waiting for the LDM threads to finish applying them.
    Before applying a log record, we must fetch the page (get_page) and
    sometimes, if the page is not available immediately, we have to wait for it
    before the log record can be applied. Waiting is done by periodically
    checking if the page is available (do_busy_loop()).
    However, between the checks, a subsequent log record belonging to the same
    page might get processed. This is because multiple log records are sent from
    LGMAN to the LDM threads continuously without waiting for the LDM threads to
    finish applying them. (WL8478)
    This subsequent log record will try to get the page as well and might succeed.
    This will result in unordered application of the undo records.
    The solution for this is to order the undo records belonging to a page.
    This is done by maintaining a queue of undo records received in LDM per
    page and applying them in order when the page becomes available in the
    page cache

commit 11c7d9aac6e62aca4bc0d7832d828a1d3070ef1f
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Mon Jul 10 17:05:19 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    For record types that require serialization, do not continue fetching
    log records in LGMAN until all the pending records have been applied.
    
    Record types that require serialization are UNDO_LCP, UNDO_LCP_FIRST,
    UNDO_END, UNDO_TUP_CREATE, UNDO_TUP_DROP.

commit fbc682df34230318a9a1365ae506ca296ddbeda6
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Mon Nov 13 16:47:16 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    Allow negative counts for pending records since it is not guaranteed
    that the CONTINUEB from DBTUP(0) will be processed before the CONTINUEB
    from LDM threads.

commit 5c95c9b26868013fee4c96376405315d3918e47c
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Mon Jul 10 17:05:18 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    Keep track of the total number of pending records and the number
    of pending records for each LDM thread.
    Enforce limit on the number of pending records per LDM thread.
    When this limit is reached for any LDM thread, LGMAN doesn't fetch
    the next undo record until that LDM thread has completed applying
    at least one undo log record.
    
    This does not include the pending records for records that require
    serialization.
    The numbers are applicable only to records of type UNDO_TUP_ALLOC,
    UNDO_TUP_UPDATE, UNDO_TUP_UPDATE_PART, UNDO_TUP_UPDATE_PART,
    UNDO_TUP_FREE and UNDO_TUP_FREE_PART.

commit 00746fd3b35870ace939ee28ed2ebf8f4250144f
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Mon Jul 10 17:05:17 2017 +0530

    WL #8478: UNDO log speedup- parallel LGMAN applying
    
    Eliminate the wait in LGMAN for LDM to complete the record execution,
    proceed to process the next record after a record has been sent to
    LDM thread for applying.

commit ee259b3b7f75e48fea98927c17c60a8f9c85ddcb
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 10:22:25 2017 +0530

    WL #10194: Read table and fragment id from extent in extra PGMAN worker in UNDO log applier
    
    Remove most of the need to query PGMAN from rep thread and instead
    use TSMAN data structures. This will remove the need to fetch the page
    in two different threads.
    There will be some extra interaction with TSMAN that requires mutex
    protection instead, but this should be much faster.

commit 23b00623aa73f2354c4b3aab3ea844728b7a47f6
Merge: 649b935 6a98090
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 23 22:12:51 2017 +0000

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 6a980908f248051c07a463d83c0c6b96d4736023
Merge: 1259330 6c988c6
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 23 22:10:56 2017 +0000

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

commit 6c988c66f19b381dd8edf1d8afc441cdbdf52b8b
Merge: f266a2a 97d35dc
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 23 22:06:13 2017 +0000

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

commit 97d35dce1306d97307d398bbad71c19828bd7a04
Merge: 5b197ca bccecb0
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 23 22:01:06 2017 +0000

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

commit bccecb0a74a5ada3372f6a7093c3d5346aaf9eda
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Oct 26 18:20:34 2017 +0100

    WL#11215 Support for custom processes in ATRT
    
    Custom processes are any kind of process running during all test execution.
    These processes are normally servers receiving commands from a test enabling
    load to be distributed through those processes.
    
    To specify a custom process the [cluster_deployment] group is used. Example:
    
      [cluster_deployment.2node]
      proc:executor=host1,host2
    
    The above group, defines for cluster's ".2node" a custom process called
    "executor", having two instances, each in host1 and host 2.
    
    Options for the above-defined custom process can be defined using the
    process name. Example:
    
      [cluster_deployment.executor.2node]
      cmd = Executor.sh
      generate-port = true
      cpuset = 1
    
      [cluster_deployment.executor.1.2node]
      args = --arg1
    
      [cluster_deployment.executor.2.2node]
      args = --arg2
    
    The first group defines options that are common to all "executor" processes,
    "cmd" specifying the binary to be executed, "args" (not used here) specifying
    binary arguments, "generate-port" flag defining if a "--port=N" argument should
    be generated, and "cpuset" cpu binding for the process (feature previously
    implemented, that remain as was).
    
    The second and third groups, define options that are specific to each
    "executor" instance. Any option defined in such groups will overwrite any
    previously defined option.
    
    For all defined custom processes, a global variable will be set in the
    environment of API and Client processes. This is necessary to allow tests to be
    able to discover/connect to those custom processes. Example:
    
      EXECUTOR_CONNECTSTRING=host1:14100,host2:141001
    
    in which the custom process name is capitalized and the _CONNECTSTRING suffix
    added. Each defined host for that process will be added (hosts separated by
    comma) and, if "generate-port" option is set to true for each process, the port
    number will be set as ":PORT_NO".

commit 649b935114bcea301115644c0fa05b697bfd185c
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 23 17:27:25 2017 +0100

    WL#10172
    Introduce a new configuration parameter LocationDomainId that can
    be set on API nodes, MySQL Server nodes, data nodes and MGM nodes.
    Transactions will be placed in the same location domain id mostly
    and reads will if possible use a replica in the same location domain.
    
    This concept can be used to map Availability Domains/Zones in cloud
    installations to ensure that we focus on reading in the same
    AD/AZ rather than in a different one.

commit 93a1f1cc922bc1237f83683dc408620d7122361a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 23 17:05:21 2017 +0100

    BUG#25835748
      Adding :
        - Whether a thread is an exec thread or not
        - The concept of fixed vs temporary thread types.
          All existing thread types are fixed thread types
          Temporary thread types are types which threads become temporarily.
          They may be bound to cpusets which overlap with permanent thread types cpusets
    
      The SparseBitmask class is extended with a bitOR function, allowing one SparseBitmask to be merged in to another.
    
      A new IndexBuild thread type is added.
      This is different to the existing thread types as it is not a permanent type
      of thread, but rather a transient state of a thread.
      IoThreads can rebind to this thread type's properties at runtime, while they are building ordered indexes.
      This allows users to configure any kind of cpu locking they like for Index Build threads, independent of the IoThread locking.
      By default :
        - IndexBuild threads will be unlocked
        - If IoThreads are locked in some way
        - IndexBuild threads will be locked to the set of *all* cores defined for the ndbmtd (e.g. LDM, TC, recv, send, IO...)
    
      The rationale here is that offline index build occurs in situations where it is the only relevant
      task in the cluster (SR, NR, ndb_restore --rebuild-indexes)
    
      This means that :
        - Users who currently have IoThreads locked to a subset of all cores defined
          for the ndbmtd will see greater potential IndesBuild parallelism, with no changes
        - They can get the old behaviour back by specifically locking IoThreads to the same cores as IndexBuild threads
        - Users can set any locking they like for IdxBuild threads
    
      Oddities :
        - The number of IndexBuild threads comes from elsewhere, the count is ignored (Similar to IoThreads)
        - The realtime property is ignored
    
      Make calls to use the new IndexBuild thread type mapping for the duration of each offline index fragment build
    
      MTR testcase giving some coverage of offline (and online) index build with parallelism via ndb_restore.
    
      Make TwoPassInitialNodeRestartCopy the default setting
    
      Make build index threads parallel default
    
      Fix of BUG#26928111 that could have caused unlock to main or recv CPU locking for Linux platforms

commit f9f8fc8eeb52638a16b5170fdf500a5f0838d866
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Tue Nov 21 13:46:14 2017 +0100

    Fixing some sporadic 'table full' test failures.

commit bd1b986b44719b0ee2b3ec858df74d7d2b3a2bc8
Merge: 59232a8 1259330
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Nov 17 18:14:05 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 1259330f29e50f0293c2171e85d9bf84c54a0469
Merge: d1038e7 f266a2a
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Nov 17 18:13:43 2017 +0100

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

commit f266a2a6b5d2e59c28f30c7487a3b3b32c3957f9
Merge: 3be78e7 5b197ca
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Nov 17 18:13:08 2017 +0100

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

commit 5b197caea34721529574cd9537d182c315875cc5
Merge: 4831438 d1e2fbf
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Nov 17 18:12:44 2017 +0100

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

commit d1e2fbf4e5da7fa34253492f20aa82662d76f919
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Nov 15 22:56:56 2017 +0100

    Bug#27125787 CPCD PROCESS MONITOR DOES NOT HANDLE TRANSITION FROM STOPPING TO STOPPED
    
    Better handling of process statuses when stopping a process:
     * After stopping, only processes no longer executing are marked as stopped
     * Processes that didn't immediately stop will keep status STOPPING and handled
       by monitoring
    
    Make cpcd process monitor (repeatably) kill process with SIGKILL if nice
    shutdown (SIGTERM) takes longer than 5 seconds.
    
    Made cpcd always remove process definition when undefine process have been
    issued for process and process has stopped.
    
    undefine process no longer returns failure when process is still running
    at the time, only if process is not defined or undefine is already in progress.
    
    Change contributed and reviewed jointly with Tiago Alves.

commit 59232a8a395cce05bd5e387652d36f430e7978c5
Merge: 7fd4725 d1038e7
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Nov 16 22:27:22 2017 +0000

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit d1038e73c6e59582cfdf605353ff19529b5271d7
Merge: 7470ff5 3be78e7
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Nov 16 22:26:58 2017 +0000

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

commit 3be78e71a001e93f38ecbe61d0e202a3ebab582b
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Nov 16 22:23:59 2017 +0000

    Bug#25965370 NDB : LQH CAN EXCEED 4 CONCURRENTLY
      OPENED FILES PER PART DURING RESTARTS
    
    During restart, the LQH component in the data node loads redo
    log part metadata for each redo log part it manages, from one
    or more redo log files.
    
    Metadata is stored per megabyte, and each file has a limited
    metadata capacity, so the number of files which must be consulted
    depends on the size of the redo log part.
    
      (NoOfFragmentLogFiles * FragmentLogFileSize)
    
    Files are opened, read and closed sequentially, but the close
    of one file occurs concurrently with the open of the next.
    
    In cases where file close is slow, this can result in more
    than 4 open files per redo log part.
    
    As the files are opened with the OM_WRITE_BUFFER option set,
    this can result in more than 4 chunks of write buffer being
    allocated per part.
    
    As the write buffer pool is finite, if all redo log parts
    are in a similar state, it may be exhausted, causing node
    shutdown.
    
    The solution chosen is to avoid using the OM_WRITE_BUFFER
    option during metadata reload, so that transiently opening
    more than 4 redo log files per part does not cause node
    failure.
    
    A new ERROR_INSERT is added to slow file closure for metadata
    reload, allowing manual testing of the fix.  No automated
    testcase is added as there is a requirement for large redo
    logs.

commit 7fd47251e4d97c0a97a425541e7cbfc1427f7cea
Merge: 032d2fa 7470ff5
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 15 16:04:50 2017 +0000

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 7470ff59e85833dac7ced4e749f9f84012bc706c
Merge: 0017e3f 86d92c2
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 15 16:03:45 2017 +0000

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

commit 86d92c2b5acb714251146f7698fb2fae1f98e214
Merge: 1a17670 4831438
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 15 15:59:18 2017 +0000

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

commit 48314387302cb5b813c83b0eacc81c8040b43ed6
Merge: 3259228 f1cad74
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 15 15:57:12 2017 +0000

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

commit f1cad74a8f417a9c0422d4dc47f0206ff620da13
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Nov 15 15:29:12 2017 +0000

    WL#11408 Exclude mysqld data folder when gathering atrt test results

commit 032d2fa59d982d4761131a1607a8bc0a6196fe37
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 15 13:37:00 2017 +0100

    WL#8069: Post-push fix: Fix test case testSystemRestart -n SR4 T6

commit f800a5cd84478834d1af5c9557f67ac79c927e51
Merge: 676a6c1 0017e3f
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 14 14:32:16 2017 +0000

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 0017e3f9e560b319bd46e9144d7c0d1cd0c9989e
Merge: d2bec28 1a17670
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 14 14:30:00 2017 +0000

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

commit 1a17670f242dcdf9943fd0d0f5c25fa5ff896215
Merge: 81b23e6 3259228
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 14 14:25:16 2017 +0000

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

commit 3259228a9a57987bc6cc06d9a0ceeaa9c762ff9b
Merge: e6f3335 cb7eb06
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 14 14:24:19 2017 +0000

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

commit cb7eb06035d3b211fe1628c117d9d57700c9fffd
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Mon Nov 13 19:32:33 2017 +0000

    WL#11179 Refactoring to remove exceptions usage and fix build break

commit 676a6c1c00cf49e6cf45f037a3f2e5f4259a5456
Merge: a7e3698 d2bec28
Author: Ole John <ole.john.aske@oracle.com>
Date:   Tue Nov 14 12:47:10 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit d2bec2831371b5e35f32782e793cf00b99de32bc
Merge: 6d84ab2 81b23e6
Author: Ole John <ole.john.aske@oracle.com>
Date:   Tue Nov 14 12:40:36 2017 +0100

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

commit a7e3698b89e6cac6f6a9600d3d5c9a62879c1222
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Nov 14 12:15:42 2017 +0100

    WL#8069: Post-push fix: Fix ndb_backup_rate testcase, ensure that deprecated config variables can still be set with same min and max values as before

commit 81b23e6ff9a2fb1214188588d3b47c5a881ff65f
Author: Ole John <ole.john.aske@oracle.com>
Date:   Tue Nov 14 11:30:35 2017 +0100

    Bug#27115551 	CLEANUP OF 'CLASS NDBWAITER' IMPLEMENTATION AND ITS USAGE
    
    Cleanup of bad coding in class NdbWaiter, no functional changes
    
    Main issue was that NdbImpl destructor assigned 'theWaiter = NULL' without
    theWaiter being declared as a pointer at all.
    
    That compiled by accident as the NdbWaiter c'tor took a trp_client*.
    This the NdbImp d'tor effectively constructed a new NdbWaiter object and
    assigned that to theWaiter.
    
    Patch also removes some unused or unneded methods.

commit a2e6ceac00c8bc9c39b136a92706966f1731f3c2
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Nov 14 11:27:54 2017 +0100

    WL#8069: Post-push fix, fix compiler warning

commit 670d3a2d62413bf260eb23a2ff2d97cfb829fd2d
Merge: aab8bc4 6d84ab2
Author: Ole John <ole.john.aske@oracle.com>
Date:   Tue Nov 14 10:47:08 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 6d84ab2b7abc667aa39cae923d91dcd81ae33513
Merge: 1651543 9ae35a0
Author: Ole John <ole.john.aske@oracle.com>
Date:   Tue Nov 14 10:46:46 2017 +0100

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

commit 9ae35a096f087fdd0de4f266353cbe07895b3b34
Author: Ole John <ole.john.aske@oracle.com>
Date:   Tue Nov 14 10:45:22 2017 +0100

    Bug#27090300 TEMPLATIZE TRANSPORTERREGISTRY::PREPARESEND() AND ITS 'PACKER' UTILITY METHODS
    
    Patch rewrite the methods TransporterRegistry::prepareSend,
    Packer::getMessageLength() and Packer::pack() as templates.
    
    That saves us from having 3 almost identical variants of these 3 methods,
    just taking different 'section' arguments.
    
    The patch is a plain refactoring - no functional changes.

commit aab8bc4ae6c52c643d1a9032ff3b3e5ad5b2ce7b
Merge: add2385 1651543
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Mon Nov 13 15:23:28 2017 +0000

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 1651543d253004908e2c0cd3f3f9e82ec2621686
Merge: c5eff03 f3500dd
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Mon Nov 13 15:22:38 2017 +0000

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

commit f3500dd325e7f8c57d8761956da495f8229762b5
Merge: f1f4a49 e6f3335
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Mon Nov 13 15:18:24 2017 +0000

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

commit e6f3335ccb3b0122668fd4566a058d1ae9a3f4a8
Merge: e70da4a bb3b928
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Mon Nov 13 15:14:35 2017 +0000

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

commit add2385f9b6885b100aacc34e260a18202c19727
Merge: 8470647 fefe045
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 13 16:09:14 2017 +0100

    Merge remote-tracking branch 'origin/mysql-5.7-cluster-7.6-wl8069' into mysql-5.7-cluster-7.6

commit bb3b928692c20e5f23e41af4ae661bd728d4e1cb
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 9 23:15:13 2017 +0000

    WL#11179: Apply Google coding style using clang-format

commit 4270351f3cd13bb3cd9df49e2b3863c668ebcc54
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Oct 18 15:33:51 2017 +0100

    WL#11179: Add atrt support to set processes' cpu affinity
    
    This feature introduces a new my.cnf configuration group called
    'cluster_deployment' and a new option called 'cpubind'.
    This configuration group is read only by atrt and group hierarquies are
    supported.
    The 'cpubind' option can receive a list of cpus (format "CPU0,CPU1,...") and
    will make the process locked to the specified cpus. If no option is set, the
    default behavior applies, and processes are free to run in any available cpu.
    Although this feature was developed mainly to lock mysqld processes to
    specific cpus, it works for locking cpu for tests or any ndb process.
    
    Examples of configuration are:
    
      # Applying cpubind to all processes in all clusters
      [cluster_deployment]
      cpubind = 0
    
      # Applying cpubind to all mysqld processes in '.2node' cluster
      [cluster_deployment.mysqld.2node]
      cpubind = 0
    
      # Applying cpubind to ndb_mgmd's processes in '.2node' cluster
      [cluster_deployment.ndb_mgmd.1.2node]
      cpubind = 0
    
      [cluster_deployment.ndb_mgmd.2.2node]
      cpubind = 3
    
    NOTE: This feature supports Linux only.

commit 32b755f96a637b3aa86ceee8ac051287c6b2424d
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 9 11:58:01 2017 +0000

    WL#11179: Add support in CPCD for setting cpu affinity
    
    Add support for optionally setting the cpu affinity set of a process via the
    'cpuset' argument when defining a process.
    
    'cpuset' accepts a list of CPUs in the format CPU0,CPU1,... and the process
    will be locked to those cpus. This feature is supported in Linux only and
    setting cpu affinity in other OS will result in a failure to start the process.
    If cpuset is not set, the default behavior of allowing the process to run
    freely on any cpu applies.
    No validation is done for invalid CPU values or format (e.g. -1, a number
    higher than the total available CPUs, or any formatting issue).
    
    Additionally fixed the datatype of the 'env' and 'args' command's argument
    to make coherent with the types specified in the API.

commit 18a40268b728dc912458f70a11cb1b30023ff6cd
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 9 12:30:27 2017 +0000

    WL#11179: Add protocol version handling when connecting to CPCD
    
    Support for different CPCD versions is added to be able to allow older clients
    connect to CPCD while enabling future functionalities to be added.
    
    Newer versions of CPCD client, will start the connection and set the client's
    protocol version. If that protocol is supported, CPCD will enable any feature
    supported in that version. If protocol is not supported (client newer than)
    CPDC, connection will fail.
    Older CPCD clients will not attempt to set protocol and hence CPCD will default
    to the oldest possible protocol, hence ensure full compatibility with those
    clients.
    
    Change contributed by Mauritz Sundell

commit fefe0452fc7ff852ef2d2661625c2f72692909a7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 13 15:35:09 2017 +0100

    WL#8069: Add a number of test cases specifically testing WL#8069 functionality

commit 01c22482cfe7a28543ac93b88f16f4ccd01ef12d
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 13 13:31:56 2017 +0100

    WL#8069: Disabled all special debug options in preparation for push

commit dd6a70c62443f121768a7b92b82e1febb47394d3
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 13 13:03:49 2017 +0100

    WL#8069
    Made BackupDataBufferSize, BackupWriteSize, BackupMaxWriteSize hardcoded
    Ensured EnablePartialLcp = false uses only 1 LCP file for highest level of
    compatibility with old behaviour

commit d521a50ef8cfef3bc2b1230cc52d5dfbde98386c
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Nov 10 06:28:16 2017 +0100

    WL#8069: And yet some more debugging of scans to find why the stop progressing

commit b23ea83e50abdd31cb3ac30f648612ce5d55b6dd
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 9 22:18:13 2017 +0100

    WL#8069: A bit more debugging options to find bugs

commit 93e3293b07fdafa90099bdfdb9b85db7a9dedc1b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Nov 7 07:59:24 2017 +0100

    WL#8069: Fixed SR4 test case

commit 5d6fb50eb6c78574791528e329080c591fcf7d7a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Nov 6 09:27:20 2017 +0100

    WL#8069: Removed T17 and T18 for now, added more index checks in LGMAN

commit acb24e11610920bd84a3f7de616a4881cf5ac5c4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Sat Nov 4 10:52:27 2017 +0100

    WL#8069: Hugo framework cannot handle super large attributes, split large column in T18

commit 07530696745ff40fd5d90ef7418477a8a57778a7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Sat Nov 4 10:24:59 2017 +0100

    WL#8069: Changed to send SYNC_PAGE_WAIT_REP as direct signal to avoid overhead of sending at A-level and sending at B-level from extra PGMAN worker

commit 2c605ef9fe30f386ec462ca3b26c1a0aeb759bff
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Sat Nov 4 00:00:26 2017 +0100

    WL#8069: SYNC_PAGE_CACHE_CONF was sent on A-level, so is necessary to send also SYNC_PAGE_WAIT_REP on A-level to avoid SYNC_PAGE_CACHE_CONF coming before the SYNC_PAGE_WAIT_REP signal

commit 6227a09cc20ae890efd7ac3c736bd222dc3eca4d
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Nov 3 23:20:09 2017 +0100

    WL#8069: New large test table needed to use Longvarbinary since more than 255 bytes long

commit 56c0573940ac81d537858296cb1b7fde4a396d3f
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Nov 3 20:40:59 2017 +0100

    WL#8069: Fixed such that also final SYNC_EXTENT_PAGES_REQ is protected from LCP watchdog, changed to different syntax for atrt-gather-result.sh that for some peculiar reason seem to work better

commit 767bd800d7a48aa818ff2181bb47ac64ad9134dc
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Nov 3 13:29:25 2017 +0100

    WL#8069: Ensured that LCP watchdog now also watches over sync of disk data pages and extents and over all data files in close process

commit ac8c1fbafd7c46dac6422606a5d7cb0f496a28da
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 30 10:18:31 2017 +0100

    WL#8069
    START_NODE_LCP_REQ was sent while we were executing local LCP.
    This meant that we had two conflicting updaters of c_keep_gci_for_lcp
    and c_max_keep_gci_in_lcp. Previous fix to remove change of
    maxCompletedGci based on those values fixed one issue and got another.
    So simply abstaining from sending START_NODE_LCP_REQ unless we participate
    in the distributed LCP should solve the issue.

commit 5e7bfd20afe752b4e71afb7d2a57ee362c47791c
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 26 01:47:58 2017 +0200

    WL#8069
    More work on ndb_print_backup_file
    More paths coverage tested
    Various debug flags reset
    
    We relied on that the GCI received in START_NODE_LCP_REQ could
    be used as maxGciCompleted. This wasn't true since we could be
    in the final phase of a local LCP as part of the restart at this
    point in time. Given that this was merely an optimisation, the
    code to check this variable was simply removed to ensure that
    even if slightly more GCIs have to be executed during restarts,
    the restarts will be much safer.

commit 32bffd95d9820504b735ecf343a0e7c7614404ce
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 25 19:00:24 2017 +0200

    WL#8069
    1) Ensured that ndb_print_backup_file checks for entries already existing
       and prints a bit more in verbose level
    2) Ensure that LQHKEYCONF and LQHKEYREF to RESTORE block executes as
       EXECUTE_DIRECT to ensure that we can check error codes immediately
       and to speed up restore process.
    3) Fix a few spelling errors
    4) Fixed a bug in handle_lcp_drop_change_page where I had an ndbrequire
       on header size that compared with 20, this was thought to be in bytes,
       but in reality header size is in words, so changed to 5, also added
       room for not using a checksum word, so changed to 4.
    5) Added a bit more debug statements in RESTORE block
    6) Introduced a new method in restore execution called
       handle_return_execute_operation
       This method checks if INSERT or WRITE hit error code 630.
       This could happen due to that restore not only insert rows, it
       also insert keys in hash index. So when inserting a row one could
       have the key already inserted. This key is going to be removed
       later, but since we are executing in rowid order we can hit a
       temporary state where we have a key defined that is to be deleted
       later. The same happens in node recovery and is handled by
       nr_copy_delete_row.

commit 58a46b8652f45e57fbfb45338d2427dbabd0ccd9
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Oct 24 02:40:17 2017 +0200

    WL#8069
    1) Fixed a bug where we updated after calling a function.
    However the function only returned after calling a lot
    of other functions. So the lists had to be updated before
    calling the function. This is due to scans using up to
    5 recursive calls in the stack.
    2) Added a few more debug statements
    3) Disabled a bit of the debug stuff

commit 074d0128865d0fd9ae43ff24fb74ce41139ed64a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 23 23:08:00 2017 +0200

    WL#8069
    1) Added a number of ndbassert(false) to check for code coverage of
    complex parts of the partial LCP implementation.
    2) Implemented 5 new test cases on table T17 PLCP_1 through PLCP_5
    to ensure that those code paths were executed and correctly executed
    by executing a restart afterwards.
    3) Added a bit more debugging around bugs found by those test cases.

commit f39d1ff4c5cec79dace11e788b022d2e725b75eb
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 23 13:40:08 2017 +0200

    WL#8069 Temporary

commit 1d113b50a37e12c86512cc3f5c774a58a4784c45
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Oct 20 23:18:42 2017 +0200

    WL#8069
     Solved a set of serious bugs around handle_lcp_dropped_change_page
     1) The variable all_part wasn't properly initialised.
     2) The check for is_rowid_in_remaining_lcp_set used a check to
        is_page_to_skip_lcp() to deduce that the row wasn't in remaining
        lcp set. While this is true, it won't be true any more when the
        page is being released.
     3) In the method handle_lcp_dropped_change_page we could theoretically
        (very hard to create a test case that does this) have a case where
        the LCP scan was somewhere in the middle of the page. We could
        potentially even have reset some LCP_SKIP bits on the page
        before arriving to this point. In this case we would issue DELETE BY
        ROWID when we should not since the row should be in the LCP.
    
        Also added more comments around this code.

commit 0343142d8916bca9898489428527a60556fffba7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Oct 20 23:03:10 2017 +0200

    WL#8069: Added some comments on TR_RowGCI

commit 96c121275f7b9addf8b02cf4f7bd20f7f31dc107
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Oct 20 12:38:46 2017 +0200

    WL#8069: More debug work around handling of keep list when dropping pages in change part

commit b33c680cd739cbede91062e51e2be8f6e671e077
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 19 16:56:58 2017 +0200

    WL#8069: One more stepup of debugging deletes for LCPs

commit 8418dbe40c2fcf9e355d5bfb7238a618920262a5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 19 14:43:16 2017 +0200

    WL#8069: More work on ndb_print_backup_file and on targetted debug stuff to find delete related LCP bug

commit 02ca220fa9d6cbd5b49991b49065a2c321a0e2c3
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 19 12:34:51 2017 +0200

    WL#8069
    Introduced a last seen in scans in DBLQH. Used this to track
    LCP scans, NR scans and Backup scans. If they stall for more
    than 10 seconds a printout in the node log will be done,
    indicating the time of the stall and what line it stalled on.
    
    Can later be used to crash nodes that are in this hang state
    for too long.

commit acc69cc88dca0e01d887aa091a7de1aad66e87b5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 19 10:34:05 2017 +0200

    WL#8069:
    Added code to ndb_print_backup_file that can analyse a LCP with multiple files and see which rows that will
    be left after restoring and seeing what happens when executing the restore.
    
    Fixed some weird path that sends SCAN_FRAGREF from COPY_FRAGREQ when failing ACC_SCANREQ

commit aecc20f530734f6ffa267aead7f47311a31c8e08
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 18 14:56:23 2017 +0200

    WL#8069: More fixes to ndb_print_backup_file to improve writing of LCP data files

commit 4d7cb2b60967fb7018764f08ee60f2c788653c7a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 18 14:32:38 2017 +0200

    WL#8069: Ensured that RowCount is printed in ndb_print_backup_file

commit a22ea650fb651c379dad009f7c0d36fcaa36d787
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 18 14:23:14 2017 +0200

    WL#8069: Turned ndbrequire's into progError for improved error reporting, added new debug variables

commit d2f1f4b7972d626d8b72688f4fa64c5030dd4a57
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 11:36:26 2017 +0200

    WL#8069: A bit more detail to last seen in Tup scan
    Set lcpId in START_LCP_CONF
    Added assert that master starts with noOfStartedChkpt and
    noOfQueuedChkpt at 0 when taking over as master

commit b87e9c898606d2d55b5ef939b5f63648ef3db0e9
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 09:11:31 2017 +0200

    WL#8069: Activate some debugging options again

commit 182cf07752e80cc7f192fd803ca83a45f0059926
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 08:43:01 2017 +0200

    WL#8069: Clear m_participatingLQH and m_participatingDIH when handling master takeover in early LCP phases to avoid crashing on next START_LCP_REQ after master takeover

commit f092c36da3aa9df8ccdca7ecbfa33b12dffe97bd
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Oct 16 15:16:55 2017 +0200

    Bug#26968613 Move pseudo columns ROW_COUNT and COMMIT_COUNT to Dbtup.
    
    In Dbtup there is a working counter of committed rows.
    
    Also in some ndbinfo tables count of committed rows per fragment and
    committed operations per fragment was reported and are now taken from
    Dbtup instead of Dbacc.
    
    The one used in was updated for each operation committed for a row, and
    since the commit signals can arrive out of order transient counter values
    could be negative.
    
    For example if an transaction had several interleaved insert and delete
    on same row, the commit signals for delete operations could arrive first
    to Dbacc and commit signals for insert operations later.
    
    Reviewed by Mikael Ronstrom 2017-10-17.

commit ba4fc85e78f4ff579a0de53c2673b0b1f73d2422
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 07:59:54 2017 +0200

    WL#8069: Removed a number of debug things, added more on copy fragment phase

commit 630df9229ba31ec49419e80acc7742580dbed416
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 11 12:40:16 2017 +0200

    WL#8069: Added more debugging output for LCP watchdog

commit 6239d0c2f3e76885d6a096f3c3bd388ced2ef547
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 9 11:10:36 2017 +0200

    WL#8069 More debugging temporarily

commit 90be36ce192ff9f3eb5c76e6c494a25f69ada16a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 9 10:42:32 2017 +0200

    WL#8069: Consistency check should be ignored when table is dropped, in this case the numbers are not consistent since 0 rows are returned or possibly it is even stopped in the middle of an LCP scan.

commit 23c4db972a4ebf1e5aa3f84d5a978de679ed840f
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Oct 6 21:19:38 2017 +0200

    WL#8069: One more modification of consistency check condition for LCPs

commit be0f8d4956fa0a0ecd26a243390da286222e1713
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Oct 6 14:14:23 2017 +0200

    WL#8069: Fixed the ndbrequire used to discover inconsistencies in row count early on when producing an LCP

commit b6c66411437333d821fe69e6ddbe9f1527bb05b4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Oct 6 12:43:54 2017 +0200

    WL#8069: One more step to ensuring that LCP_SKIP and LCP_DELETE buts are not transported from copy row to main row

commit 3f29c9320fa1581f2580c426779d5713917686ae
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 5 23:41:28 2017 +0200

    WL#8069: Removed some debugging, added more printout of header bits in other scenarios
    Changed variable name of th to tuple_header_ptr for increased readability to support in
    debugging the Scan loop.

commit 4378489e6f401c0d37a442ec2df3d2a6befa2ed7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 5 20:26:42 2017 +0200

    WL#8069: Fix ndb_print_backup_file such that it prints data file generated in 7.6.4 and later correctly

commit b252a52800ccbc305bd7d3295547b0ec8d9bae7c
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 5 20:20:05 2017 +0200

    WL#8069: Dropped LCP_SKIP and LCP_DELETE bit when committing an update or insert, important that these bits are only reset by the LCP scanning code.

commit 9894bc9f6f3369d0016ceae686937850ea917bd3
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 4 14:36:38 2017 +0200

    WL#8069: Enabled DELETE debugging for LCP

commit 2d0779416aa34ba84365a90224e4b5b7a63267b3
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 4 14:26:34 2017 +0200

    WL#8069: Fix merge conflicts

commit 3ac259227c94d78f3b494de37c0f9e7a72aa22c2
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 2 16:48:03 2017 +0200

    WL#8069: Fixed scanReadRecords in hugoTransactions that started checking for 0 rows, this was previously used to indicate no checking, now added an extra force_check_flag to indicate that checks are to be made also when 0 rows are checked

commit 348e357698ff054748d13faed81b1dc1aeb527e4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 2 16:09:03 2017 +0200

    BUG#26908347: Fix for cleared timer in time tracking in complex scan frag case

commit a70fd949258950823cf6f1a245e2d4ed421cf053
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 2 15:05:02 2017 +0200

    WL#8069: Set back to original default_ndbd.cnf

commit 9e6f2adfea5cefde78f50f699708cc042a15f5a7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 2 14:56:22 2017 +0200

    WL#8069: Ensure that DELETE BY ROWID is marked with a proper GCI value in cases where it comes with a 0 that simply means that the value isn't known, set it as high as possible in this case which is equal to Maximum GCI completed for the fragment LCP.

commit 7c7294c9f4f4b189dae4d84727007b9d8ecfd5b4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 2 14:36:42 2017 +0200

    Added checks that change pages don't have scanGCI == 0, scanGCI should always result in all rows being read since the old LCP have not yet been done

commit ff1a86beac76a911e5ed6ec1ce4c569a6087b0ca
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 27 09:36:13 2017 +0200

    WL#8069: Missed initialisation of m_rows_in_lcp to 0, gave crash when no LCP control file found

commit 943a102771e9051471c368f459c010e51cd5cf12
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 20 18:59:11 2017 +0200

    WL#8069: Avoid trying to delete non-existing rows when restoring a DELETE_BY_PAGEID

commit 4555edef8bd31fb5624da7af35444602a9db44ae
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Sep 19 01:36:22 2017 +0200

    WL#8069: Fixed a bug in that LCP keep list reported DELETE_BY_ROWID also for INSERT/WRITEs, fixed up change_current_page_temp in backup to properly set and reset data file and change flag, ensured that the proper page id is sent into this function for INSERT/WRITEs in LCP keep lists

commit f3bc3a2bd06506ad2001b6ab0891f8ac15415805
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Sep 18 12:03:46 2017 +0200

    WL#8069: Introduced RowCount in LCP control file to verify that restore and LCPs are in synch,
             added more details to SR4-based test cases

commit 27ea0bef0de9682d8b7eafef027d38376b41f1e7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Sep 7 14:30:14 2017 +0200

    WL#8069: Some more work on debugging, added new configuration parameter RecoveryWork and fixed the algorithm for calculating number of parts to include in LCP

commit 9f79dfd62238f8577ece3cd9737de31a3ea7b8ac
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 6 23:40:10 2017 +0200

    WL#8069
    Improved statistics reporting in debug mode for partial LCP part

commit ecf54682c3136a75c4603775c2296784922160ec
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 6 15:49:41 2017 +0200

    WL#8069: Fixed reporting of statistics in cluster log of number of records and bytes in LCP. Now counts the records and bytes when records are written into a file, also delete row and delete page records are counted in the total

commit f5062d6ec48d9330ac656d3023668b56445d7d7b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 6 13:01:25 2017 +0200

    WL#8069: Deactivate debug printouts

commit 8ed0de9480ce27aa53135a775b085c4bb5e8980e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 6 12:22:28 2017 +0200

    WL#8069: Added more test cases to discover potential inconsistency problems

commit e5706b3cae46599186c70fc03a865ff54d135979
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Sep 6 11:04:10 2017 +0200

    WL#8069: Ensured that things will work also with more than 1329 parts in an LCP, made it possible to write either 4096 or 8192 bytes LCP control files

commit 8454cc1ffac5a3e41f0adf42195fecf235c3feb9
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jul 27 12:09:31 2017 +0200

    WL#8069: LCP watchdog fired due to long LCP that was closing LCP control files for idle LCP every time it checked, fixed by adding table and frag id for this state as well

commit 036258b899ce3764e42035895f9a7f4c1bbd7e96
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jul 27 11:34:04 2017 +0200

    WL#8069: Activated a few more debug flags around LCP_DELETE flag

commit 5f6f49f9e01cc5a76518d1d380f30f2fb3ba26e7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 26 15:28:32 2017 +0200

    WL#8069: Fix problem when distributed sysfile is more recent than local sysfile

commit e0ca5528784938a2ae68269fcbf3bf3374fdc7d1
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 26 11:10:39 2017 +0200

    WL#8069: Removed erroneus ndbrequire, decreased debug level

commit 97c4a27b6c43bee29b3408cd0affa7892a1d70aa
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jul 25 14:55:19 2017 +0200

    WL#8069: DIH debug stuff

commit a26d2cb583d7821755a76bcf2c315c24731f6e53
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jul 24 12:45:15 2017 +0200

    WL#8069: Debug stuff to find DIH crash

commit e6c186b78f92e5e25c7f9e0fd8779c1cf9ec8dfc
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Jul 14 18:15:14 2017 +0200

    WL#8069: Now got first complex test running also with multiple LCP files per fragment LCP

commit 3042dd991d49dac9ae5e8cb01e7e48a90b79fb0e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jul 13 14:59:45 2017 +0200

    WL#8069: Finalised development to support running LCPs with multiple data files

commit 4ec5288c9967faf111d36e08a1631c4eb1ad5e93
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jul 10 16:43:06 2017 +0200

    WL#8069
    Standardised debug printouts in DbtupPageMap.cpp.
    Introduction of Partial LCP means that releaseFragPage can be called
    during restore process. This will leave page map with next reference
    having FREE_PAGE_BIT set instead of next containing simply RNIL.

commit 674d3a745e4e036e3c76d422139b062cd6894385
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Jul 7 16:43:19 2017 +0200

    WL#8069: More work on debugging, fixed scanGCI in DbtupScan.cpp where local variable wasn't synchronized with stored variable

commit 5ac124cdd656f1be46506c0b932f54636db7fdb9
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Jul 7 13:54:51 2017 +0200

    WL#8069: Needed to update GCI during restore, had to override table flag TR_ROwGCI since it is temporarily disabled during restore, this happens in the routing nr_update_gci that is called during node restart and restore

commit d4416616b1b29f498398e62b805498b91ebd11d6
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jul 6 23:13:55 2017 +0200

    WL#8069: Even more fixes of infrastructure around DELETE BY PAGEID and DELETE BY ROWID and WRITE

commit bfebb9a8040bf86152c53cb161c5e25ca59706f5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jul 6 12:18:40 2017 +0200

    WL#8069
    Lots of improvements of debugging infrastructure.
    Found problem with recording DELETE BY PAGE ID
    We record pages as deleted in LCPs when page state is A,
    we had reversed the check to do it when state is D instead.
    We used an incorrect page number when discovering a page
    to DELETE BY PAGE ID, fixed in parameter to record_delete_by_pageid.

commit f01c53af317b7fe70085ee517d1d104032571092
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 5 15:00:52 2017 +0200

    WL#8069: More work to handle RESTORE with DELETE by page and row and WRITE operations

commit 44f07785d806cb7ca15b31b0e3d8fa989b0df789
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jul 4 20:46:21 2017 +0200

    WL#8069:
    Rewrote code to restore records to handle WRITE_TYPE by using DELETE
    followed by INSERT instead of using WRITE that would complicate TUP design too much.
    Added a number of ndbassert's to weird errors.

commit f05e3c7712f18b9dd1ff426660c1efaa4df75447
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jul 4 11:41:17 2017 +0200

    WL#8069
    Added new signal to DIH to set latest LCP id.
    The latest LCP id can be one to small in the master in SR
    even when the master uses the most recent GCI.
    Send this in CNTR_START_REQ signal.
    check_if_in_page_range fixes of check if ALL page or not
    Added temporary ndbassert at sending of COPY_FRAGREF
    Added report of latest LCP id in DIH_RESTARTCONF
    Added extra check for when to not use a LCP control file,
    it was possible to use a LCP file with too new completed
    GCI.
    Restore used wrong part id states, fixed.
    Fixed loop counter in SR4 test, added more printouts in test.

commit 6d8aa310b7598f7ceef7025d444041edffe9731e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jul 3 10:16:52 2017 +0200

    WL#8069: No need to remove disk attributes for file not being first in fragment, fixed compiler warning

commit 1bc582c67389678f6d9d324f0116631f1740518a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jun 28 12:52:34 2017 +0200

    WL#8069
    Fixed failed calculation of first file to delete when remaining_files > 0
    Fixed testNodeRestart to handle nodes without node group
    Fixed calculation of number of free backup file records and free pages in
    Backup block
    Removed some debug stuff no longer needed in Backup.cpp
    Added a few more comments about SYNC extents
    Made use of get_file_add in all places where it was possible
    Introduced similar function get_file_sub and made use of it in above bug fix
    Updated debug comment with bug fix
    Fix yet one more variant of erroneus check of max_gci_restorable
    Standardised debug comment to use (instance)DEBUG_TEXT

commit cd717f7374ffdb31a2f2ee8120a9b379cc3ac33e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jun 28 02:20:04 2017 +0200

    WL#8069
    Fix a problem that we didn't move forward to next page after finding a page
    to delete by page id.
    Added a bit more debug statement around deletes in LCPs.
    Fix such that we properly initialised a number of variables related to
    current page index, current file index, current page position and
    releasing and seizing pages for restore process. Failure to handle this
    led to memory overruns.
    Fixed a division by zero bug when nodes without node group participated in
    test case testNodeRestart -n DeleteRestart.

commit 5f1ac116cf6c68d2803763759fa52865f9d565e1
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jun 27 17:48:49 2017 +0200

    WL#8069 and WL#10302: Fix problem in activeTakeOver part in WL#10302 handling, fix issue around initial node restart and local sysfile (WL#10302), fix various things around executing partial LCPs (WL#8069)

commit 7ae01aab296728ac1074b571df63e7ab550a72e5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jun 20 17:06:24 2017 +0200

    WL#8069: Fixed ranges for which parts that the data files in an LCP cover when keeping old data files that are no longer fully used

commit 8ce405d7f813ebfd3d381776b46b2c6569a7be81
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jun 20 11:55:33 2017 +0200

    WL#8069: Activated debug flags for development

commit 59413c6255af76dc6c381f3d56c585e3024d3da0
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Jun 9 14:33:55 2017 +0200

    WL#8069: First step in doing partial LCPs

commit 8fd81b74c11cbaa3973b7c8bd5f6b596f4cd294a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Jun 9 14:26:08 2017 +0200

    WL#10302
    Ensure that file system is always cleaned in initial node restart case
    Careful read and write of local sysfile in initial restart situations.
    First write in initial restart is also equal to first read.
    Place tablespace files by default under TS directory and logfile
    group files by default under LG directory. This ensures that tablespace
    and logfile group files are cleaned away also when using default
    configuration setting.
    Fix that all log parts are removed (previously only 4 were removed
    in clean of the file system.

commit f031f8fb6fe88482bbf20e79aa714e0e69c4aea5
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Nov 9 12:10:05 2017 +0000

    WL#11179: Add support in Parser to ignore extra arguments.
    
    To be used for reply for CPCC show version.
    Change contributed by Mauritz Sundell.

commit be65b63bce55bb0e5aa9bea2a74e3a623a095bf1
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Mon Oct 2 14:15:57 2017 +0100

    BUG#27108314: Remove xterm hardcoded foreground color setting
    
    Prevent hardcoded setting to overwrite system defaults causing the screen to
    be blank in some systems.

commit 84706472143ccda7995162b33b917572b9bb8f5f
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Nov 10 19:35:46 2017 +0100

    WL#11158: Fix review comments

commit d704b59cf161f98ac5bf3d0f9b72b55284576217
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 11:27:41 2017 +0100

    WL#11158: Part 5:
    Add limit on batch_size_bytes as well, if row size is larger than 2kBytes we will decrease
    parallelism to avoid buffer overload problems.

commit 71b05bff372510b8cd95b551c267e72dbbb5de5b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 11:26:34 2017 +0100

    WL#11158: Part 4:
    Different configuration parameters to set max batch size for
    Unique index builds,
    Foreign key builds and
    Table partitioning reorganisation.
    Still hard coded number (16) for index statistic scans.

commit be278e72bc73ba846b121ff86f97044851524ffe
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 11:23:14 2017 +0100

    WL#11158: Step 3:
    Modify TRIX to use the configured maximum schema object batch size for
    UI builds.
    Other SUB_SYNC_REQ requestors are left as-is for the time-being.
    TRIX is modified rather than DICT as :
     - Only UIs have an incoming parallelism parameter, the other
       request types do not...
     - Not clear that DICT is the correct place to determine the
       parallelism to use
    A full solution should decide on the above, potentially increasing
    parallelism for other build types based on config or other inputs.

commit 277efe8a9ec88f7d8e3c1a215534e29278b24fac
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 11:19:39 2017 +0100

    WL#11158 Part 2:
    A new config parameter is added to set the maximum batch size
    for scans involved in schema object builds.
    
    This allows some tuning of the resources devoted to schema object
    builds.
    
    DBUTIL is the block principally involved in allocating resource
    for these operations, it is modified to include this parameter.
    
    As this is now a changable parameter, the affected dimensions are
    parameterised to match.
    
    Output from printouts when enabled with default (64) :
    Inputs :
    MaxSchemaObjectBuildBatchSize : 64
    MaxPreparedOps : 6
    MaxNonSchemaBuildOps : 48
    NumConcurrentPrepares : 1
    SparePages : 5
    PagesPerPreparingOp : 5
    PagesPerTransaction : 0
    MAX_ATTRIBUTES_IN_TABLE : 512
    MAX_TUPLE_SIZE_IN_WORDS : 3500
    MAX_KEY_SIZE_IN_WORDS : 1023
    Outputs :
    MaxConcurrentOps : 112
    MaxConcurrentTrans : 112
    MaxAttributeMappings : 3072
    DataBuffWordsPerOp : 4523
    numDataBuffers : 46276
    numPages : 10

commit 4d48efcbf58f62379a645ba79d07b75f598efe0e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 11:12:50 2017 +0100

    WL#11158
    A new parameter is added to GSN_SUB_SYNC_REQ, specifying the desired
    batch size for the implicit scan.
    Previously the batch size was hardcoded to 16 in SUMA.
    Currently this signal is only ever sent within a node from TRIX to SUMA,
    so no upgrade code is required.

commit 6742538628b4fe0df1d92234d3f2c807533160b2
Merge: 960a7ed c5eff03
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Nov 8 13:28:26 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit c5eff0331ce6f29eb55a6d2367ac72c734388322
Merge: 377db6b f1f4a49
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Nov 8 13:17:37 2017 +0100

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

commit f1f4a49abf9c28e1f8b2d248afdb99f1948f4cdb
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Nov 8 13:04:25 2017 +0100

    bug#26984919 Addendum patch
    
    Testcases added for this bug didn't enable the required optimizer switches to allow
    the hinted semijoin strategies to be used. Thus, 'DEPENDENT SUBQUERY' plan was choosen
    instead, which was not what we wanted to test for the MTR test ndb_join_pushdown_none.test.

commit 960a7edc17b5f301c5a6295b9d56bcc91ead3364
Merge: 66720e1 377db6b
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 7 16:58:39 2017 +0000

    WL#11305: Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 377db6b0d1748072715987899f482ec25ffd3a97
Merge: b65cbe5 15fda5c
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 7 16:57:39 2017 +0000

    WL#11305: Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 15fda5c6d0ec12a27df4053d94d0e7d976f268df
Merge: 9974fec e70da4a
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 7 16:54:42 2017 +0000

    WL#11305: Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit e70da4a3b116358280ef21cb082d63510cd45d1c
Merge: fabfb37 de5b6d1
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 7 16:53:19 2017 +0000

    WL#11305: Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit de5b6d1e936b7f48b5408225dff99d0eacc90d17
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Nov 7 16:41:31 2017 +0000

    clang-format code style cleanup

commit bc2ed4d700b15e49e0cd0db8bac8bef7b783c1a9
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Oct 31 17:53:10 2017 +0000

    WL#11305 Support atrt replication setup for MySQL 5.5 and upwards
    
    ATRT supported replication up to 5.5 where replication settings were passed
    using both command-line arguments when starting mysqld and sql commands to
    configure replication. Command-line arguments have been deprecated since
    MySQL 5.5 and this support was removed from atrt.

commit 66720e128e18da1e26362e80b7c64788408da847
Merge: c19690f b65cbe5
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Nov 6 09:20:20 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit b65cbe5ed24f191f945e77a52488f8ce407fd43f
Merge: fdd26c5 9974fec
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Nov 6 09:18:56 2017 +0100

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

commit 9974fec08ebd29350457cc0f296e10594b1ddf5e
Merge: 25f358a fabfb37
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Nov 6 09:16:16 2017 +0100

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

commit fabfb3743248fe1d8abfa8951a7e8e9c0a9f7074
Merge: 8702af5 55cfc32
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Nov 6 09:15:55 2017 +0100

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

commit 55cfc320d5d43ffb7cd96ba99a0d4cb1f6b13bb3
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Nov 6 09:14:26 2017 +0100

    BUG#26979030: Change && to -a for test in shell script

commit c19690fa141c6bdee4625716e6361b97be413abe
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Nov 3 09:37:23 2017 +0100

    Bug #27022925 SPJ: 'MATERIALIZED' SEMI JOINS ARE NOT CONSIDDERED FOR JOIN PUSHOWN
    
    The 'Materialized' part of a semi join execution was represented in such a way
    that it was not even 'visible' for the code evaluating the pushability
    if a query plan.
    
    The pitfall turned out to be that there are two slightly different
    'counts' representing the number of tables in a query plan,
    'primary_tables' and 'tables'. It turns out that the 'primary_tables'
    did not include the materialized tables in its count.
    
    This patch change the init of table 'count' in the class Join_plan
    to use 'tables' instead of 'primary_tables'. The materialized
    part of the query plan will then become visible.
    
    As a side effect some 'non-real' (temporary) tables added by the
    optimizer also becomes visible. Thus the patch also added check
    for 'table() != NULL' a couple of places in order to ignore
    such non-real tables.

commit a7c7d48cbbd0b841426b32cdf7f658f1362b2f54
Merge: 02ab9bf fdd26c5
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Nov 2 12:18:58 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit fdd26c5c0d4794d9425292235b4e77bc0be77fc1
Merge: f01f9a3 25f358a
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Nov 2 12:18:12 2017 +0100

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

commit 25f358a11ce01f79143835de0084466c512547f1
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Nov 2 12:03:21 2017 +0100

    Bug#26984919 	SPJ: 'DUPLICATE WEEDOUT' STRATEGY MAY RETURN INCORRECT RESULTS
    
    This is a problem similar to what was recently fixed in
    
    - Bug#26926666 SPJ: 'LOOSESCAN' TABLES SHOULD NOT BE CHILD MEMBERS IN A PUSHED JOIN
    
    Furthermore, there also existed a similar 'push limitation'  for
    child tables using the 'FirstMatch' semi join strategy, probably since
    the first release of the join pushdown feature.
    
    After studying all these 3 limitations, we realize that the common denominator
    for them all, is that a scan-child being part of a semi join 'nest', should
    not be pushdown joined with a parent table not being within the same
    semi joined 'nest'.
    
    This patch takes advantage if this realization and thus implement
    a single mechanism covering this pushability limitation for
    both the existing 'FirstMatch' and 'LooseScan' strategy, as well
    as the 'Duplicate weedout' being the subject of this bug report.
    
    The abstract_query_plan method ::get_join_type() is extended
    to also identify JT_SEMI_JOIN between a tableand its predecessor.
    
    ::is_pushable_as_child() replace its current logic to catch
    'FirstMatch' and 'LooseScan' handling with checking for JT_SEMI_JOIN
    instead, which now will also automagically catch 'Duplicate weedout'.
    
    As a side effect a MTR testcase which previously incorrectly
    rejected 'FirstMatch' pushing of two tables inside the *same*
    semi join nest is now allowed to be pushed.
    
    The 'explain' -> show warnings output is slightly changed as a
    result of not specifically checking for 'FirstMatch' and
    'LooseScan' anymore. Instead 'semi join' is reported
    as the reject reason.

commit 452aeee2ca3894c9ac67eb968c39e41335e20c9b
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Nov 2 11:15:52 2017 +0100

    Bug#26919289 Addendum patch
    
    Previous patch for the 'MYSQLD CRASH DURING 'JOIN PUSHDOWN' ANALYSIS'-bug
    assured that the m_remap[]-array was initialized upto the 'count' tables
    in the query plan.
    
    However, there were other code paths which tried to access m_remap[]
    beyond the end of 'known' tables. Typically such cases are found
    where the query planner decide to create a (temporary-) materialized subquery
    table which is placed after the 'normal' tables in the query plan.
    
    This patch ensures that the illegal table enum value 'MAX_TABLES' is
    returned as the table number when accessing such a table.

commit 02ab9bf990ca7df66a699b47567b5fe5175b3ee9
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 08:42:08 2017 +0100

    BUG#25428560: Introduce new config variable O_DirectSyncFlag that treats all writes using O_DIRECT as synched writes, not set by default

commit 884236b16b6910b95558f1e4b6cc4ee5b74bdf03
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Nov 2 08:18:47 2017 +0100

    WL#11216: New command to enable/disable node log of debug info

commit 3a82394117cdaddbcd9b3239a11f1ba7ffaec49e
Merge: 7e37938 f01f9a3
Author: John David Duncan <john.duncan@oracle.com>
Date:   Wed Nov 1 13:43:07 2017 -0700

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit f01f9a34886a296bdfbb1f13169795dc27e88ba3
Author: John David Duncan <john.duncan@oracle.com>
Date:   Wed Nov 1 13:41:00 2017 -0700

    Fix for bug#26429923
     1: Set character set of CHAR(10) column back to LATIN1
     2: Fix ndb_exec.inc to explicitly enable use of "local infile" in MySQL 8.0
     3: Rename column in ndb_exec_output table from "row" (which is now a reserved word in the parser) to "output_line"

commit 7e37938d1d78d787ef536a540342b9631ac6b691
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Nov 1 09:18:55 2017 +0100

    WL#8069: Bug#26955266: First phase of WL#8069 introduced UNDO_LOCAL_LCP and UNDO_LOCAL_LCP_FIRST, when looking for end of UNDO log we missed to check for both UNDO_LCP_FIRST and UNDO_LOCAL_LCP_FIRST, added some comments about end of UNDO logic

commit f05b9a534ddef14e34764030c43ebff24f45f6ed
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Oct 26 15:51:46 2017 +0200

    Fix failing ndb_spj_dict.test
    
    Also accept 'table not found' as legal outcome of testcase.

commit ded320b9328e4c260675f7e9fd449ea7842b0968
Merge: 3a623e9 2978a23
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Oct 25 17:56:51 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 2978a237bd36794bcd2e341f02cbff6c0e141094
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Oct 25 17:50:20 2017 +0530

        Bug#26958920 - MAIN.FILE_CONTENTS FAIL WHEN RUN WITH CLUSTER RPM
         - Skip the management-server directory in the documentation path
           for cluster release

commit 3a623e98107b854f12bceb1d4f4077bfa5ef0700
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Oct 21 14:43:53 2017 +0300

    wl#7614 max-rows.diff
    
    fix test option --max-rows for csv

commit 849cacbad9090218ba6e6b8026f82b3b6cdf4f3d
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Oct 21 14:41:29 2017 +0300

    wl#7614 options-06.diff
    
    change option --verbose to --log-level
    reserves --verbose for user-level output

commit 398990a485837dd3b51ce4634a0c7c2023e42847
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Oct 21 14:19:52 2017 +0300

    wl#7614 pagecnt-fix.diff
    
    fix diag team csv input odd pagecnt

commit dc8c1c5520e7db47a2f17460b3c9722267d80e6f
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Oct 21 14:18:23 2017 +0300

    wl#7614 options-05.diff
    
    change defaults based on test runs
    (20 cores, HDD - YMMV)

commit 18338a4c97ce93d1f8ebd3b989e4a009063ca50c
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Oct 21 14:15:21 2017 +0300

    wl#7614 options-04.diff
    
    add stats for csv waittail/movetail

commit 17d96ce21bbc444f6f210fd16f555fbc7db6f6de
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Oct 21 14:12:56 2017 +0300

    wl#7614 options-03.diff
    
    missing saved options

commit a917d6a7a57e3a081d2cb77d911abda9f7960906
Merge: 307dd58 4069fde
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed Oct 18 23:09:58 2017 +0200

    Upmerge of the 7.2.31 build

commit 4069fdef23692c8a6f7b0ea2a20a398cd2506988
Merge: 4f9ef61 163aa70
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed Oct 18 23:06:14 2017 +0200

    Upmerge of the 7.2.31 build

commit 163aa703795a8d3bbd0b5ebe6fc81b5e17b54677
Merge: eb6d29f 8702af5
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed Oct 18 22:57:29 2017 +0200

    Upmerge of the 7.2.31 build

commit 8702af528e40c373a334f34589e766b345112fba
Merge: 2ccf20b 20b0c1c
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed Oct 18 22:56:04 2017 +0200

    Upmerge of the 7.2.31 build

commit 20b0c1cfdc7a46274fe649c7d154873e82494819
Merge: 221ee6b f228edb
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed Oct 18 22:46:01 2017 +0200

    Merge from mysql-cluster-7.2.31-release

commit 307dd589c2ca845b88a2aa3c8c601e8b48455f67
Merge: d7710a4 4f9ef61
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Oct 18 19:05:37 2017 +0200

    Upmerge of the 7.3.19 build

commit 4f9ef615d37619e27ac204be0c6133f9e6179226
Merge: 880b63a eb6d29f
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Oct 18 18:43:46 2017 +0200

    Upmerge of the 7.3.19 build

commit eb6d29f4c38bac69d81f01c2c032fb13dd5edbe7
Merge: 78a3051 2ccf20b
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Oct 18 18:40:56 2017 +0200

    Upmerge of the 7.3.19 build

commit 2ccf20bf0c66730cb53e04292e8e2a88f4321029
Merge: dd7b2de bd5c998
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Oct 18 18:34:16 2017 +0200

    Merge from mysql-cluster-7.3.19-release

commit d7710a4d49e462c6e6208aae16e5f7fe65548ec1
Merge: 90384bb 880b63a
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Oct 18 13:11:58 2017 +0200

    Upmerge of the 7.5.8 build

commit 880b63a025383ba80170c4ebc186516cecd16432
Merge: 40b3db6 8213109
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Oct 18 13:10:19 2017 +0200

    Merge from mysql-cluster-7.5.8-release

commit 90384bb8ab00ab17187e3216b2af6a2daddc14ed
Merge: 2d38da0 40b3db6
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Oct 17 09:09:15 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 40b3db62c39439f2a05f1d88460d496fc3cb5833
Merge: ce02597 78a3051
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Oct 17 09:08:08 2017 +0200

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

commit 78a30516c8a52b7eb7eaaa7246b8e9b75f6a6c09
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Oct 17 08:55:31 2017 +0200

    bug#26919289 follow up, use lower case in table names in MTR testcase

commit 2d38da0579e74a1fb465b3bb1f1eb80af80b337c
Merge: 5833297 ce02597
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Oct 16 13:12:46 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit ce02597173c8368aed242cc4b6e594f5db8eca28
Merge: d5335d4 8157762
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Oct 16 12:51:28 2017 +0200

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

commit 815776227d6206f83265664b39383fbebda25a19
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Oct 16 12:13:33 2017 +0200

    Bug #26919289 MYSQLD CRASH DURING 'JOIN PUSHDOWN' ANALYSIS
    
    When representing a 'Materialized semijoin' in the query plan,
    the mysql optimizer inserted extra QEP_TAB + JOIN_TAB objects
    to represent access to the materialized subquery result.
    
    The join pushdown analyzer didn't properly set up its internal
    data structures for these 'artificial tables' and instead left them
    uninitalized. Thus later usage of any item objects REF'ering the materialized
    semijoin ended up using an ininitialized 'tableno' field when
    accessing a 64-bit tableno-bitmask, possibly refering it beyond
    its physical end.
    
    Caused an assert to be hit in DEBUG mode, and possibly (yet unknown)
    unpredictable results else.

commit 5833297d79a138a77b90a04f4a2c225b6846dc30
Merge: a40a227 d5335d4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 12:20:51 2017 +0200

    Merge ../push_75 into mysql-5.7-cluster-7.6

commit d5335d429605d4dc2c4c61c374b57e7be0e67825
Merge: ca031f3 5e28e1f
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 12:20:26 2017 +0200

    Merge ../push_74 into mysql-5.7-cluster-7.5

commit 5e28e1f79aa1b283b41192cde34a2582fb436930
Merge: b441ef2 dd7b2de
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 12:20:11 2017 +0200

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

commit dd7b2de08c95b284e0eadb048fbed1cb7a3bf50b
Merge: 7f2a624 221ee6b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 12:19:54 2017 +0200

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

commit 221ee6bdf608ee4ed5f312897a12cc18a17ddbfd
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Oct 16 12:19:34 2017 +0200

    BUG#26979030: atrt-gather-result.sh can fail during a normal LCP when files are deleted during rsync call, this generates error code 24 from rsync, allow this error code as an ok error code

commit a40a227900e11d9dc204eabda17ad3455b5b6516
Merge: 786f6de ca031f3
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Oct 16 10:46:42 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit ca031f382afc071f983b63fac5d80271a278abb1
Merge: d7ddd51 b441ef2
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Oct 16 10:43:02 2017 +0200

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

commit b441ef2e06809efc4f03f16b2ce3602256ea1c49
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Oct 16 10:28:52 2017 +0200

    Bug#26926666 SPJ: 'LOOSESCAN' TABLES SHOULD NOT BE CHILD MEMBERS IN A PUSHED JOIN
    
    'LoosesScan' execution requires the returned rows to be sorted in the order
    specified by an index.
    
    Such functionality can not be offered for a *child* member in a pushed join.
    Thus, any LooseScan'ed tables has to be excluded from being children
    in a pushed join query.

commit 786f6de420e988a6c62fd6cb30896c26bc9ec1bf
Merge: 39c1d2f d7ddd51
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Oct 13 02:30:55 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit d7ddd51493cb1baca8a469084523aa39a63ed8dc
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Oct 13 02:15:13 2017 +0530

    WL#10816: Mediumint support for ClusterJ : Post push fix
    
    ndb.clusterj test fails due to insufficient memory in few platforms.
    Increase the memory to fix this.

commit b2af1438419a1ccbfc7bfe8e58d9bcabec08c45b
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Oct 13 01:09:08 2017 +0530

    Bug#26758939 : FAIL TO LOCK THREAD TO CPU - Post Push Fix
    
    Previous patches for Bug#26758939 disabled Lock/UnlockCPU apis in
    environment where the glibc version was less than 2.23 to avoid the
    effects of a bug. But since this seems too strict, most of the
    changes made as a part of Bug#26758939 are reverted in this patch. This
    re enables Lock/UnlockCPU apis in all environments regardless of the
    glibc version used.
    
    The glibc bug causes the sched_setaffinity() call to fail when an all
    ones CPU mask is set. The call fails and the error is set to EINVAL -
    invalid arguments. UnlockCPU uses a all ones CPU mask and will fail
    similarly if the glibc version is lower than 2.23. This patch instead
    of using an all ones CPU mask, uses sysconf to get the actual number of
    processors available to the system and then sets the cpu mask
    accordingly.

commit 39c1d2f0d02203a9691dc123082bb1adc01639fd
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Oct 12 12:25:47 2017 +0200

    WL#11169: Fix for part 1, memory corruption.
    
    Do not pass address to local variable to init_globals_list(), it cause a
    dangling pointer.  In debug mode clear_global_variables() will be called
    prior each processing of asynchrous signal and the dangling pointer will
    be used "clear" whatever it points to.

commit f67119193fb88ef8391ec4937e492033431c3608
Merge: c70b8b2 ae0a098
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Oct 12 08:33:24 2017 +0200

    Merge cluster-7.5 -> cluster-7.6

commit ae0a098b215bedc78e3b924e635c6c86ebae6ded
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Oct 12 08:29:00 2017 +0200

    Bug#14845851 MYSQL CLUSTER - AUTO INCREMENT NOT RESET WHEN TRUNCATE NON- BINLOGGING SQL NODES [noclose]
    
     - disable test as it fails with varying failures across all versions

commit c70b8b2bc0bd14e91ae2c7ad4cb1ae7f39ce12d2
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Oct 11 17:45:24 2017 +0200

    PB2 all_default_valgrind builds for mysql-5.7-cluster-7.6 is in bad shape.
    
    Temporarily turning of unlimited test failures.

commit 609c77d492f8812eec31f9ee4ba02daaedf8b166
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Oct 9 11:40:23 2017 -0700

    NDB nodejs code: remove workaround for bug briefly introduced by wl#10234 patches.

commit 39bd901d3d9c33d16b415c4c9c4fa1d9fe2777a5
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Jul 11 12:57:58 2017 -0700

    wl#10234: add legacy API for backwards & binary compatibility

commit ec105da10faa5854fb5ebc46274f9942e736674a
Merge: b6b333e 30ca54c
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 19:34:29 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 30ca54c8176d90d5422dc142408abdcfdc266d7e
Merge: bcd8066 bc55cb1
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 19:33:43 2017 +0200

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

commit bc55cb181196c3573f09f0a42e8b233b6928773d
Merge: 23a246f 7f2a624
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 19:33:04 2017 +0200

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

commit 7f2a6240945901c8452a19226861252ea7a67ed8
Merge: 66ecce3 3c48849
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 19:32:38 2017 +0200

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

commit 3c48849ef900ccb9bb87d33382b3c7ed2a45ad54
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 19:30:40 2017 +0200

    Bug#14845851 MYSQL CLUSTER - AUTO INCREMENT NOT RESET WHEN TRUNCATE NON-BINLOGGING SQL NODES
    
    Added suppression of log warning in test case

commit b6b333ecbf15e7e37c324dbc583c2ae96f5550c9
Merge: 1b05fda bcd8066
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 16:03:30 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit bcd8066c5f158e61455a947666e786bb186fca00
Merge: ef48dcb 23a246f
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 16:02:44 2017 +0200

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

commit 23a246f381732caba77c3a18d90240307f7e8239
Merge: 3f908eb 66ecce3
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 16:02:06 2017 +0200

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

commit 66ecce3e9c0e36770d3de4160515663f6ad6fbc1
Merge: 8f7d0dd d79a52e
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 16:01:28 2017 +0200

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

commit d79a52e21a8228f6a41dadc74913580b39d4e3ce
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 16:00:27 2017 +0200

    Fixed number of servers

commit 1b05fdaf235c5f927ef67630b7208a9c18511629
Merge: 07e0177 ef48dcb
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 12:39:43 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit ef48dcbb50e205c3ef3c3edbf305ba1678977703
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 12:39:02 2017 +0200

    Fixed number of servers

commit a92d1e120471baa5bfeda8fdff8e11fbbae81d33
Merge: be86b89 3f908eb
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 12:36:50 2017 +0200

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

commit 3f908eb2d6dd64967223d870bff1acded62457ea
Merge: f3824da 8f7d0dd
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 10:05:44 2017 +0200

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

commit 8f7d0dd903e6feabecb6ba43f3edd6c1290448f5
Merge: a7ac4a4 3608f7d
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 09:32:06 2017 +0200

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

commit 3608f7d65de12d1ea5ec0f9885b3b7adef13f019
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Mon Oct 9 09:21:58 2017 +0200

    Bug#14845851 MYSQL CLUSTER - AUTO INCREMENT NOT RESET WHEN TRUNCATE NON-BINLOGGING SQL NODES
    
    When the injector_thread handles a remote truncate it must reset any shared auto_increment
    pre-fetch range. If the global table object is dropped and recreated then the new table instance
    might otherwise incorrectly see the old auto_increment range. Thus can occur if the mysqld
    is not writing the binlog since it then will not handle drop table events for the Ndb table
    being dropped and re-created as part of the truncate operation.
    Added a new test case that tests this scenario.

commit 8213109835df16d0c872b96478b06ebf59b25c57
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Sep 20 17:37:14 2017 +0530

    Bug#26758939 : Post push fix
    
    Updated ClusterJ testcase to expect the updated error message
    
    (cherry picked from commit 3a94f9769c793840fd85824dbab0df166b37e36e)

commit 07e0177b18f66a3fc960f7752b9addc17e7b399c
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sun Oct 1 17:11:10 2017 +0200

    Bug#26906640 Return oldest free page in DBACC to global page pool.
    
    Dbacc:getLastAndRemove method may return a refrence to a newly released
    page which the calling function later accessed.
    
    Five released pages are kept within Dbacc instance, when further pages are
    released they were directly returned to global page pool.
    
    Some other thread could allocate this page between page was released in Dbacc and
    later accessed by Dbacc.

commit 58138e122259c6968fc8fccabc1dc069db73a20b
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Wed Aug 23 20:31:55 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    Patch adds a few require() statements in the transporter
    send and receive code.

commit 5ab8d0abe6f0b0cc48f1cd2b44e8dec7bac80ea0
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Fri Aug 18 17:14:35 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    Two new manual(recompile) error-injections in mt.cpp :
    
      NDB_BAD_SEND : Causes send buffer code to mess with a byte in a send buffer
      NDB_LUMPY_SEND : Causes transporters to be given small, oddly aligned and
                       sized IOVECs to send, testing ability of new and existing
                       code to handle this.
    
    These were useful for testing the correctness of the new code, and
    the resulting behaviour / debugging output.

commit d91b48d0295355b6f10ac660a8adcf8bddbd61b3
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue Sep 26 14:31:38 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    Enable PreSendChecksum in mtr ndb_binlog suite.

commit 9b30f5bd2dd992b7e68caee8ada1f330176b5e18
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Aug 18 17:10:06 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    Checksum checking is added to the TCP Transporter using the new class + utils.
    
    doSend() obtains an array of IOVECs and attempts to send all of the data from
    them, in multiple passes.
    
    The OS may manage to send some, all or none of the data, which could result in
    IOVEC offsets changing, becoming odd etc over time.
    
    doSend() will :
      a) Check checksums for all data available in IOVECs prior to OS::send()
      b) Check checksums for all sent data afer OS::send()
    
    Obviously this adds some CPU load to the threads performing sending.

commit 40fa09ce0f4cca91d99251ad657b4c17e744b6d1
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Wed Aug 23 12:31:20 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    Patch adds new configuration parameter PreSendChecksum which enables
    pre-send checksum checking.
    
    Note: Checksum should also be on for this parameter to work

commit 46a3ca695623748f7b64e63efca77b67a0ae5fe6
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Aug 18 12:06:21 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    A checksum checking class is added to the Transporter, allowing checksums to
    be verified between the application point-of-send (sendSignal et al) and the
    point of passing data to the OS.
    
    This involves parsing the sequences of bytes made available to send, to find
    message boundaries, and checksumming and verifying the content.
    
    In case of failure, as much context as is available at the point of failure
    is dumped out.

commit 091716a3a5a3405d3658064436952a089093dee6
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Aug 16 19:53:53 2017 +0530

    Bug #26026218 : TRANSPORTER ERROR 0X8004, 0X8023; CHECKSUM; UNSUPPORTED BYTE ORDER
    
    Signals are integer numbers of 32-bit words long.
    A message checksum is the bitwise XOR of each of these words, so that the checksum
    word XORed with the other words in the signal gives zero.
    
    Current checksum utilities operate only on integer numbers of 32 bit words, but
    it is useful to be able to build a checksum cumulatively using arbitrary spans
    of bytes, which may not have corresponding relative word alignment.
    
    This is done by :
     - Observing that the word XOR is a series of byte XORs, from byte 0 to byte 3
     - Observing that the 'next byte to XOR' can be memorised in the checksum
       itself by rotating the checksum so that byte 0 is always next.
       - When a multiple-of-4 bytes have been processed, the checksum has rotated back
         to its original alignment.
    
    Steps :
     1.  Determine word-alignment of the source bytes
     2.  XOR in any unaligned partial-word bytes at the start
     3.  Rotate checksum to be used for word-aligned XOR of the bulk of the byte
         stream
     4.    Use normal word-oriented checksum for the bulk
     5.  Rotate checksum back to start position
     6.  XOR in any unaligned partial-word bytes at the end
     7.  Rotate checksum to be correct w.r.t the number of bytes added in

commit b488352fa4f998d4693e60e419d9492230691503
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Oct 5 10:34:02 2017 +0200

    WL#11169: Fix for part 1, compiler warning generated error

commit 1808c39ccd1e07e56ecb279e302faad818ed895b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Oct 4 13:41:04 2017 +0200

    WL#11169: Part1: Refactoring of DBACC, remove a number of not needed block variables

commit 0b10684d7cb5d74c45af5a95e48b56988278e8f1
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Sep 29 15:49:55 2017 +0530

    Bug#26898072 : CLUSTERJ TEST NOT RUN IN RPM/DEBIAN BUILDS IN MTR
    
    ClusterJ Tests are not run in above said platforms as MTR is unable to
    find either the clusterj jars or the libndbclient library. This patch
    updates the have_clusterj.inc file to fix this.
    
    (cherry picked from commit be86b893613b228eae5f49ea4c073104100eced9)

commit 02a3bdc7a6901d31ab319d3667dbb32273ec7757
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 935f7b104ca3c9152692f5ab271e9cff8c027986
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 fd025878fd828bfe3d8ebcfa2df7b2b5429710d9
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 c35a5a1903b4987bfe32fc8a9cf22d515dd61fdb
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 6129e25998e135d6f700fca39df6b94c85b35059
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 c95c85383be2274afb217834ebd965d78f810422
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 829c994d50f1f9f4eef19b3d0efb6091314bf642
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 f0c5aa0042867e20da696d0920dc71b92738dccf
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 e021f09db7cb14dcabfff546753306d6892f99dd
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 97d4d3a102d36117b3d0594517d045f8f0758d47
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 ed3ada812f1069d586ec4b3580dbc5d985be5f35
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Oct 4 12:42:33 2017 +0300

    wl#7614 options-02.diff
    
    loop delay 100ms to --checkloop option

commit b1e7e16ef18cae74db94089d2254616ff15ef07c
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Oct 4 12:41:51 2017 +0300

    wl#7614 options-01.diff
    
    add simpler --pagebuffer option

commit 6f89cc3ee97d17d78d38ff4b3d4d9013367d0145
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Oct 4 12:41:16 2017 +0300

    wl#7614 noregex-04.diff
    
    csv: small fixes

commit 1ded1f9e4cde87c5bbd174efbb13321625841be1
Merge: 877bda7 be86b89
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Oct 3 18:50:24 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit be86b893613b228eae5f49ea4c073104100eced9
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Sep 29 15:49:55 2017 +0530

    Bug#26898072 : CLUSTERJ TEST NOT RUN IN RPM/DEBIAN BUILDS IN MTR
    
    ClusterJ Tests are not run in above said platforms as MTR is unable to
    find either the clusterj jars or the libndbclient library. This patch
    updates the have_clusterj.inc file to fix this.

commit 877bda76bda4bf17479554e18543240e7a4083c9
Merge: a820458 82fe249
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Sep 28 22:03:29 2017 +0200

    WL#9756 Miscellaneous refactoring.

commit 82fe249449406a5b5d266b634039888c149ce95d
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue May 2 21:59:29 2017 +0200

    Explicitly use 30 bit page numbers for RG_DISK_PAGE_BUFFER.
    
    DBTUP only supports 31 bit page numbers.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit 9d44072599396a637a599cb257247f3c12ee3e26
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue May 2 21:55:34 2017 +0200

    Explicitly use 30 bit page numbers for RT_DBTUP_PAGE.
    
    DBTUP only supports 31 bit page numbers.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit f7d83f80e83f27ba5731b25f146b7258c6193c8b
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Apr 24 09:34:38 2017 +0200

    Refactoring. Let KeyTable2 and DLHashTable2 take default record type from pool.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit f113d54b31ff988323bc4243cd2800886180ec1c
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Apr 24 09:24:36 2017 +0200

    Refactoring. Let KeyTable take default record type from pool.

commit 5cbe4844641dd476e628c07e6b441a495b2354e8
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed May 17 14:06:19 2017 +0200

    Refactoring. Let KeyTable take default record type from pool.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit 3cb9d12a24fd1c08f1632a36a1e9283d7970d332
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sun Apr 23 00:46:33 2017 +0200

    Refactoring. Let DLHashTable take default record type from pool.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit 01502741fe6099f802a55011d53cc4de60cf7657
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sun Apr 23 00:00:53 2017 +0200

    Refactoring: Make IntrusiveList take record type from pool.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit ee3abbeebb007d595bb6d75ac6d7efc6f5389ba3
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed May 17 14:02:40 2017 +0200

    Refactoring.  Add explicit Page8_pool for getPtr.
    
    Reviewed by Mikael Ronstrom 2017-05-09

commit 81e90d4d8d3f83211da7bd766d56e01bb45a149c
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Apr 22 23:24:43 2017 +0200

    Refactoring.  Inherit record type when nesting pools.
    
    Reviewed by Mikael Ronstrom 2017-05-09

commit ad0a15f620bf53ddb770f90a873eb7d124021784
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Apr 13 21:56:58 2017 +0200

    Pass TcConnectionrec* instead of TcConnectionrecPtr.
    
    To pass one word less, and make it more likely that arguments are passed
    using registers instead of stack.
    
    Reviewed by Mikael Ronstrom 2017-09-28.

commit 81b0dc672e50f59a4c474439d55c0b2a06397dd1
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Apr 13 21:56:58 2017 +0200

    Remove block global tcConnectptr.
    
    For easier debugging.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit 4b07f9fc86ae9801cb1c3e1006f715623b4261ed
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Apr 28 23:42:25 2017 +0200

    Make restore use long lqhkeyreq.
    
    Keep short key-less lqhkeyreq for delete-by-rowid in wl8069.
    
    Reviewed by Mikael Ronstrom 2017-05-09.

commit a8204583917bf3594a392309d16d5a0eaaea3efc
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue Mar 14 08:41:04 2017 +0100

    WL#9756 Let DBTC handle its queue.  DBDIH only keep track of number of blocked verifications.
    
    Reviewed by Mikael Ronström 2017-03-28.

commit a235065e1896eaf8feefa1fc9b74a1c354c5a564
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Apr 28 19:26:15 2017 +0200

    EXECUTE_DIRECT, new for long signals
    
    Reviewed by Mikael Ronstrom 2017-05-09

commit 754442972f45eea00cdac08381211e6145e37b85
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue Mar 14 00:54:04 2017 +0100

    WL#9756 Move verification queue out from DBDIH into DBTC with no signal flow changes.
    
    Reviewed by Mikael Ronström 2017-03-28.

commit 6847eb792aa89d7ce87adaa5e38b94d15bd370d5
Merge: 6f59035 977d6e5
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Sep 25 11:14:58 2017 +0200

    Merge ../75_tree into mysql-5.7-cluster-7.6

commit 977d6e575788d04c6abf80ead7f24fa98a190658
Merge: 3f310f4 f3824da
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Sep 25 11:14:23 2017 +0200

    Merge ../74_tree into mysql-5.7-cluster-7.5

commit f3824da79a8af89d8d3b5ff486fea100d4224bcd
Merge: 6e374cd a7ac4a4
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Sep 25 11:14:06 2017 +0200

    Merge ../73_tree into mysql-5.6-cluster-7.4

commit a7ac4a49177f441e9c302ae4b69cce98f61aa542
Merge: ebc8f3e ee3ee19
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Sep 25 11:13:52 2017 +0200

    Merge ../72_tree into mysql-5.6-cluster-7.3

commit ee3ee1930d50594ab109e781178bc316ea1e2c94
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Sep 25 10:23:00 2017 +0200

    BUG#21049554: Attempt to fix bugs for OM_SYNC was a failure, now second attempt

commit 6f5903523fdeb46263a27229127eb4fc325a8791
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Fri Sep 22 14:55:19 2017 +0200

    Bug#26764270 - ALTER TABLE STORAGE FROM DISK TO MEMORY DOESN'T MOVE DISK COLUMN DATA TO MEMORY
    
    Patch contains:
    - When table storage is changed, copy algorithm is chosen if appropriate.
    - Returns better error msg when an index is created on an explicit disk column.
    - A test checking table storage changes.

commit de548d48c539b5ddfb8552ae3a529abb059e1cd9
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Sep 22 15:49:53 2017 +0200

    wl#7614 Output to $NDB_TOOLS_OUTPUT instead of NDB_TOOLS_OUTPUT in ndb_import2.test.

commit 123b3d21a9757f625269204f7ecc14c715ecb741
Merge: e3d967d 3f310f4
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Sep 22 15:48:27 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit e3d967d83904f4b60b8ffc73a7ab62ce7a49e12e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Sep 22 14:21:26 2017 +0200

    BUG#26847666: Fix

commit 3f310f4d43a80ce4c0c45792f83daa6f6efde9ab
Merge: 3a94f97 6e374cd
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Sep 22 14:05:41 2017 +0200

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

commit 6e374cdad76999485fa635e67a1d6335a9b47e1e
Merge: 71d64d8 ebc8f3e
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Sep 22 14:04:42 2017 +0200

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

commit ebc8f3e8a1a593f27e98dee5f09947915b7ac51c
Merge: 3745db8 450f189
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Sep 22 14:04:27 2017 +0200

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

commit 450f189455af023371df06045396a5e56dd04aa0
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Sep 11 16:52:34 2017 +0200

    Bug#26094556 MTR MAY MIX WORKERS OUTPUT ON FAILURE
    
    Make test output synchronized with other output from MTR, not cause mixed
    output between worker threads.
    
    Only print test output for tests without .result file if test failed.
    
    Note, with --nocheck-testcases the above behaviour is turned off and test
    output for tests without .result file will show up unsynchronized
    independent of success status.
    
    Note, with bug#26406981 support for MTR tests without .result file is in
    general removed.
    
    There is an exception for some ndb tests that still depends on the feature.
    
    Some of these are quite noisy and often mess up MTR logs in PB2.
    
    Change-Id: I766cdefee0e37643152a6da585a4dbefe4b38afd

commit 1cf5c363640ab8ff4707e12ffc69802b72c2f14d
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Sep 22 13:18:10 2017 +0200

    BUG#26847666: Bug fix that makes use of API fail node handling to also handle TCRELEASEREQ

commit 013cf380effcc661b9320f5d8dd5cb73e8ec6091
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Sep 22 13:17:52 2017 +0200

    BUG#26847666: Create new functions handleApiFailedConnection and set_api_fail_state, introduce enum for apiFailState, minor changes of placement of brackets, no functional change at all, added new test case

commit e89b17ec98a00357a8069e35ec7b350e5b665b95
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Sep 21 15:08:39 2017 +0300

    wl#7614 noregex-03.diff
    
    csv: regex no longer used

commit a9bf2bb503cf8a1d53a30b7532f5023a20075b1a
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Sep 21 15:08:17 2017 +0300

    wl#7614 noregex-02.diff
    
    csv: regex decimal to hand-coded

commit 01118f0f6b506a4eb3705267018ccacd12453039
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Sep 21 15:07:43 2017 +0300

    wl#7614 noregex-01.diff
    
    csv: regex date/time to hand-coded

commit 2dfa7718fac874b697402a6b3a0719fca419c95a
Merge: 3aaf414 3a94f97
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Sep 20 17:38:59 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 3a94f9769c793840fd85824dbab0df166b37e36e
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Sep 20 17:37:14 2017 +0530

    Bug#26758939 : Post push fix
    
    Updated ClusterJ testcase to expect the updated error message

commit b2114f865a74fdfdd2e1d8782b5f79f775fe10b2
Author: Pedro A. Ribeiro <pedro.a.ribeiro@oracle.com>
Date:   Thu Sep 14 15:46:00 2017 +0200

    Bug#26758939 : FAIL TO LOCK THREAD TO CPU
    
    Post fix patch
    
    The first version of the patch introduced a goto call to label
    "error" which would  only be used when HAVE_LINUX_SCHEDULING
    is defined. This might cause compilation errors. Replaced goto call
    by a function return call with proper error code.
    
    This solution is not robust against future changes in error handling
    inside the function NdbThread_UnlockCPU(). However an improvement
    would require a major refactor of this function
    
    (cherry picked from commit 2753ab2b02a99ef91453a3da0a9bfc4d94a6605a)

commit ed7642a176250441921c5cbf1e45d6036123b579
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Sep 12 21:06:38 2017 +0530

    Bug#26758939 : FAIL TO LOCK THREAD TO CPU
    
    When an ndbd is configured to lock its thread to its CPUs, it crashes
    during start phase with a "Failed to lock tid" error message.
    
    This bug is a side effect of fix for Bug#26378589. That patch disables
    the cpu locking feature if the required glibc version is not available.
    The bug in the glibc will be hit only during a Ndb_UnlockCPU() call.
    The datanodes never use this call. This unlock call can be only
    accessed through the API calls. So, this patch enables the cpu locking
    feature for the datanodes and disable them only for the API calls,
    based on the glibc version used. This patch also adds restrictions to
    prevent any future uses of sched_setaffinity() call with an all ones
    CPU mask in an unsupported glibc environment. The relevant ClusterJ
    message is also updated to provide more information to the user.
    
    (cherry picked from commit 9dd6bdd9915ea2b94d15c34e8bc36ef7078cd8c5)

commit 8c672586337e79b948b90f66ed13e4c376a0e663
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Sep 8 00:46:27 2017 +0530

    WL#10816: Mediumint support for ClusterJ - Big Endian post push fix
    
    The medium int conversion to a Java int type was not properly handled
    in Big Endian machines. This patch fixes that.
    
    (cherry picked from commit 7e93eadecddd77ea10ed3a07ca864335122a0910)

commit a02aab32e5ae918e5cfd69bd47016c55e4053b17
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed Sep 13 12:20:39 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7
    
    (Bug#26372491 - RCE THROUGH THE MISHANDLE OF BACKSLASH postpush fix)
    (cherry picked from commit 7b433c573694dbde070359db7d26cb17749cbea1)

commit 92b5c669082aaa953796632c690bd9f28439da71
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Fri Sep 8 18:32:58 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7
    
    (Bug#26372491 - RCE THROUGH THE MISHANDLE OF BLACKSLASH)
    (cherry picked from commit 06db648de3b080bae518a083dd122ea10b058c04)

commit 18e105c972321f43b607810ef06c53c942a44028
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Sep 7 17:45:57 2017 +0530

    Revert "Bug#26589008 SYNC_BINLOG=0 SHOULD IGNORE BINLOG_GROUP_COMMIT_SYNC_DELAY"
    
    This reverts commit 5654f5ec294f3d8ea087029ba9b47ad3eb2835b3.
    
    (cherry picked from commit 59c158713596ffa9a796c6462e9951dd05282246)

commit bd5c998902579b04ea2f213bdd49d0050fc3d702
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed Sep 13 12:17:36 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6
    
    (cherry picked from commit 148b35d25800dfac8855262967eb76408126649b)

commit c087d8dacd128ea68bf1ed3e360c67189c5145b6
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Fri Sep 8 18:30:57 2017 +0530

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

commit b674def31e965d94e8ac9c8b4a08cadb54b394eb
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Aug 28 12:30:21 2017 +0200

    Bug #26501092 mysql server installer cannot detect that visual c++ 2010 is installed.
    
    (cherry picked from commit 816d1307409636655afee3424aa96451a4e22be2)

commit f228edb0ef088f22f47fe33fe35e15bab88d2dd7
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed Sep 13 12:14:06 2017 +0530

    Bug#26372491 - RCE THROUGH THE MISHANDLE OF BACKSLASH
    
    Post push fix to address test script failure.
    
    (cherry picked from commit 461eef45301fe6c725b0add5a6f28057a3d67e21)

commit 9348a119b1a2db4f370e9ee24789cb4ae31b4cf5
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Fri Sep 8 18:29:07 2017 +0530

    Bug#26372491 - RCE THROUGH THE MISHANDLE OF BACKSLASH
    
    DESCRIPTION:
    ===========
    The bug is related to incorrect parsing of SQL queries
    when typed in on the CLI. The incorrect parsing can
    result in unexpected results.
    
    ANALYSIS:
    ========
    The scenarios mainly happens for identifier names
    with a typical combination of backslashes and backticks.
    The incorrect parsing can either result in executing
    additional queries or can result in query truncation.
    This can impact mysqldump as well.
    
    FIX:
    ===
    The fix makes sure that such identifier names are
    correctly parsed and a proper query is sent to the
    server for execution.
    
    (cherry picked from commit 31a372aa1c2b93dc75267d1f05a7f7fca6080dc0)

commit 3aaf41420abeb4b2b67dffcccb45ec7f192533fb
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Sep 16 01:45:36 2017 +0300

    wl#7614 rowmap-01.diff
    
    rowmap: replace std::vector by ordered list

commit bbe2da9d9c0c3a41c11a47a29b5eadedea8672d9
Merge: ca324b4 2753ab2
Author: Pedro A. Ribeiro <pedro.a.ribeiro@oracle.com>
Date:   Fri Sep 15 11:09:14 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 2753ab2b02a99ef91453a3da0a9bfc4d94a6605a
Author: Pedro A. Ribeiro <pedro.a.ribeiro@oracle.com>
Date:   Thu Sep 14 15:46:00 2017 +0200

    Bug#26758939 : FAIL TO LOCK THREAD TO CPU
    
    Post fix patch
    
    The first version of the patch introduced a goto call to label
    "error" which would  only be used when HAVE_LINUX_SCHEDULING
    is defined. This might cause compilation errors. Replaced goto call
    by a function return call with proper error code.
    
    This solution is not robust against future changes in error handling
    inside the function NdbThread_UnlockCPU(). However an improvement
    would require a major refactor of this function

commit ca324b47d20e14f42d690f8c4998ab5b22d1c182
Merge: 84acc35 9e797be
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Sep 14 14:45:12 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 9e797bebb27c26676e6d273be00e77c6b59a28f7
Merge: 9dd6bdd 71d64d8
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Sep 14 14:40:29 2017 +0200

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

commit 71d64d815b91db23590a2d40982c77671cc86a7e
Merge: 391d589 3745db8
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Sep 14 11:56:57 2017 +0200

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

commit 3745db829322f0ef2f69b9ffc8381d324cc13c65
Merge: 1595089 950d5aa
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Sep 14 10:34:49 2017 +0200

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

commit 950d5aacbf4ce0f30ec6bf88c6597fd9c59bd8e5
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Sep 14 10:32:22 2017 +0200

    Bug#26333981 BI IS WRITING TABLE_MAP EVEN WHEN USING SQL_LOG_BIN = 0
    
    Added support for maintaining a accumulative any_value bitmap
    for GCI event operations that represents bits set consistently
    for all rows of a specific table in an epoch. A new method variant
    Ndb::getNextEventOpInEpoch3 is added that allows for retrieving the
    cumulative any_value bitmap.
    Added a check if all operations (rows) for a specific tables are all
    marked as nologging to exclude adding this table from the Table_map
    of the binlog injector. Added a new test case that verifies this case
    by checking just the Table_map (independent of how epochs are generated).

commit 84acc35e41b084e7839e99e8e7fc552a8286b85a
Merge: 113c772 9dd6bdd
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Sep 13 22:49:06 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 9dd6bdd9915ea2b94d15c34e8bc36ef7078cd8c5
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Sep 12 21:06:38 2017 +0530

    Bug#26758939 : FAIL TO LOCK THREAD TO CPU
    
    When an ndbd is configured to lock its thread to its CPUs, it crashes
    during start phase with a "Failed to lock tid" error message.
    
    This bug is a side effect of fix for Bug#26378589. That patch disables
    the cpu locking feature if the required glibc version is not available.
    The bug in the glibc will be hit only during a Ndb_UnlockCPU() call.
    The datanodes never use this call. This unlock call can be only
    accessed through the API calls. So, this patch enables the cpu locking
    feature for the datanodes and disable them only for the API calls,
    based on the glibc version used. This patch also adds restrictions to
    prevent any future uses of sched_setaffinity() call with an all ones
    CPU mask in an unsupported glibc environment. The relevant ClusterJ
    message is also updated to provide more information to the user.

commit 113c772f9a6d33a5c405f064f2161800974ff32d
Merge: 73ce17c 8f03285
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Sep 11 18:34:32 2017 -0700

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 8f03285ed27169030bb6666aa4d0bc8cb4826dd4
Merge: 7e93ead 391d589
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Sep 11 18:34:19 2017 -0700

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

commit 391d589db32548da2150acb380ef4fcf4ee800d4
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Sep 11 18:21:43 2017 -0700

    New script storage/ndb/count-disabled
    Count disabled tests in ndb test suites.

commit 73ce17c8477a84905c3cc0cce8ffae85eb1c3a38
Merge: 4314f2e 7e93ead
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Sep 8 00:47:18 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 7e93eadecddd77ea10ed3a07ca864335122a0910
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Sep 8 00:46:27 2017 +0530

    WL#10816: Mediumint support for ClusterJ - Big Endian post push fix
    
    The medium int conversion to a Java int type was not properly handled
    in Big Endian machines. This patch fixes that.

commit 4314f2ec26cecb84f63896cb157f76c70a30c24f
Merge: b01d58b 78d2ed6
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:54:54 2017 +0200

    Upmerge of the 7.5.8 build

commit 78d2ed66ce364bd813988d0a3f6b8daade85d908
Merge: 4cda0ff c735736
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:54:01 2017 +0200

    Upmerge of the 7.4.17 build

commit 4cda0ff86aa99df17a66f312f40a950e8a96ce51
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:53:38 2017 +0200

    Raise version number after tagging 7.5.8

commit c73573646085e1d255aff4e480dbd3a75c47765a
Merge: 775da2d 1595089
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:51:32 2017 +0200

    Upmerge of the 7.3.19 build

commit 775da2d61b145809eeec3f3cac7e6738324cc142
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:51:10 2017 +0200

    Raise version number after tagging 7.4.17

commit 159508916e6b4581efe679ad661d1b42dc74b303
Merge: 0bc510b ea92578
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:49:20 2017 +0200

    Upmerge of the 7.2.31 build

commit 0bc510b8a681cb241e10c8aa2f337cd99fce79f6
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:48:52 2017 +0200

    Raise version number after tagging 7.3.19

commit ea925786a3d22a0524137cf53429aefafa1d8dcc
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Sep 7 08:45:56 2017 +0200

    Raise version number after tagging 7.2.31

commit b01d58b522b1172cb33f9283e28458d2f8e5485f
Merge: 57f6fee 7c7f7c0
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Sep 6 20:14:08 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 7c7f7c0771e3ec93132e0a5fed62e0f4a540b9e2
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Sep 6 20:11:55 2017 +0530

    Bug #25960230 899 ROWID ALREADY ALLOCATED ERROR UNDER HEAVY LOAD
    
    Reverting fix due to autotest failure.

commit 57f6feee26d1b6a3c88577e5a8485185c1d2f6bf
Merge: b850f63 55f1177
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Sep 1 21:10:22 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 55f117715469cc172b20b0ce76871400c4ca3743
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Aug 30 19:42:42 2017 +0530

    WL#10816: Mediumint support for ClusterJ
    
    This patch adds medium int support to clusterj.
    
    Changes
    
     Utility.java
     - Added mapping for Mediumint and Medium unsigned int. They are now
       mapped to int data type.
    
     NdbRecordImpl.java
     - Added support for Autoincrement to Medium int datatypes
    
     Bundle.properties
     - Added a new error ERR_Bounds which is thrown when the user tries to
       insert an out of range value.
    
     Testcases
     - Updated AutoPKTest to include medium int datatypes
     - Added two new testcase MediumIntegerTypesTest and
       MediumUnsignedTypesTest that runs various tests in Medium int data
       types
     - Added a new verifyException method to AbstractClusterJTest class.
       This can be used to verify the expected exceptions in the testcases.
     - Updated schema.sql to include all the newly add the testcase schema

commit e3119fd8fb2067a8e3283b13d755d1b7af6b5b49
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Aug 30 19:42:42 2017 +0530

    WL10815 : Clusterj support cpu thread binding - Implement SessionFactory methods.
    
    SessionFactoryImpl.java
     Added new methods to lock the connection pools connections' receiver
     threads to a given CPU and to set and read the activation threshold
     value of the said receiver threads.
    
    ClusterConnectionImpl.java
     Added methods to support the newly added methods in the SessionFactory
     class. Internally, the newly added SessionFactory methods delegate the
     work to the ClusterConnection objects in the connection pool.
    
    Constants.java
     Added new properties to pass the cpu ids and the activation threshold
     using the properties file. The values are parsed and applied to the
     connections in the connection pools when during creation.
    
    RecvThreadCPUTest.java
     New testcase to test the new methods of the SessionFactory class.

commit 5f44a830b55db66036581ec77603b522efb29f65
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Aug 30 19:42:41 2017 +0530

    WL10815 : Clusterj support cpu thread binding - Adding Ndbjtie mappings
    
    This patch adds ndbjtie mappings for the following
    Ndb_cluster_connection class methods
      - set_recv_thread_activation_threshold
      - get_recv_thread_activation_threshold
      - set_recv_thread_cpu
      - unset_recv_thread_cpu
    
    This commit also overloads the set_recv_thread_cpu native method with a
    variant that takes in just a single cpu_id.

commit 736484830e3be3e19b34d79f52775675b1be8a28
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Aug 30 19:42:41 2017 +0530

    WL10815 : Clusterj support cpu thread binding - Update ndbapi.
    
    ndbapi's set/unset_recv_thread_cpu methods return -1 on failure.
    This is not very much useful to the caller. This patch fixes those
    methods by returning the actual error in case of failure instead of -1.

commit e09ce12c9874b5f00ece6d359a5c249ab1d29c41
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Aug 30 19:42:41 2017 +0530

    Bug#26378589 : CPU LOCKING FEATURE OF THE RECEIVER THREADS IS NOT ENABLED IN LINUX BUILDS
    
    The CPU locking feature is not enabled in the Linux builds due to an
    issue in the ndb_configure.cmake's test program used to check the
    availability of the sched_setaffinity syscall. This patch fixes that and
    one more issue in the ndb_configure.cmake file due to which the
    HAVE_FUTEX macro was not being enabled.
    
    Also, due to a bug in the GNU C library's sched_setaffinity call,
    requests that change the CPU affinity fails. Due to this bug in the
    library, the unset_recv_thread_cpu api call fails in the linux
    platform. This bug in the GNU library is fixed from version 2.23. So
    this patch makes that version a minimum requirement for the CPU Locking
    feature to be enabled.

commit 31892f702fe5a3755a582116d062bd4823934719
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Mon Jun 19 11:47:13 2017 -0700

    #WL10815 add get/set receive thread activation threshold to ndbjtie

commit a34a82dc716fa5ac71cc215286dc0e29b53818a8
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Mon Jun 19 11:33:11 2017 -0700

    update ndbjtie HOWTO

commit b850f63964ac219801b99325e6915da0f79a2130
Merge: aca3fd2 2ccadb1
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Fri Sep 1 16:10:50 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 2ccadb1402c4dea4fa274bcab8ac79b4682e6075
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Fri Sep 1 16:09:48 2017 +0530

    Bug #25960230 899 ROWID ALREADY ALLOCATED ERROR UNDER HEAVY LOAD
    
    Fix ndb_err899 mtr failure.

commit aca3fd2f6a3a8e21a70699e6e7672665899151eb
Merge: 0d812d8 1e82fa6
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Fri Sep 1 11:31:09 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 1e82fa6386d4b92d80763626d2b1d7d218dae75a
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Fri Sep 1 11:30:11 2017 +0530

    Bug #25960230 899 ROWID ALREADY ALLOCATED ERROR UNDER HEAVY
     LOAD
    
    Error 899 "rowID already allocated" occurs when a rowID is
    available at the primary and unavailable at the backup. An
    insert operation seizes the rowID at the primary and fails to
    seize it at the backup since it is unavailable.
    
    For multiple operations on the same tuple where the end result
    of the transaction is that the tuple is deleted, the last
    operation on that tuple is marked as the deallocator of the
    rowID. The operation is marked by setting the m_dealloc flag
    during COMMIT. When any op COMPLETEs, its m_dealloc flag is
    checked, and if set, its rowID is deallocated. In this case,
    a transaction T1 contains a READ followed by a DELETE on the
    same tuple, while another transaction T2 runs INSERT operations
    on the same table.
    
    T1 commits/completes in the unexpected (not incorrect) order:
    
    COMMIT(DELETE)->COMMIT(READ)->COMPLETE(READ)->COMPLETE(DELETE)
    
    - T1: DELETE commits on primary
    - T1: READ commits on primary, m_dealloc=1 for READ on primary
    - T1: READ completes on primary, deallocates rowID X:Y
    - T2: INSERT seizes freed rowID X:Y on primary
    - T2: INSERT tries to seize rowID X:Y on backup, gets error 899
      since rowID is not freed yet on backup
    - T1: DELETE completes on backup, deallocates rowID X:Y
    
    This is fixed by enforcing a constraint for commits that the
    dealloc op must be a write op. Write ops COMPLETE first on the
    backup and then on the primary, so the sequence of
              dealloc@backup -> dealloc@primary
    is enforced. So with write ops deallocating, a rowID cannot be
    freed on the primary before it is freed on the backup.
    
    The fix is that the last write op on the tuple is chosen as the
    dealloc op instead of the last read/write op on the tuple. Some
    refactoring is also done to separate the 'mark dealloc op' logic
    from the locking and commit logic, so that the existing behaviour
    for aborts can be retained.

commit 0d812d8230be061c1f6706ea9f5ef99e01b91acf
Merge: d80dbf0 2830f23
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 31 17:59:00 2017 +0100

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit 2830f232758c98da556c6695ba7117bd2bfc2e36
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 31 17:56:40 2017 +0100

    Bug #26724559 NDB : VALGRIND : NDB_MODIFIERS LEAKS MEMORY
    
    Refactored NDB_Modifiers code
     - Code moved out of ha_ndbcluster.cc into new files
       ndb_modifiers.h
       ndb_modifiers.cc
     - Dependency on thd removed
     - Comment (re)generation functionality added to NDB_Modifiers
     - Testcases updated to reflect new canonical comment format
    
    Code is hopefully clearer and less error prone

commit 1f6781f64d929460b97679eaafe6235fa831df5c
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 31 17:53:51 2017 +0100

    Bug #26724559 	NDB : VALGRIND : NDB_MODIFIERS LEAKS MEMORY
    
    Fix error path leak.
    
    Refactoring to follow

commit d80dbf03968751d56c37be01b726b7248e2e76a0
Merge: 34e61c0 4f933e0
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Aug 31 11:38:36 2017 +0530

    Null Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Merge tag 'clone-5.5.58-build' into mysql-5.5-cluster-7.2)

commit 4f933e01fb3df405bb302869ccd6f7a94e588d5d
Merge: e070db3 74704a1
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Aug 31 11:37:08 2017 +0530

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

commit 74704a169f5fa927eb52ec55daf8fb4e717f5f85
Merge: c8d643b 9012671
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Aug 31 11:35:24 2017 +0530

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

commit 90126710e0d445cb7e933e09f69fa0be6f5dc94a
Merge: 9e3c358 4b31d18
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Aug 31 11:33:09 2017 +0530

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

commit 34e61c066c70adc32a8283cf3cd0bac77f69737e
Merge: 2f9ba46 e070db3
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Aug 31 11:24:16 2017 +0530

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

commit e070db34799bbe9a9749831efe37262989bcf3f8
Merge: ba3196c c8d643b
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Aug 31 11:22:27 2017 +0530

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

commit 2f9ba46e2ac624d0d445641eb0f5770f85e33ddf
Merge: c8948c4 ba3196c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Aug 30 14:04:44 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Merge tag 'clone-5.7.20-build' into mysql-5.7-cluster-7.5)

commit 4b31d185f70c27edafc3c17c200a8f3d766456d2
Merge: efe4510 ebfd0eb
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Aug 30 12:12:57 2017 +0530

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

commit c8d643bfa5f085a0524db2abaee926edf70a463c
Merge: 176cf81 9e3c358
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Aug 30 12:01:18 2017 +0530

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

commit 9e3c358411810fdfb5a8ab1df6088f4407f7a29f
Merge: 1cb701a bdc4aa6
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Aug 30 11:57:14 2017 +0530

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

commit ba3196cfe7db496beff15d4c122f58930cb90d5b
Merge: 88f4225 480caa0
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Aug 29 20:02:02 2017 +0530

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

commit 480caa0e21b039eb937d07db3d80403372e83b45
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Tue Aug 29 14:55:26 2017 +0530

    Bug#26414532: MYSQLRPLSYNC ERRORS OUT BECAUSE SLAVE IS USING
    --SUPER-READ-ONLY OPTION
    
    Post push fix to address test issue.

commit 5d8931ee86f7f959cf0d6bf54828f578632a4647
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Sun Aug 13 11:00:17 2017 +0300

    wl10820 backport

commit 66d23cf58e6ab02b91c10cffb0f17bee5ed3f503
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri Aug 25 10:57:13 2017 +0200

    BUG#25495393: GROUP REPLICATION CAN USE SOME VERBOSITY IN THE ERROR LOG
    
    Fix a memory leak on Gcs_view handling on gcs_event_handlers.cc.

commit 33bc7b6676451e09cf8f179eec61c1589479721b
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Aug 24 16:56:33 2017 +0200

    Bug#26680491 BUILD ON WINDOWS: ADAPT WIX SEARCH TO 32/64BIT VERSIONS OF CMAKE
    
    When upgrading to cmake3.8 bulding of MSI packages failed because the WiX
    toolkit is not found.
    
    Solution: Search in ProgramFiles(x86) in addition to existing search paths.

commit 45e7c0dd74c26d3adea65667882538fbd8613857
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Fri Aug 25 03:12:48 2017 +0200

    Bug#25495393: GROUP REPLICATION CAN USE SOME VERBOSITY IN THE ERROR LOG
    
    Post push handled windows build issues and doxygen warnings.

commit ed02e297ff98682c0c25d70de0d524ae522bac90
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Fri Aug 25 00:03:28 2017 +0200

    Bug#26024253: GR MEMBER STOP MUST STOP ALL ASYNCHRONOUS CHANNELS THAT ARE FEEDING DATA INTO IT
    
    Post push fix to add "have_debug.inc" to a gr_stop_async_on_stop_gr test case.

commit 38fa9e96d16fefc0fd75d9976a7633fd537377b3
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Thu Aug 24 22:33:03 2017 +0200

    Bug#25495393: GROUP REPLICATION CAN USE SOME VERBOSITY IN THE ERROR LOG
    
    Handled failing builds due to missing sstream header file.

commit 5ca5f18320e41a0ff131f66e7bb11912d0d3d888
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Wed Jul 26 04:20:24 2017 +0530

    Bug#25495393: GROUP REPLICATION CAN USE SOME VERBOSITY IN THE ERROR LOG
    
    Description:
    At present not all scenarios of Group membership changes are logged.
    When member join or member leaves, customers cannot identify same by looking
    at logs. View changes are not logged. Present logging does not assist DBAs with
    corrective measures during network partitions or inform DBAs when member
    re-connects.
    Also at some places we are logging internal debug messages which cannot be decoded
    by DBAs.
    Important member related configuration is also not logged.
    
    Resolution:
    Logging has been analyzed for:
    1. View changes
    2. Member join
    3. Member leave(graceful and crash)
    4. Member unreachable
    5. Member re-connect
    6. Removal of debug messages
    7. Member configuration has been extended with Member_id, member_uuid,
       single_primary_mode, and group_replication_auto_increment_increment
    8. Improvements in single-primary mode status reporting and member
       leaving/joining logging
    New messages have been added and change to existing messages where required has
    been done.

commit c165ce82d364b37286ae1cd57feede76ac9349ab
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Thu Aug 24 19:59:47 2017 +0200

    Bug#26024253: GR MEMBER STOP MUST STOP ALL ASYNCHRONOUS CHANNELS THAT ARE FEEDING DATA INTO IT
    
    Issue
    =====
    If a member that has asynchronous channels feeding data into it - either on
    multi-primary deploy or the primary on single-primary deploy - does stop, all
    asynchronous channels must be stopped to avoid that changes are made locally
    (not replicated to the group).
    
    Even when super_read_only it is set on STOP GROUP_REPLICATION, that will not
    affect already running asynchronous which can still do changes.
    
    Solution
    ========
    When group replication stops, due to error or due to executing stop
    group_replication command, all asynchronous channels are stopped.

commit 5654f5ec294f3d8ea087029ba9b47ad3eb2835b3
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Aug 24 10:56:38 2017 +0530

    Bug#26589008 SYNC_BINLOG=0 SHOULD IGNORE BINLOG_GROUP_COMMIT_SYNC_DELAY
    
    Problem: When sync_binlog=0, sync stage in binlog group commit is
             never reached. But still each binlog group is waiting for
             BINLOG_GROUP_COMMIT_SYNC_DELAY seconds before entering into
             sync stage.
    
    Fix: Now the code is changed in such a way that the waiting logic considers
         sync_binlog=0 case and skips delay logic in such case.

commit c2b1fdc4f4aa61fe76b8ac7a34d0c1bb4ed2deda
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri Aug 11 16:00:58 2017 +0200

    Bug#26474153 CONTRIBUTION: ADJUST SPEC FILE TO SHOW A PROPER RPMBUILD COMMAND
    
    Package redhat-rpm-config adds some convenience macros when building
    on RHEL6 and later. Recommend package when rebuilding rpm package.
    
    RHEL5 is EOL, remove from comment.
    
    Change based on contribution from Simon Mudd, bug#87098.

commit 7decf32cfeb50de379d1d1cc45edee448ff5ec89
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri Aug 11 16:16:30 2017 +0200

    Bug#26595288 5.7 STARTUP SCRIPTS ALWAYS INITIALIZE IF EMPTY DATADIR
    
    Add option to skip automatic init, making it possible to opt-out.
    Default is still to perform init.
    
    To skip init, create file /etc/sysconfig/mysql with contents like:
    
    NO_INIT=true

commit 9a9b6ec37c70fc603385bdbc93797edf36fc0ad4
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri Aug 11 15:38:09 2017 +0200

    Bug#26446321 CONTRIBUTION: FIX INSTALL DATABASE BY USED MYSQLD --INITIALIZE
    
    Since MySQL 5.7 mysql_install_db has been deprecated, mysqld --initialize is
    now preferred. Switch mysqld_multi.sh.
    
    Based on contribution from tigerb, bug#87080.
    
    Change is 5.7 specific, MySQL 8 was fixed by:
     WL#9071: Remove mysql_install_db and server --bootstrap option

commit 39cbc25e9e7bb62cfd327ef1106ee27fbdcdbe9f
Author: Georgi Kodinov <georgi.kodinov@oracle.com>
Date:   Thu Aug 24 15:41:50 2017 +0300

    WL#8891: Audit Log: Abort SQL queries on rule based condition

commit 671c1b618d88e414d337dece79949e9ec58145f8
Merge: eadb8d0 bdc4aa6
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Thu Aug 24 17:06:07 2017 +0530

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

commit bdc4aa601950295a602c5320f260d91e66e6ff82
Merge: 0012c45 ebfd0eb
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Thu Aug 24 17:04:45 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit ebfd0ebe55692c0f115f01d5441050b773674a71
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Thu Aug 24 17:03:21 2017 +0530

    Bug#26361149  MYSQL SERVER CRASHES AT: COL IN(IFNULL(CONST,
                           COL), NAME_CONST('NAME', NULL))
    
    Backport of Bug#19143243 fix.
    
    NAME_CONST item can return NULL_ITEM type in case of incorrect arguments.
    NULL_ITEM has special processing in Item_func_in function.
    In Item_func_in::fix_length_and_dec an array of possible comparators is
    created. Since NAME_CONST function has NULL_ITEM type, corresponding
    array element is empty. Then NAME_CONST is wrapped to ITEM_CACHE.
    ITEM_CACHE can not return proper type(NULL_ITEM) in Item_func_in::val_int(),
    so the NULL_ITEM is attempted compared with an empty comparator.
    The fix is to disable the caching of Item_name_const item.

commit eadb8d0f0a501125ddc90d0afd75d9b858d88113
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Thu Aug 24 12:39:14 2017 +0200

    BUG#26611272: Test gr_uninstall_while_network_blocked  is failling on PB2
    
    Desciption:
    
    This test create a group of two members, where one member is put in a UNREACHABLE state
    and then INSERT is executed which gets blocked, then when we try to execute UNINSTALL
    command it returns an error that plugin cannot be uninstalled now.
    
    But if the UNINSTALL is executed before the plugin receives INSERT query, the plugin
    will be able to UNINSTALL successfully, that results in a test failure as is
    expecting UNINSTALL to fail with error ER_PLUGIN_CANNOT_BE_UNINSTALLED.
    
    Solution:
    
    To prevent the uninstall getting executed successfully, we wait for server to receive
    the INSERT, before executing the UNINSTALL of Group Replication plugin.

commit 270a2356f911279fa99c5c9879a6a61884b4f4f0
Merge: 8946b3f 0012c45
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Thu Aug 24 14:25:10 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 0012c451bf04e49a50dc113637de2144ddfb89ee
Merge: 801b070 0bed495
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Thu Aug 24 14:23:52 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 0bed495b4909b9d72e37c9075f0057263040ab3f
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Thu Aug 24 14:19:38 2017 +0530

    Bug#26482173: TLS CIPHER NEGOTIATION INCORRECTLY MATCHES ON
                  LAST BYTE ONLY (YASSL)
    
    
    Description:- TLS cipher negociation happens incorrectly
    leading to the use of a different
    
    Analysis:- YaSSL based MySQL server will compare only the
    last byte of each cipher sent in the Client Hello message.
    This can cause TLS connections to fail, due to the server
    picking a cipher which the client doesn't actually support.
    
    Fix:- A fix for detecting cipher suites with non leading
    zeros is included as YaSSL only supports cipher suites with
    leading zeros.

commit 8946b3f641d632781b3eace099e698a6ff459dca
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Fri Aug 18 14:59:23 2017 +0200

    Bug#26447825: MYSQLD COMPLETELY SILENT EVEN IN FAILURE IF LOG-ERROR IS
    NOT WRITABLE
    
    Problem: C-library function freopen() is not atomic. It closes the
    stream given as argument before trying (and thereby checking if it is
    possible) to open the file which the stream is to be associated with. So
    in the event that the open() fails, the user is left without a working
    stream where the error message for the failed open can go. Likewise, any
    buffered messages not yet written to the stream are also lost.
    
    Solution: Stop using freopen() and re-implement my_freopen() using
    fopen(), fileno() and dup2(). That way any error from open() (or
    fileno()) is caught before doing anything which affects the stream.
    According to the man-page, dup2() is atomic.

commit 11bb5b31a4c5b533473252ad6fe6c2fa79fe710e
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Thu Aug 24 12:23:00 2017 +0530

    Bug#26414532: MYSQLRPLSYNC ERRORS OUT BECAUSE SLAVE IS USING
    --SUPER-READ-ONLY OPTION
    
    Problem:
    ========
    After upgrading MySQL server from 5.7.17 to 5.7.18
    'mysqlrplsync' utility tool fails with following error.
    
    ERROR: Query failed. 1290 (HY000): The MySQL server is
    running with the --super-read-only option so it cannot
    execute this statement
    
    When this occurs, the Slave_SQL_Running on the slave server
    stops running and needs to be manually started again. The
    slave server does have the super-read-only option set to
    true. When running MySQL 5.7.17 this wasn't an issue.
    
    Analysis:
    ========
    When replication information repository is set to 'TABLE'
    few replication specific administration commands listed
    below, will try to update the repository tables.
    
    1) START SLAVE
    2) STOP SLAVE
    3) CHANGE MASTER
    4) RESET SLAVE
    5) RESET MASTER
    6) SET GLOBAL GTID_PURGED
    7) FLUSH BINARY LOGS
    8) 'gtid_executed' TABLE compression thread.
    
    First three commands were fixed as part of Bug#22097534:
    SUPER_READ_ONLY ABORTS STOP SLAVE IF
    RELAY_LOG_INFO_REPOSITORY=TABLE, DBG CRASH
    
    The reset of the commands were fixed as part of
    Bug#22857926: ASSERTION `! IS_SET()' AT SQL_ERROR.CC:38 IN
    READ_ONLY MODE FOR MANY RPL CMDS.
    
    During the Bug#22857926 fix, the previous Bug#22097534 fix
    specific changes were reverted a new approach was taken.
    
    The new approach used a flag named 'ignore_global_read_lock'
    whose intention is to ignore the read only option and allow
    commits to replication specific system tables.  If this flag
    is set then the additional check for 'read only' option is
    not done.
    
    But the above fix works fine only when 'AUTOCOMMIT=ON'.  In
    the case of AUTOCOMMIT=OFF the 'ignore_global_read_lock'
    flag is not set. Hence commands fail to ignore read_only
    restriction.
    
    STOP SLAVE command behavior explained in detail:
    
    STOP SLAVE command is an IMPLICIT COMMIT command, i.e
    parser will append an explicit BEGIN and COMMIT for this
    command.
    
    BEGIN
    STOP SLAVE;
    COMMIT;
    
    STOP SLAVE command will try to stop both the applier thread
    and receiver thread and update their positions in
    'slave_relay_log_info' and 'slave_master_info' tables.
    
    Case: AUTOCOMMIT=ON.
    
    1) BEGIN
    
    2) Update 'slave_relay_log_info' table and commit as a real
    transaction.
    
    System_table_access::close_table will invoke
    ha_commit_trans with 'ignore_global_read_lock=true'.
    
    Since autocommit is 'ON' each statement will do a complete
    commit and clean up the transaction context.
    
    3) Update 'slave_master_info' also does the same.
    
    4) COMMIT.
    
    COMMIT will invoke 'trans_commit_implicit'. It will check
    if there any active transactions which needs to be committed
    implicitly. Since step 2-3 are real commit transactions this
    final commit has nothing to do. It will exit without
    proceeding further.
    
    Case: AUTOCOMMIT=OFF.
    
    1) BEGIN
    
    2) Update 'slave_relay_log_info' table. This transaction is
    considered as a multi statement transaction mode, it will
    not commit on its own. It will wait for final COMMIT
    execution.
    
    3) Update 'slave_master_info' also does the same.
    
    4) COMMIT.
    
    COMMIT will invoke 'trans_commit_implicit'.
    
    It will check if there any active transactions which needs
    to be committed . Since there are active transaction
    sessions from step 2-3 'ha_commit_trans' will be called as
    shown below.
    
    'trans_commit_implicit' will invoke
    ha_commit_trans (thd,all=true,ignore_global_read_lock=false)
    
    This will not pass the read_only check and the command will
    fail.
    
    This issue happens for commands that update info tables
    other than 'gtid_executed' table. In case of 'gtid_executed'
    table irrespective of autocommit variable all the
    transactions are considered as 'real' transactions and they
    will do complete commit.
    
    Fix:
    ===
    Introduced a new variable, to flag the sql command under
    execution to ignore the read_only/super_read_only. If the
    variable is set then the command is allowed to execute even
    though read_only/super_read_only is enabled otherwise
    command is blocked.

commit 35fbd4fe164c4fb456641a7380490882d337db35
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Aug 24 07:41:46 2017 +0200

    Bug#26521654: AUTO GENERATED CERTIFICATES SHOULD USE X509 V3
    
    Description: Certificates generated by mysql server and
                 mysql_ssl_rsa_setup do not use X509v3 and
                 related extensions.
    
    Solution: Added X509v3 extension.

commit 18ac73fb2f82908a184f96d522ada6c33cde320f
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Wed Aug 23 22:42:22 2017 +0200

    Bug#25475132 GROUP REPLICATION: MYSQL CLIENT CONNECTIONS HANG DURING GROUP REPLICATION START
    Bug#26037344 THE DELAYED PLUGIN INITIALIZATION THREAD IS LEFT RUNNING WHEN IT IS NOT NEEDED
    
    Client complaints existed about how group replication would make
    connections hang on server start if the plugin was also
    starting. i.e., joining the group.
    To solve this we reworked the delayed initialization mechanism used on
    server starts, so it only blocks connections until the server is in
    read mode, not waiting for the member to join the group as before.
    This rework also solves the issue of the thread responsible for this
    task being initialized and running even when not needed.

commit c8948c495962ef6b03a97f550d1b9c7a5d0b1ff3
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Aug 23 12:15:44 2017 +0300

    wl#7614 optim06.diff
    
    batched row transfers for ops

commit d30a55089044167e160acf7a1e0f4891da926d6a
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Aug 23 12:15:25 2017 +0300

    wl#7614 optim05.diff
    
    batched row transfers

commit d4102dd7fc547bdf9dc5006d5a5211812bd83ecf
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Aug 23 12:12:09 2017 +0300

    wl#7614 optim04.diff
    
    batched row alloc and free

commit 78bd02839d1de9c71bb7d48ceb89252638c82d0f
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Aug 23 12:11:38 2017 +0300

    wl#7614 optim03.diff
    
    global stats, lock stats

commit 30062ab6ccc5ba328d309b79f790113c64ae2d8b
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Aug 23 12:11:19 2017 +0300

    wl#7614 optim02.diff
    
    rename some confusing variables

commit df249360fe37b3a5e6700e6f5af07f5ec0e9f798
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Aug 23 12:10:56 2017 +0300

    wl#7614 optim01.diff
    
    save performance related options

commit 3a3288c9d35b6294c13672bd66187ffae1654e86
Merge: 3f45fd3 801b070
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed Aug 23 14:02:00 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 801b0707e21d9e6033b7698abd3ad3a6ee8d89e0
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed Aug 23 13:58:51 2017 +0530

    Bug#25510805 - MYSQL CRASHES WHEN TRYING TO CONNECT FROM
                   A HOST WITH AHOSTNAME OF 69 CHARACTERS
    
    DESCRIPTION:
    ===========
    When a connection is made from a host with a hostname
    length of more than HOSTNAME_LENGTH characters,
    MySQL crashes with a buffer overflow.
    
    ANALYSIS:
    ========
    If the hostname of the connecting host is greater than
    HOSTNAME_LENGTH (60 chars), copying the hostname to the
    performance schema table field which is limited to
    HOSTNAME_LENGTH characters results in a crash.
    
    FIX:
    ===
    The fix is to truncate the hostname to HOSTNAME_LENGTH
    number of characters before adding them to the performance
    schema tables which record host information and details.
    This makes sure that the client connection is established
    successfully.

commit 3f45fd33654925fde447baa40afeacb3f10a3315
Merge: 2947333 c8b79b1
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Wed Aug 23 13:04:52 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit c8b79b122008e17ce3d0710a0c6a9ee04ceebbb1
Merge: ca782a5 331fb96
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Wed Aug 23 13:02:23 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 331fb96afc1af52a44c0d218feb2f9f7e1a1b9a7
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Wed Aug 16 13:58:25 2017 +0530

    Bug#26390632: CREATE TABLE CAN CAUSE MYSQL TO EXIT.
    
    Analysis
    ========
    CREATE TABLE of InnoDB table with a partition name
    which exceeds the path limit can cause the server
    to exit.
    
    During the preparation of the partition name,
    there was no check to identify whether the complete
    path name for partition exceeds the max supported
    path length, causing the server to exit during
    subsequent processing.
    
    Fix
    ===
    During the preparation of partition name, check and report
    an error if the partition path name exceeds the maximum path
    name limit.
    
    This is a 5.5 patch.

commit 2947333bff9c9cf128f64f63ad9df2de906757aa
Merge: 22f0a42 ca782a5
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Aug 23 09:27:40 2017 +0200

    Null-merge from 5.6.

commit ca782a59ef6d56e3ee555005fd9cd71d6195f313
Merge: 01a355e be9b6bc
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Aug 23 09:26:41 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit be9b6bc9f9fa758b39eb914732996e68633e8b9c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Aug 15 13:15:19 2017 +0200

    Bug#19875294 ASSERTION `SRC' FAILED IN MY_STRNXFRM_UNICODE (SIG 6 -STRINGS/CTYPE-UTF8.C:5151)
    
    Backport from 5.7 to 5.5 Field_set::val_str()
    should return String("", 0, cs) rather than String(NULL, 0, cs)

commit 22f0a42941ba2fa67ca0a6a6e1b43acc1a63d9d8
Merge: 93050cf 01a355e
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Aug 23 09:18:53 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 01a355e5f0c5dd07d89b1f6ec6a15e52192ea176
Merge: f3d8bdc 5a88c15
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Aug 23 09:17:38 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 5a88c153df08d73674197b5cff78dbfcb9c13030
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Aug 23 09:16:12 2017 +0530

    Bug#24763131 LOCAL-INFILE DEFAULT SHOULD BE DISABLED
    
    Problem & Analysis: Slave's Receiver thread, Applier thread and worker
        threads are created with LOCAL-INFILE option enabled. As the document
        says https://dev.mysql.com/doc/refman/5.7/en/load-data-local.html,
        there are some issues if a thread enables local infile.
        This flag should be enabled with care. But for the above mentioned
        internal threads, server is enabling it at the time of creation.
    
    Fix: Further analysis on the code shows that none of threads really
        need this flag to be enabled at any time as Slave never executes
        "LOAD DATA LOCAL INFILE" after reading it from Relay log.
        Applier thread removes "LOCAL" before start executing the query.

commit afa59da07db251411f37324eae8c3fbecf86d0e5
Merge: 08bd7b0 88f4225
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Aug 22 16:47:50 2017 +0100

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit 88f4225e08131b423d53720e10022ead8a3adce2
Merge: 0e3e08a 176cf81
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Aug 22 16:46:17 2017 +0100

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

commit 176cf81f50eb042239d3da52643e38a6eebaeefd
Merge: a8b3554 1cb701a
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Aug 22 16:44:54 2017 +0100

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

commit 1cb701ab459799882a674616e2e627d16b519cea
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Aug 22 16:35:00 2017 +0100

    Bug #26661468 	NDB : NO MECHANISM TO STALL LCP FOR TESTING
    
    Add dump code 7027 91919191 for stalling LCP start for
    test scenarios.

commit 93050cf6f6c18205b81f4be9803c8e37e0400540
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Tue Aug 22 14:08:10 2017 +0530

    Bug #26432173: INCORRECT SUBQUERY OPTIMIZATION WITH
                   LEFT JOIN(SUBQUERY) AND ORDER BY
    
    Post-push fix for main.derived:
    Windows prefers derived table names in lowercase.

commit 9c7ca080014739512ee279f60cd72d9c822eaa78
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Mon Aug 21 12:28:33 2017 +0200

    Followup fix Bug #25892493 GR XCOM SERVICE SEGFAULTS WHEN MORE THAN 1024 FILE DESCRIPTORS ARE IN USE
    
    The original fix introduced a misplaced call to task_sys_deinit when
    it was merged to 5.7. This fix moves the call to the correct place.

commit 75babb156b79b0e9c7242935ebc90c742f5966f4
Merge: 95a0073 f3d8bdc
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Mon Aug 21 14:50:52 2017 +0530

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

commit f3d8bdcac4e8a137549ad6be9434185a9ee71c3f
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Aug 16 13:30:52 2017 +0530

    Bug#22382199	RPL.RPL_DUMP_THREAD_KILL FAILS WHEN RUN WITH --MEM
    
    Problem: RPL.RPL_DUMP_THREAD_KILL is failig frequently in test runs.
    
    Analysis: When this test script is running in combination with other tests,
    it is possible that dump threads from those tests are not killed.
    Every test script has rpl_end.inc but that .inc does not kill dump threads.
    This test script expects that the number of dump threads are zero before
    starting the test.
    
    Fix: Doing cleanup (stopping dump threads) before the actual test starts.

commit 95a007353c3db2fd37ef8b6b1c594dcd8f73929f
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Sat Aug 19 06:58:08 2017 +0200

    Revert "Merge branch 'mysql-5.6' into mysql-5.7"

commit c0e2acd786523a85518e63deb15e5014f3e82af4
Merge: 10f54b6 ecb28d2
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Sat Aug 19 06:57:45 2017 +0200

    Null-merge from 5.6

commit ecb28d2b9f359930f2640512ce45bb1a5b81a5ed
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Sat Aug 19 06:56:26 2017 +0200

    Revert "Bug#25510805 - MYSQL CRASHES WHEN TRYING TO CONNECT FROM"

commit 10f54b6034e92a3098050a7797751e01a6bd91f1
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Fri Aug 18 17:30:42 2017 +0530

    Bug #26432173: INCORRECT SUBQUERY OPTIMIZATION WITH
                   LEFT JOIN(SUBQUERY) AND ORDER BY
    
    
    Issue:
    ------
    This bug can occur when:
    - there is more than one inner tables in the join nest.
    - an Item_direct_view_ref object references a column
      from a const (system) table.
    
    This has caused the following regressions :
    Bug# 26596977, Bug# 26616066 and Bug# 26618455
    
    Fix for 8.0:
    -----------
    When the object is of type FIELD_ITEM (i.e. belongs to a
    table), Item_direct_view_ref::used_tables should return the
    related table's map. In other cases it returns the first
    inner table's map.
    
    Fix for 5.7:
    ------------
    The function Item_direct_view_ref::used_tables has been
    removed and the fix will limited to handle the problem in
    temporary tables.
    
    While creating fields for the temporary table, consider
    field as constant only if:
    1) The item is constant and
       1a) Isn't part of a derived table (or view). OR
       1b) The item belongs to a derived table (or view) and it
           doesn't belong to an inner table of an outer join.

commit 0af72244583258fc4074142f6983a0abab07b6e9
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Fri Aug 18 12:06:36 2017 +0100

    BUG#26241291 EXCESSIVE MEMORY USAGE BY XCOM WITH LARGE INSERT WORKLOADS
    
    Problem
    -------
    In MySQL 5.7.x, XCOM controls the cache's size by defining a maximum number of
    entries and only replaces old entries to accommodate new ones. It never purges
    unnecessary and old entries if there is no need to make room for new ones. This
    behavior along with the fact that the size of each entry is never taking into
    account lead to excessive memory consumption.
    
    This behavior can also make nodes slow thus leading them to be expelled and
    eventually causing a majority loss which blocks the whole system.
    
    Fix
    ---
    The fix consists of limiting the memory used by the nodes and automatically
    purging old and unused entries. Before doing so, the nodes must agree on the
    messages that they must keep in the cache to avoid purging messages that are
    not received yet by all nodes. Periodically, nodes send the sequence of the
    last message they got an agreement on and define which messages can be
    discarded.
    
    This additional information exchanged by them implies a change to the XCOM
    protocol version. Because of this, a bug in the protocol version negotiation
    had to be fixed as well.
    
    The fixes were already pushed to trunk and were backported 5.7:
    
    BUG#22671683: LIMIT MEMORY UTILIZATION IN XCOM
    
    BUG#25568493: GROUP MEMBERS BECOMES UNREACHABLE WHEN SERVER WITH LOWER
                  VERSION TRIES TO JOIN

commit 20e8e3d8936dd5710af8e7971e572cc652188211
Merge: e56af38 73e24f7
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Fri Aug 18 16:14:37 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 73e24f75ab587314313f167b7a0415c7d5e9a65c
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Fri Aug 18 16:12:36 2017 +0530

    Bug#25510805 - MYSQL CRASHES WHEN TRYING TO CONNECT FROM
                   A HOST WITH AHOSTNAME OF 69 CHARACTERS
    
    DESCRIPTION:
    ===========
    When a connection is made from a host with a hostname
    length of more than HOSTNAME_LENGTH characters,
    MySQL crashes with a buffer overflow.
    
    ANALYSIS:
    ========
    If the hostname of the connecting host is greater than
    HOSTNAME_LENGTH (60 chars), copying the hostname to the
    performance schema table field which is limited to
    HOSTNAME_LENGTH characters results in a crash.
    
    FIX:
    ===
    The fix is to truncate the hostname to HOSTNAME_LENGTH
    number of characters before adding them to the performance
    schema tables which record host information and details.
    This makes sure that the client connection is established
    successfully.

commit e56af38d6fccfaa68f2077b5458a9ade29069400
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Fri Aug 18 11:44:17 2017 +0530

    Bug#24337625: SYSSCHEMA.FN_FORMAT_PATH IS FAILING ON THE PB2
                  UNDO TABLESPACES RUN
    
    This patch reverts commit b2a66dbc7856aac533364da6b3e598d83df0f936

commit 723b88834499f1da9ca82a85f549f34db1eebe9e
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Wed Aug 16 17:37:07 2017 +0200

    Bug #25892493 GR XCOM SERVICE SEGFAULTS WHEN MORE THAN 1024 FILE DESCRIPTORS ARE IN USE
    
    Switched from select to poll in task.c and inlined functions in
    xdr_utils. The polling code now dynamically allocates as space for new
    file descriptors, so the number is now in principle only limited by
    the available memory. Added deinit functions. Fixed bugs in unpoll and
    wake_all_io that caused task waiting for IO to not terminate because
    the reference count never went to 0.
    Added interface to WSAPoll on Windows.

commit 67a6c44ab3979c0dedec84199daf79d89d4f4436
Merge: 3a471f9 5775624
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Aug 16 09:39:59 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 5775624c527ebdbbd01f68ba4e721d77bf160b07
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Aug 15 12:22:46 2017 +0200

    Cleanup debian/changelog to just have a generic link to online release notes.

commit 3a471f934fc06eb6da1ba5906223697f68e23342
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed Aug 16 06:07:49 2017 +0200

    Revert "WL#10820: Make keyring_okv support password encrypted private keys"
    
    Revert on 5.7 since it broke the build.

commit 054944045faeb5b8873a4c2ec0d50ce5913ab6ca
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Tue Aug 15 09:27:22 2017 +0800

    Fixed bug#26595476 INCORRECT ERROR HANDLING IN ROW_IMPORT_FOR_MYSQL
    
    Followup patch for fixing test case failure of table_encrypt_4.
    We need make it for debug server only.

commit 2496f3376a4f757c17d88fc8e5834100c69fce70
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Mon Aug 14 17:48:07 2017 +0300

    WL#10820: Make keyring_okv support password encrypted private keys
    
    The keys used to connect to a KMIP server can be extra protected with a password.
    Add an extra file next to the key file holding the key password.

commit 1f9bf3e5be7d67dc5d60a3fbd630a8d4ed52f33c
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Mon Aug 14 19:17:33 2017 +0800

    Fixed bug#26595476 INCORRECT ERROR HANDLING IN ROW_IMPORT_FOR_MYSQL
    
    We need to remove all the invalid code in these error handling code.
    
    Approved by Sunny Bains <sunny.bains@oracle.com>
    RB: 17022

commit 6f36b230d76cd82a22d8a4673533d1f22e766d17
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Wed Aug 9 10:18:55 2017 +0400

    WL#10837: Deprecate query cache
    
    This patch is for 5.7.

commit b2a66dbc7856aac533364da6b3e598d83df0f936
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Mon Aug 14 12:10:43 2017 +0530

    Bug#24337625: SYSSCHEMA.FN_FORMAT_PATH IS FAILING ON THE PB2
                  UNDO TABLESPACES RUN
    
    Description: Mtr test, syschema.fn_format, is failing on PB2
    platforms for "innodb_undo-2-debug" configuration where
    "innodb_undo_tablespaces" is set to 2.
    
    Analysis: For "innodb_undo-2-debug" configuration, the data
    directory is pre installed with "innodb_undo_tablespaces=2".
    This will create the innodb undo tablespaces inside the
    default "innodb_undo_directory" path. But the mtr test,
    "fn_format_path" uses its own innodb undo directory. So when
    this test is run, it is failing to start the server throwing
    the error, "[ERROR] InnoDB: Unable to open undo tablespace
    'xxx'.". This happens because the innodb tablespaces are
    created inside default "innodb_undo_directory" path and mtr
    is checking for the tablespace inside the
    "innodb_undo_directory" path specified by the test.
    
    Fix: While starting the test, a custom data directory is
    installed with appropriate "innodb_undo_tablespaces" and
    "innodb_undo_directory".

commit 25de02c40b5dee6d268452eb89415be20e6f6a73
Merge: 8250978 cfaf4fe
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri Aug 11 16:52:29 2017 +0530

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

commit cfaf4fe9cd52839a6169e328cae9ecdaa17d7a37
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri Aug 11 15:12:44 2017 +0530

    Bug#25782811 	5.6: WRONG RESULTS WITH MATERIALIZATION,
                            VIEWS
    
    Backport of Bug#21566735 fix.
    
    Analysis
    =======
    create_ref_for_key() fails due to table not available for
    key_use when subquery optimization chooses materialization
    strategy and have a ref access key to one of the materialized
    table. This is due to JOIN::update_equalities_for_sjm() checks
    for real_item() of the materialized table expression with key_use->val
    of the primary table expresssion.
    
    Fix
    ====
    When comparing key_use from materialized tables use key_use->
    val->real_item() instead of key_use->val.

commit 8250978f42c54e76a05d6830cbaad0369ac80521
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri Aug 11 14:21:09 2017 +0530

    Bug#26129019  POSSIBLE UNINTENDED USAGE OF "KEYINFO" VARIABLE
    
    Typo error. Replaced with proper variable.

commit 80c28c94f155d5dcd9b70da2059355221e4391ba
Merge: 1526859 3ec554b
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu Aug 10 11:53:00 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 3ec554b12ec9431227c04e0609e84ddc8a83d944
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu Aug 10 11:40:46 2017 +0530

    BUG18985760 - "FAST" ALTER TABLE CHANGE ON ENUM COLUMN
                   TRIGGERS FULL TABLE REBUILD.
    
    Fixing PB2 test failure which resurfaced due to missing
    clean up.

commit 152685953e3f709a35cb7db98b4786b6c0590e83
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Aug 10 10:09:05 2017 +0530

    Bug #23169112: GCOLS: INCORRECT BEHAVIOR WITH QUERY USING
                   BATCHED KEY ACCESS
    
    Issues:
    -------
    This problem occurs when:
    1) Query is using Batched Key Access (BKA) optimization.
    2) A virtual Generated Column (GC) is part of the join
       buffer.
    
    While creating the read_set for a table containing a
    virtual GC, the corresponding base columns are also added.
    With BKA, only the index values (which are already stored
    in the storage engine) are read.
    
    While copying the values from storage engine to the join
    buffer, it is mistakenly assumed that both the base column
    and the virtual GC are present in the record buffer. This
    is not the case and this can lead to incorrect calculation
    of the values.
    
    Solution:
    ---------
    Olav fixed a similar problem in Bug#21872184 for Block
    Nested Loop optimization.
    
    The fix is to unset from the table's read_set the base
    columns, if they aren't independently required in the
    query. Once the JOIN_CACHE's blob_ptr and field_descr
    (these fields determine a column's presence in the join
    buffer) are created, the read_set can be restored.

commit 9efb2aae67de5a8d9a6132db257dc1ec44f38d50
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Aug 10 06:54:37 2017 +0530

    Bug #26432173: INCORRECT SUBQUERY OPTIMIZATION WITH
                   LEFT JOIN(SUBQUERY) AND ORDER BY
    
    Post-push fix to address failures in
    funcs_1.innodb_views and funcs_1.memory_views
    
    The call to const_for_execution (in trunk) and
    const_item (in 5.7) has been replaced by their respective
    content to avoid multiple and recursive calls to
    used_tables. This can create a problem when Views are
    created using other views

commit ee4fc83e8292de9d40a41cd54d43169d3d15f911
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue Aug 8 19:45:25 2017 +0530

    Bug#26519582: GR_SINGLE_PRIMARY_ASYNC_AFTER_GR_SECONDARY FAILING ON HUDSON
    
    Issue:
    ======
    The testcase failing because of concurrent DDL statement execution. The change
    master which is executed on server2 is blocked by create table (initially
    executed on server1) when applied on server2 as it had higher priority.
    
    Solution:
    =========
    Move create table on server1 below change master statement on server2, so they
    are not executed concurrently.

commit 8b2cbd0925e398706aa6c8370141a0314eb116a1
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue Aug 8 19:11:41 2017 +0530

    wl#10959: Backport WL#10433 to MySQL 5.7.20
    
    PROBLEM STATEMENT
    =================
    Currently the user doesn't have any option to control the outcome of the
    primary election algorithm in single-primary mode. The primary member is
    selected based on lowest server uuid.
    
    PROPOSED SOLUTIONS
    ==================
    This worklog will enable the user to influence the primary member election in
    single-primary mode by providing a member weight value for each member node.
    This member weight value will be used for electing primary member instead of
    member uuid which was getting used so far.
    
    This allows users to:
    - Select a specific primary for the next election (e.g. planned maintenance
      on current primary).
    - Ensure that primaries are always in the local/primary Data Center.
    - Ensure that primaries are always on a "bigger machine profile".
    
    Note:
      This is backport of wl#10433 from mysql-8.0.

commit 76bf4c803835f22e5ef0e037ebb1098b68d5ce5c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Aug 8 13:25:54 2017 +0200

    Bug#26495816 CONTRIBUTION: INCLUDE MY_DIR.H
    
    In 5.7 when building with -DWITHOUT_SERVER=1
    
    my_symlink.c: In function my_is_same_file:
    my_symlink.c:200:3: error: unknown type name MY_STAT
    
    Regression introduced by:
    
    BUG#25451091:CREATE TABLE DATA DIRECTORY / INDEX DIRECTORY
    
    Fix: #include "my_dir.h"

commit f6431cd2cde85d347427ccb1983bed8215bac8f0
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Tue Aug 8 14:03:11 2017 +0530

    Bug #26432173: INCORRECT SUBQUERY OPTIMIZATION WITH
                   LEFT JOIN(SUBQUERY) AND ORDER BY
    
    Issue:
    ------
    Example query:
    SELECT t1.a, subq.st_value
    FROM t1
    LEFT JOIN (SELECT t2.t1_a, 'red' AS st_value
               FROM t2) AS subq
      ON subq.t1_a = t1.a
    ORDER BY t1.a;
    
    Assume that table t2 is empty and hence the derived table
    returns zero rows.
    
    This query incorrectly returns the contents of t1.a and 'red'.
    The expected result would be the contents of t1.a and a NULL.
    
    Root cause:
    -----------
    The presence of ORDER BY results makes the optimizer use a
    temporary table. The contents of this temporary table will
    be columns t1.a and subq.st_value. Here st_value is a
    "constant", in the sense that the value is not changing
    with the underlying table . But given that the type of join
    is an OUTER JOIN, it will still be influenced by the
    contents of table t2 (inner table of an outer join).
    
    Since st_value is marked as constant in the temporary
    table, this value is always added to the result rows.
    
    Solution:
    ----------
    A new Item_direct_view_ref::used_tables() function is
    created to take into account whether an Item in a
    derived table / view is part of an inner table of an outer
    join.

commit fac91acd8d237422ddf9214f6e4e08acea0725bf
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Mon Aug 7 11:25:56 2017 +0200

    Bug#26368004: CONFUSING GR ERROR MESSAGE: CHECK CREDENTIALS
    
    Description:
    If hostname resolution does not work for a member in Group Replication, the
    error returned when attempting to connect is:
    
    2017-06-29T00:56:02.103512Z 23 [ERROR] Plugin group_replication reported:
    'There was an error when connecting to the donor server. Check group
    replication recovery's connection credentials.'
    
    But the issue has nothing to do with credentials, but the fact that Group
    Replication only works when the hostname/IP address is resolvable.
    
    Resolution:
    Error message has been improved.

commit 270f0e1dc53c7a76cf2d394bc039a3f6ed2181d5
Merge: 1716727 d311975
Author: Aditya A <aditya.a@oracle.com>
Date:   Fri Aug 4 18:21:52 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit d311975bac07372b3437bf5ded62b431ea032a67
Author: Aditya A <aditya.a@oracle.com>
Date:   Fri Aug 4 18:18:47 2017 +0530

    Bug#25687813	REPLICATION REGRESSION WITH RBR AND PARTITIONED TABLES
    
    PROBLEM
    -------
    
    While applying update the slave is trying to initialize all partitions
    before reading from rnd_pos() call. This is done for each row update
    because of which the performance is getting effected.
    
    FIX
    ---
    
    Initialize only the partition on which rnd_pos() is called.

commit 171672707276227989a1447c5004b6adf190bdc4
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Fri Aug 4 10:35:08 2017 +0200

    BUG#26571683: test gr_applier_early_failure is failing
    
    The test was failing, not being able to DROP table used on test.
    
    The cause was START GROUP_REPLICATION can return success and failure, so we
    skip the reset of super read only when execute STOP GROUP_REPLICATION to
    prevent the case that START fail.
    
    We disable the super read only after STOP to prevent failure of dropping table
    when START succeeds.

commit 08bd7b02829c3a50630d198751eef9f1f427a133
Merge: 8adf76a 0e3e08a
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 3 12:31:03 2017 +0100

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit 0e3e08a43f5008f043181e82fbf1d2a59556bf28
Merge: 6b12be7 a8b3554
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 3 12:30:43 2017 +0100

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

commit a8b3554a38b93ec454489fc9a1e7e1f4ed90e9cf
Merge: f1cad85 5a56c09
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 3 12:30:24 2017 +0100

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

commit 5a56c091839dd49829f720496388ade2fc872632
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Aug 3 12:27:16 2017 +0100

    Bug #26568782 	NDB : TC GCP COMPLETION LOG TOO VERBOSE
    
    Fix problem introduced in fix to Bug#26364729 which adds TC logging which
    can occur in normal operation.
    
    Logging changed to occur only as part of node failure handling.

commit 82244b5c6ece708577a8a11c874fb62f1ba2cc27
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Wed Aug 2 18:12:02 2017 +0530

    Bug #25851975   ASSERTION FAIL DURING FULLTEXT SEARCH QUERY WITH LIMIT
    CLAUSE
    
    PROBLEM
    
    While using ngram fts search with LIMIT clause wrong results were
    returned and also at limit 5 there was crash observed.Basically , a
    counter value n_docs which is part of fts_query_t structure is not
    refreshed after filtering doc_ids, which makes this counter keeps
    increasing and when the limit is put to 1 or higher values the number of
    matched rows returned is wrongly calculated.
    
    FIX
    
    Resetting the counter value at the func exit solves this issue.
    
    Reviewed by:Jimmy Yang <Jimmy.Yang@oracle.com>
    RB: 16954

commit 45b111c42c1801260e9544424aec1c8cd1d7437b
Merge: 3fd8007 d53dc1c
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Aug 2 17:15:26 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit d53dc1c608331c292f6a868328a06197afadf185
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Aug 2 17:14:34 2017 +0530

    Bug #25669686   INNODB CRASH WITH GENERIC DML WORKLOAD
    		AND LONG READ VIEW OPEN
    
    - Post push fix to avoid pb2 failure.

commit 8adf76a8e32cefb4d281787180307e66e554396c
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Aug 1 20:07:21 2017 +0300

    wl#7614 bug26027765.diff
    
    use LOAD DATA charset binary or latin1
    make automated perl test of utf8/mb[34] later

commit 283a68e56d47f6a7c05a9f126e6ce734d2203cf2
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Aug 1 11:34:07 2017 +0300

    wl#7614 charset01.diff
    
    remove non-sensical table-charset
    make place for file --charset option

commit 3fd800796925addb8faddc66837d9b80d77ac4b0
Merge: 352d82c bff5a32
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Jul 28 15:43:52 2017 +0530

    Bug #25669686	INNODB CRASH WITH GENERIC DML WORKLOAD
    		AND LONG READ VIEW OPEN
    
    - Merge branch 'mysql-5.6' into mysql-5.7

commit bff5a329abc427ab5341342a12fd01dc7e285be3
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Jul 28 15:41:13 2017 +0530

    Bug #25669686	INNODB CRASH WITH GENERIC DML WORKLOAD AND LONG READ VIEW OPEN
    
    Problem:
    ========
     During end range comparison, record belongs to secondary index but the prebuilt
    template maps to clustered index. For mapping, InnoDB stores all the clustered
    index field number of secondary index fields. Mysql template points to whole
    field instead of prefix index field. In that case, field number didn't match
    with template field number and it didn't store the respective data in template.
    It fails while comparing the record with end range value.
    
    Solution:
    =========
    Store the column object instead of storing the field number for mapping the
    secondary index record to clustered index mysql template.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16813

commit 4f5674f8d10850e31f12c801425543f11ba9bb4d
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Jul 26 15:24:24 2017 +0300

    wl#7614 resume2.diff
    
    fix --resume when rowmap does not start at 0

commit 5b2528548205ade7e6da2bfefbb011576c29e357
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Fri Jul 21 14:11:39 2017 +0300

    wl#7614 mtr4.diff
    
    add rejects to consumer side

commit 352d82c190dc60944847e0b0e1ba036125148296
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Thu Jul 27 12:56:15 2017 +0200

    Bug#26180350 : COUNT_TRANSACTIONS_REMOTE_IN_APPLIER_QUEUE SET TO GARBAGE ON RECOVERING SERVER
    
    Description:
    COUNT_TRANSACTIONS_REMOTE_IN_APPLIER_QUEUE in server version MySQL 8.0
    fetches data from m_transactions_waiting_apply variable.
    COUNT_TRANSACTIONS_REMOTE_IN_APPLIER_QUEUE is set to some garbage value when
    group_replication_recovery_complete_at= "transactions_certified" on a
    recovering member.
    It is due to the option group_replication_recovery_complete_at=
    "transactions_certified", which makes the member going into ONLINE status
    just after certifying the queue transactions, which will make pipeline_stats
    not to take into account the queue of this events into applier since at that
    moment the member was RECOVERING, but the apply of this events will be
    counted, since member will go immediately ONLINE(not waiting) due to system
    variable. This will cause the waiting_queue counter go to negative, which will
    later overflow on the unsigned performance schema values.
    
    Resolution:
    Since initial transaction received during recovery state will make counter go
    negative, check has been added to have number greater then equal 0.

commit 8da019f9a6ae94bab29b894a071e0019a84d04e0
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 26 17:23:29 2017 +0200

    BUG#26524096: Turns out that we need to check block reference to see if the message is going to a proxy or not, using ndbmtd is no guarantee for using a proxy block for DBTC.

commit 9c50e572064dd4165426250d8ea51c715d03cd87
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 26 13:15:00 2017 +0200

    BUG#26524096: Missed fixing also for ndbd

commit 1ec26b033a13ca8c10327ae151ff0d4dcc10ab13
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Wed Jul 26 10:36:43 2017 +0200

    BUG#25673788: MYSQLADMIN SHUTDOWN HANGS WHEN GR PLUGIN IS BUSY
    
    When we try to shutdown server through mysqladmin when GR plugin is in
    deleted state, shutdown hangs.
    
    When the plugin is in use and the server tries to uninstall it, it will mark
    the plugin as deleted and delay the uninstall to when execute shutdown.
    When executing the shutdown the server don't execute anything on plugins
    deleted.
    
    To solve this we don't allow remove the plugin when this is in use, it need to
    be executed first the command STOP GROUP_REPLICATION.

commit 7499b652c60d4f620bfa8a4e117c8a7a9b6e442a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 26 11:20:28 2017 +0200

    BUG#26524441: Fix of previous patch

commit 9d169bca54d56d4e6378ee4b001820f3b317aaef
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Tue Jul 25 17:20:05 2017 +0200

    WL#10960: Backport WL#10611 to MySQL 5.7.20
    
    This worklog is created for the backport of the WL#10611 "Group Replication:
    Disallow writes after leave group" to MySQL 5.7.20
    
    This worklog improves the safeness on operations around Group
    Replication.
    
    Currently when STOP GROUP_REPLICATION is executed the group replication stops
    but clients are still able to do writes while the server is disconnected from
    the group, thence not replicating the writes to the group.
    
    This worklog enable super read only when STOP GROUP_REPLICATION is executed
    preventing clients to execute writes after it.

commit ba6ea2e3bc2b200c841a3533bb3cc04612a467d6
Merge: 9e6b924 113050e
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Tue Jul 25 19:02:22 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 113050e42f53ef830789fbd1eb92f2a7c3e80abd
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Tue Jul 25 19:01:18 2017 +0530

    BUG#22350047: IF CLIENT KILLED AFTER ROLLBACK TO SAVEPOINT
                  PREVIOUS STMTS COMMITTED
    
    ANALYSIS:
    =========
    Consider an uncommitted transaction in which we have
    created a savepoint and executed
    'ROLLBACK TO SAVEPOINT <savepoint_name>' and killed the
    client. When another client is started, the changes that
    were made before the savepoint creation are still
    reflected implying that the transaction was committed.
    
    In this scenario, when the client is killed, THD::cleanup()
    is called. During the cleanup, since the binary log is
    enabled, MYSQL_BIN_LOG::rollback() is called. The logic
    inside this function is, If thd->lex->sql_command ==
    SQLCOM_ROLLBACK TO SAVEPOINT, we should not perform a
    engine rollback, instead only the caches need to cleared.
    Here since the last executed command before the client was
    killed was 'ROLLBACK TO SAVEPOINT', thd->lex->sql_command
    will contain SQLCOM_ROLLBACK_TO_SAVEPOINT and hence engine
    rollback is not done and later the transaction is
    committed. Thus the changes done before the savepoint
    creation is reflected.
    
    This issue was caused because resetting of
    thd->lex->sql_command was not done after the execution
    of each statement.
    
    FIX:
    ====
    We are now setting thd->lex->sql_command to SQLCOM_END
    after execution of each statement.

commit 272be66d152afe9b72c2b4549eeeac4349814129
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jul 25 14:48:34 2017 +0200

    BUG#26524096: Fix glitch in LCP protocol

commit f6ac429e4fc16287c54167cec348de0709fdbbd8
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jul 25 14:34:16 2017 +0200

    BUG#26524441: Fix ndb_top build issue, some platforms require tinfo to be included

commit 9e6b924107419d7de9d9e36f88a48aef659a80f2
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Tue Jul 25 13:10:52 2017 +0530

    Bug#26272158:FLUSH LOGS SENDS OK EVEN AFTER FAILING IN THE COMMIT PHASE
    
    Post-push fix:
    This test should not be run with valgrind as memory leak could be
    seen when the server crashes as part of the test.

commit 0cdaa47b0eab261c54368cd78fa0d75808f67398
Merge: 9ad5be9 8fc2981
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Tue Jul 25 12:17:32 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 8fc2981f550c1e8ae38215fb19ba8bc1fd17a1b8
Merge: 780cd07 bb79cdb
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Tue Jul 25 12:16:59 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit bb79cdb145e31c1999c91b9b8cd948901def067e
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Tue Jul 25 11:49:51 2017 +0530

    Bug#26161247: MTR: --NOREORDER IS SEARCHING FOR TEST SCRIPT ONLY IN MAIN SUITE
    
    Issue:
    ------
    Running MTR with the --no-reorder option by specifying test cases on the
    command line, without prefixing the suite name results in an error saying the
    test case was not found in the main suite. This is because MTR looks for the
    test case only in the main suite, and no other suites.
    
    Fix:
    ----
    The fix involves searching for the test in every suite if only the test name
    is specified. This back-ports two bug fixes: Bug#24967869 and Bug#24365783
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    RB: 16812

commit 9ad5be961be5a018a8c973f0ce4864ae38eed7b5
Merge: c4bb0be 780cd07
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Jul 21 16:20:12 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 780cd071be076fef25767262caae69d13504bcc1
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Jun 2 10:59:19 2017 +0200

    Bug #26186911	DEBIAN/UBUNTU "SOURCE" CONTAINS AMD64 BINARIES
    
    Make the debug build part of the standard deb package build.
    Triggered by adding -DDEB_WITH_DEBUG

commit c4bb0bec654ede0edd0eb76e79b5aebecf9440d4
Author: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
Date:   Thu Mar 23 16:22:54 2017 +0100

    Bug #25769683: STRANGE ISSUE WITH ADMIN COMMAND "LIST_OBJECTS"
    
    Description:
    An issue is related to xplugin admin command "list_objects". The
    command is used to check if given collection exists in a database or
    not. The issue is that it happens only on OSX, only if schema name
    contains an uppercase letter.
    
    Solution:
    The 'list_objects' admin command SQL query has been improved to such
    form to take into account a size of letters in names of tables and
    schemas in a process of collecting them.
    
    Reviewed-by: Lukasz Kotula <lukasz.kotula@oracle.com>
    RB: 15945

commit bb14659c27c7541b5e9291279b2cda3b7e84e412
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Mon Jul 10 16:29:51 2017 +0530

    Bug#26034192 THD->HA_DATA[HT_ARG->SLOT].HA_PTR_BACKUP == __NULL ||
    (THD->IS_BINLOG_APPLIER()
    
    Problem: Changing server internal variable pseudo_slave_mode
    inside a transaction is hitting asserts.
    
    Analysis: pseudo_slave_mode is an internal server variable which
    is used to detect whether a thread is binlog applier execution
    thread or not. In documentation , we say that
    "This variable is for internal server use.
    SET pseudo_slave_mode= 0,1 are commands that mysqlbinlog adds to
    beginning and end of binary log/relay log dumps.
       . Binary logs cannot contain partial transactions
       . if relay log is having partial transaction at the end, then
          we append "Rollback" and then append SET pseudo_slave_mode= 0".
    i.e., there is no real use case inside the server for this variable to
    be allowed to change inside a transaction.
    
    Fix: Restricting the invalid use case of pseudo_slave_mode.
    Users cannot be able to change pseudo_slave_mode inside a transaction.

commit f913b980dfb135e3a4b95a21f38810fb0107ffec
Merge: 88ccdf8 6b12be7
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Jul 19 11:46:20 2017 +0200

    Upmerge of the 7.5.7 build

commit 6b12be784b25e96cf4487244917fa4947d55ea94
Merge: ea81065 9325d7b
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Jul 19 11:41:53 2017 +0200

    Merge from mysql-cluster-7.5.7-release

commit 88ccdf872c196ef8b76ec21d5ed915fbfce5848b
Merge: c7b40d3 ea81065
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Jul 19 10:30:13 2017 +0200

    Upmerge of the 7.4.16 build (null-merge)

commit ea8106587fa78e10ce2ed7d859aa07628cd87937
Merge: 5a1af0a f1cad85
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Jul 19 09:57:59 2017 +0200

    Upmerge of the 7.4.16 build

commit f1cad858351560d6267d4983544371374fcaf98d
Merge: 0f95421 fd7ede3
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Jul 19 09:18:31 2017 +0200

    Merge from mysql-cluster-7.4.16-release

commit c7b40d389cee8c08625558b9367d28a451ce2eaf
Merge: 8f549a7 778fcd1
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Jul 19 09:05:37 2017 +0200

    Upmerge of the 7.4.16 build

commit 778fcd1bbbc5b0f2a86b04d4f1291705923fc90f
Merge: e67ebfb 3786189
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Wed Jul 19 09:04:29 2017 +0200

    Upmerge of the 7.4.16 build

commit 8f549a7d5a9e0d3a9fc1747c25c657b28babae3a
Merge: 9fb8177 5a1af0a
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Wed Jul 19 05:51:38 2017 +0200

    Upmerge of the 7.3.18 build

commit 5a1af0a08f685e32a289c79ea0bd170ea26a2cc0
Merge: e67ebfb 0f95421
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Wed Jul 19 05:49:39 2017 +0200

    Upmerge of the 7.3.18 build

commit 0f95421fe01b60dfa3c007fad35829168668536f
Merge: 7366e8a e61899b
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Wed Jul 19 05:48:07 2017 +0200

    Upmerge of the 7.3.18 build

commit e61899bb841048f63ef0e428774b09de55e098f7
Merge: 525c8f1 3ddc299
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Wed Jul 19 05:44:05 2017 +0200

    Merge from mysql-cluster-7.3.18-release

commit 37861897953b996c4d90a9483fbd1595568d61f9
Merge: 7366e8a fd7ede3
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Tue Jul 18 21:38:11 2017 +0200

    Merge from mysql-cluster-7.4.16-release

commit d6099828baf210f974f82d97643969f4e0ce0560
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Tue Jul 18 21:07:17 2017 +0200

    Bug#26375914: SOME TESTS WITH MAJORITY LOSS FAIL SPORADICALLY IN PB2
    
    Some tests where failing as they do not suppress the messages that
    members output when they are unreachable.
    We chose to use a global suppression though, as more failures were
    also seen on Valgrind runs due to resource starvation caused
    partitions.
    We use this bug even so to do proper cleanup on one of these tests
    that was missing it.

commit 9fb8177e0fbaf61589ff255690a5fe10342e517e
Merge: 1aeff04 e67ebfb
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Tue Jul 18 21:07:30 2017 +0530

    Upmerge of the 7.2.30 build

commit e67ebfb3547175d735f6c0f9ad3bb353a1b990e7
Merge: ef1ea92 7366e8a
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Tue Jul 18 21:06:45 2017 +0530

    Upmerge of the 7.2.30 build

commit 7366e8ae70633c3c946f40e38db8c48e020955e3
Merge: 0f34e99 525c8f1
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Tue Jul 18 21:05:56 2017 +0530

    Upmerge of the 7.2.30 build

commit 525c8f10f9b553d31ebe742050c802d456b6dda7
Merge: e5d19c1 efe4510
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Tue Jul 18 21:04:42 2017 +0530

    Upmerge of the 7.2.30 build

commit efe45108a17ca14aad7f8feab5b8cdfe7092484e
Merge: 250c91f 6af5a6d
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Tue Jul 18 21:02:52 2017 +0530

    Merge from mysql-cluster-7.2.30-release

commit 226793226d3a805003a5c8f5592ce5a51923d8cb
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Tue Jul 18 19:59:53 2017 +0530

    WL9636: Rename tx_{read_only,isolation} variables to transaction_*
    
    Post push patch to fix test failure.

commit c2aac95585b6c3a75ab91cc655d91abe7fe7a389
Author: Libing Song <libing.song@oracle.com>
Date:   Wed Jun 28 12:56:15 2017 +0800

    BUG#25860138 RPL_DIFF.INC IN 5.7 DOES NOT COMPARE DATA FROM DIFFERENT SERVERS
    
    rpl_diff.inc failed to find the data difference between servers. That was
    because rpl_diff.inc just fetched data from first server instead of all
    servers.
    
    This patch added --defaults-group-suffix to tell mysql to fetch data
    from different servers.

commit c6088cc78a4a777970cfa2217dcf276d87fc0ef2
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue Jul 18 07:42:43 2017 +0530

    Bug#25432850 - MYSQLPUMP: PROGRESS INFORMATION INCORRECT
                   FOR TABLES
    
    DESCRIPTION
    ===========
    While mysqlpump is performing backup, it shows incorrect
    progress of the tables.
    
    For example for a database having 500 tables each having
    500 rows, mysqlpump progress looks as shown below:
    
    Dump progress: 0/1 tables, 250/500 rows
    Dump progress: 0/73 tables, 18250/36500 rows
    Dump progress: 0/151 tables, 37750/75500 rows
    Dump progress: 0/229 tables, 57250/114500 rows
    Dump progress: 0/307 tables, 76750/153500 rows
    Dump progress: 0/385 tables, 96250/192500 rows
    Dump progress: 0/463 tables, 115750/231500 rows
    Dump completed in 9241 milliseconds
    
    Please note that the progress information of the
    total-no-of-tables-backed-up at any given point of time
    remains zero throughout the process.
    
    ANALYSIS
    ========
    To report progress of both Tables and Rows,
    Abstract_progress_watcher::object_processing_ended()
    calls
    Abstract_progress_watcher::progress_changed()
    
    When doing it for Tables, the 1st function checks if the
    'processed_table_task' is completed. If not, it currently
    skips calling 2nd function and as a result the progress
    report for the Table isn't shown.
    
    On removing the check, we see the progress appearing for
    both Tables and Rows. Moreover the check is not required as
    the other conditions are sufficient in themselves to pass
    the criteria.
    
    FIX
    ===
    Drop the above condition to check if the
    'processed_table_task' is completed.

commit e4c2903b9ffd8fa48a60d81e4ccc3dbb5af4c489
Merge: 44384ba 69fed2d
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Mon Jul 17 21:10:23 2017 +0530

    Upmerge of the 5.6.37 build

commit 69fed2d95382fc4163f9a3cc37eac16504700353
Merge: d6203f9 702b46e
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Mon Jul 17 20:58:24 2017 +0530

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

commit 44384ba3043a72f946312bbd9bdbff162b1e6947
Author: Lukasz Kotula <lukasz.kotula@oracle.com>
Date:   Mon Jul 17 15:19:19 2017 +0200

    BUG#24823999 - DATADIR_PERMISSION TEST USES MYSQLXPLUGIN_DIR WITHOUT CHECKING IF IT'S AVAILABLE
    
    Description
    ===========
    
    X Plugin isn't loaded in default, thus referring to variable MYSQLXPLUGIN_DIR is not valid.
    
    Fix
    ===
    
    The files on  which the bug was created are leftovers and were removed.
    
    Reviewed-by: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
    Reviewed-by: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
    RB: 16758

commit 1aeff04b458298ce0178ef3683ba2128e036f3e7
Merge: 74a0cd5 ef1ea92
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Jul 17 15:23:54 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6 (Bug#25741111)

commit ef1ea920ddf64498ed9c891e802614421b306400
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Mar 17 17:22:00 2017 +0100

    Bug#25741111 BUILDING WITH WITHOUT_SERVER=ON FAILS: NO RULE TO MAKE TARGET 'NDBINFO_SQL_RUN'
    
    Do not add ndbinfo_sql_run as dependency to mysql_system_tables.sql when
    using WITHOUT_SERVER=ON.
    
    Also changing message to the intended FATAL_ERROR that will make cmake
    fail if any problem, rather than let make fail later.

commit 2f2ea04bfeb8007769148d089ec2a34bb41cdce2
Author: Lukasz Kotula <lukasz.kotula@oracle.com>
Date:   Mon Jul 17 13:44:32 2017 +0200

    BUG#26044113 MYSQLX.CONNECTION.CAPABILITIESGET NOT RETURNS ALL AUTHENTICATION.MECHANISMS
    
    Description
    ===========
    
    Sending 'Mysqlx.Connection.CapabilitiesGet' message doesn't trigger expected effect
    when it is executed through UNIX socket. The response message contained only "MYSQL41"
    authentication method. It must contain both  "MYSQL41" and "PLAIN".
    
    Analysis
    ========
    
    UNIX socket connection was not considered as "secure". "PLAIN" authentication
    can be only used on secure connections.
    
    RB: 16730
    Reviewed-by: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
    Reviewed-by: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>

commit 1602b9b7a56d20569253fb4519211865e24aa63a
Merge: 924410f d6203f9
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Mon Jul 17 17:38:06 2017 +0530

    Null-merge from 5.6

commit d6203f954e4ef179a7ce79174bfe70113389f8dd
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Mon Jul 17 16:33:23 2017 +0530

    Bug#26412663 MEMCACHED.MEMC_297_CRASH: REMOVE DEPENDANCY ON PERL MODULES
                 DBI AND DBD::MYSQL
    
    Follow up patch to fix failures of mysqlhotcopy tests on pushbuild by
    restoring checkDBI_DBD-mysql.pl.

commit 74a0cd5f8e66321a980e81d13e8958bb6cc62fbb
Merge: 3074135 8464163
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Jul 17 13:28:47 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6 (Bug#26449699)

commit 8464163be761274fd7f321696fb22854e3038d80
Merge: 59822f6 0f34e99
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Jul 17 13:28:02 2017 +0200

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

commit 0f34e99be9558d6c52ea46e755ac86e90400d956
Merge: 8cff24f e5d19c1
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Jul 17 13:27:38 2017 +0200

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4 (Bug#26449699)

commit e5d19c1f0a8a9db85f0a0519079ac8445223b46b
Merge: 1b29ba0 250c91f
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Jul 17 13:27:10 2017 +0200

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3 (Bug#26449699)

commit 924410f8956e64a37ebd9bdc64048f9793e4294a
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Mon Jul 17 13:19:25 2017 +0200

    BUG#26093967: AVOID SETTING GROUP_REPLICATION_FORCE_MEMBERS IN A PARTITION THAT HOLDS MAJORITY
    
    group_replication_force_members option was introduced has a
    break-the-glass measure to unblock groups that did lost
    communication with a majority of members. This safety measure allows
    a DBA or control tool to quickly resume operations on a unblocked
    group by forcing a subset of the previous group membership.
    
    Unfortunately, this option was allowed to be used on situations on
    which the group was working properly, that is, a majority was
    reachable. This was never the purpose of this option, and such
    action could cause instability on the group.
    Therefore, we are restricting its use to the scenario to which it
    was created: for a subset of previous membership when a majority of
    the members are unreachable.
    
    This is an optimist solution, as the majority of members can change
    right after the is_majority_unreachable returns.

commit 250c91fca5cf917f00f43503c12818b5e49c65e6
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jul 14 14:52:01 2017 +0200

    Bug#26449699 ATRT FAILS FOR MYSQL 8 BASED CLUSTER WITH FAILED TO LOCATE 'MYSQL_INSTALL_DB'
    
    Allow atrt setup to not find mysql_install_db.
    
    Use mysqld --initialize-insecure if no mysql_install_db found.
    
    This fix allows autotest to start running MySQL 8 based versions.

commit 6ca9b52c78b34f3eed758ff821b99235f2af153c
Merge: 4c4cf24 b7ea062
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Jul 17 16:53:18 2017 +0530

    Upmerge of the 5.5.57 build

commit b7ea062b65f3239e7d2d081a7334339d9d393ca1
Merge: c1028cc 8dbc7ce
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Jul 17 16:52:11 2017 +0530

    Upmerge of the 5.5.57 build

commit 8dbc7cedf12ccac5e9dd78016d0968a2a7e2c9fa
Merge: 1af074c 1042f0a
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Jul 17 16:47:22 2017 +0530

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

commit 3074135e1e9353819239b51b7587ed789155a5fa
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jul 17 12:03:05 2017 +0200

    Fixed wrong name of binary name in autotest file

commit 4c4cf247291bab1d9b4df42826717de518e3807a
Merge: 167c91e 432d360
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Sun Jul 16 12:43:02 2017 +0200

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

commit 167c91e9c6f84dcf6cb645710adf41784144b2f2
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu Jul 13 15:39:59 2017 +0200

    BUG#26394678: WITH HIGH THREAD_STACK GR HITS MUTEX LOCK AT DELAYED_PLUGIN_INITIALIZATION.CC:48
    
    When the Group Replication plugin Delayed_initialization_thread
    failed to start due to unavailable resources, a locked mutex was
    being kept behind which would cause issues on
    Delayed_initialization_thread destructor.
    
    To solve the above issue the mutex it is unlocked when the thread
    fails to start.

commit d04e466ca05103c4c8eef202a634135bc1d79c2a
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Thu Jul 6 12:40:46 2017 +0200

    Bug#26399306: JSON.JSON_FUNCTIONS_INNODB TEST IS FAILING ON PB2 5.7
                  ON MACOS10.12-X86-64BIT
    
    A test that works on deeply nested JSON documents runs out of stack
    space on debug builds on macOS 10.12.
    
    The root cause is bug#23106330, which is fixed in 8.0.
    
    This patch makes the test run with a bigger stack on 5.7, so that it
    passes also on the more stack-hungry platforms.

commit 8005b46954f78b1905cb2a30780e668bd7f0d87a
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Thu Jul 13 14:08:20 2017 +0530

    Bug#26272158:FLUSH LOGS SENDS OK EVEN AFTER FAILING IN THE COMMIT PHASE.
    
    Problem:
    On debug build, a failing FLUSH LOGS attempts to send OK to connection after
    having sent error reply before. This is caused by missing error propagation
    between where the error happened (ha_commit_trans inside close_table()) and
    where the OK is sent (at the top level switch statement in
    mysql_execute_command).
    
    Fix:
    Make previously void methods return bool for success/failure, and check for
    errors along the way as necessary.

commit 73eaa6d54c0dc67dc1238b704a7196c61902abf9
Merge: f4c997c c1028cc
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Thu Jul 13 11:25:30 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit c1028cca87a17d61026979ea11d16806f337ab68
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Thu Jul 13 11:21:24 2017 +0530

    Bug #24938374   MYSQL CRASHED AFTER LONG WAIT ON DICT OPERATION LOCK
    WHILE SYNCING FTS INDEX
    
    PROBLEM
    
    As part of rb#12340, dict_operation_lock was acquired to avoid dropping
    of FTS index/ table while the sync is in progress in the background. Due
    to this change server gets killed on long wait for dict_operation_lock
    while a long sync is in progress.
    
    SOLUTION
    
    We remove the dict operation lock that is held by sync (fts) in
    background. We will manage the concurrency of drop index and sync index
    in 2 ways:
    1) If sync is already in progress, Drop index would wait for sync to
    complete.
    2) If alter is already happening and sync is invoked then sync would do
    a check for index/table to be dropped flags are set or not, if it is it
    would skip syncing that index.
    
    Reviewed by: Jimmy Yang <Jimmy.Yang@oracle.com>
    RB: 15344

commit 755c7da9cbc3e2f511af7230c61609e290e7dbb6
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Jul 12 13:16:45 2017 +0300

    wl#7614 win32-14.diff
    
    getpid -> NdbHost_GetProcessId (VS2015)

commit f4c997c8d0360de92a6ee0a180659b8a425ecb56
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Wed Jul 12 16:02:40 2017 +0530

    WL9636: Rename tx_{read_only,isolation} variables to transaction_*
    
    Post push fix to fix test failure.

commit e6c6e7f24ef62e9e29226f7700564301633ed57b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jul 12 11:42:27 2017 +0200

    WL#10302: Fix for when crash between phase 5 and phase 50

commit 914de9bbea084da6ee8a24ec4aec6d5351301940
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu Jul 6 18:43:53 2017 +0530

    WL#9636: Rename tx_{read_only,isolation} variables to transaction_*
    
    The system variables for default transaction isolation and
    read only transaction are 'tx_read_only' and 'tx_isolation'.
    This differs from the start up options which are:
    '--transaction_read_only' and '--transaction_isolation'
    This naming convention can be quite confusing for users.
    
    There are separate patches for 5.7 and trunk:
    
    In 5.7, the variables 'tx_read_only' and 'tx_isolation' are
    deprecated and usage of these variables would result in a
    deprecation warning. Two aliases for the deprecated variables
     have been introduced: 'transaction_read_only' and
    'transaction_isolation'.
    
    In trunk, the variables 'tx_read_only' and 'tx_isolation' are
    removed. 'transaction_read_only' and 'transaction_isolation'
    introduced in 5.7 serves as the alternative. This ensures that
    the system variables are in sync with the start up option names.

commit 042d84351701ad099563d1fa42081d526b9b28ca
Merge: bfe151f 9c1bc9d
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Tue Jul 11 11:08:28 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 9c1bc9d4f6cc1ce40300136fd79466b98b036884
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Tue Jul 11 10:48:24 2017 +0530

    Bug#26412663 MEMCACHED.MEMC_297_CRASH: REMOVE DEPENDANCY ON PERL MODULES
                 DBI AND DBD::MYSQL
    
    The test memcached.memc_297_crash is being skipped on many machines due to
    the unavailability of DBI and DBD::mysql perl modules. It has been altered
    to use the mysql client binary bundled with the build.
    
    Reviewed-by: Aditya A <aditya.a@oracle.com>

commit bfe151fe740d5a306b35a62859115f2672169bff
Merge: 035ad51 e17756e
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Tue Jul 11 10:39:12 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit e17756e1ab8bc70df70ba33cfaaffa43acfcf9bd
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Tue Jul 11 10:36:28 2017 +0530

    Bug#26405350: MAIN.MYSQLHOTCOPY_ARCHIVE AND
                  MAIN.MYSQLHOTCOPY_MYISAM TESTS
                  FAILING IN PB2-5.6
    
    Description: Mtr tests, main.mysqlhotcopy_archive and
    main.mysqlhotcopy_myisam are failing recently in PB2-5.6.
    
    Analysis: The test failure is due to the mismatch in the
    exit code returned by the mysqlhotcopy utility when the
    utility encounters an error.  This mismatch is happening due
    to the unpredictable exit code returned by the "die" command
    used in the "mysqlhotcopy" perl script.
    
    In the perl documentation for "die" command it is mentioned
    that "the value of the exit code used by die can be
    non-predictable, so should not be relied upon, other than
    to be non-zero."
    
    Fix: Error number 255 is also added along with 9, 11, 110
    and 2304.

commit 035ad513cacf8db782154108e3c3e99da4dce3fc
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Mon Jul 10 11:30:53 2017 +0530

    Bug #20748521  ASSERTION `I == UINT2KORR(PART_REC_BUF_PTR)' FAILED. |
    HANDLE_ORDERED_INDEX_SCAN
    
    PROBLEM
    
    When no records are added to a partitioned table(Range partitioning) the
    m_rec_ordered_buffer is not initialized because there are no used
    partitions . In case of DESC index this check of used partitions is not
    done and because of which it tries to perform index scan and causes
    assert in handle_ordered_index_scan.
    
    FIX
    
    Just as is the case with ASC index , the fix tries doing a check for
    used partitions using m_part_info and returns error END OF FILE and
    gracefully exits the scan.
    
    Reviewed by : Debarun Banerjee <debarun.banerjee@oracle.com>
    RB: 16694

commit 24230466746b1b64982e96d4b5272024b97ac3b7
Merge: 5c2a0c5 2f0b0a5
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jul 7 17:53:51 2017 +0530

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

commit 2f0b0a5368f54a845d658ab8538c11b6c6cb2881
Merge: 401aaf6 1af074c
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jul 7 17:46:16 2017 +0530

    Merge branch 'mysql-5.5' into mysql-5.6

commit 1af074c99d902d88a008581fbd1f48e4cbc5385a
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jul 7 17:43:40 2017 +0530

    Bug#26400146 - 5.5 AND 5.6 DOCKER PACKAGES MISSING MYSQLCHECK UPGRADE NOT POSSIBLE
        - Add mysqlcheck tool to docker rpms for upgrade

commit 82a7abb4dd453ba5480c7bd8c9cb866f35ddabf0
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.
    (cherry picked from commit 579637daba48c372fe6210f33e410fcb4293acfe)

commit 5c2a0c57d3facb43fdfa76aa41cfaabf20c87190
Merge: efebf40 401aaf6
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu Jul 6 18:33:41 2017 +0530

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

commit 401aaf6b9882e76062ecf708a631d026e93f5ada
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu Jul 6 18:28:26 2017 +0530

    Bug #25586766	INNODB: FAILING ASSERTION: EVENT
    
    Analysis:
    ========
     Buffer pool load now command fails with assert in read only server mode.
    Because the event to signal the buffer pool load thread is not
    initialized.
    
    Fix:
    ====
     Check for read only mode before doing the buffer pool load.
    
    Reviewed-by: Jimmy Yang<jimmy.yang@oracle.com>

commit 15f13356cb8148eb68d13b39e121f3bd87834355
Merge: d3efed2 10b631a
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Jul 6 18:26:18 2017 +0530

    Merge tag 'mysql-cluster-7.6.2' into mysql-5.7-cluster-7.6

commit efebf40e4d342d73e61011b00a3bbf70d002eb32
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Thu Jul 6 12:27:45 2017 +0200

    Bug 26390052 - ADD LICENSE FILES TO DEBUG-TEST AND TEST PACKAGES
    
    Skip installation on RPM based platforms.

commit 12eaf748d83e746ca514250a76cb11653686a4a8
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Thu Jul 6 09:57:09 2017 +0200

    Bug#26390052: ADD LICENSE FILES TO DEBUG-TEST AND TEST PACKAGES
    
    Some license files were missing from test and debug-test packages.
    While there, add mising README files from RPM packages.

commit 5c77cd4ee04ab85344eb3945581358f51175c4ed
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Wed Jul 5 19:08:03 2017 +0530

    Bug#26241008: GROUP REPLICATION PARTITION HANDLING THREAD IS NOT INSTRUMENTED ON PERF SCHEMA
    
    Issue:
    ======
    There is no PSI key associated with the partition handler thread in
    group replication, due to which performance schema table for threads
    also won't show it.
    
    Solution:
    =========
    Add a PSI key for partition handler thread.

commit c3d1fa60a78a8b98465c6c08d9999aa97266eee5
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Wed Jul 5 11:01:20 2017 +0530

    Bug#25380000: SOME WARNINGS APPEAR IN DUMP FROM MYSQLDUMP
    
    Description:- Deprecation warning messages are printed
    along with the dump data in the result file for mysqldump
    utility.
    
    Analysis:- Deprecation warning messages are printed to
    STDOUT instead of STDERR for all client utilities which
    uses SSL options to connect to server.
    
    Fix:- Warning messages are printed to STDERR instead of
    STDOUT so that these messages will not appear in the
    result file populated by redirecting STDOUT.

commit bed70aac0199a03aeac41eb83d9a840d772c7ce7
Merge: b7f27f6 eac63a0
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Wed Jul 5 08:27:00 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit eac63a03a505f11cbbcb60ac23df0f61bf23a244
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Wed Jul 5 08:25:12 2017 +0530

    Bug #23577867: INCORRECT BEHAVIOR WITH FAULTY STORED FUNC
                   AND DATE COMPARISION
    
    Issue:
    ------
    This problem occurs when:
    1) A certain type of Stored Function (SF) is called from a
       subquery.
    2) The subquery is an NOT IN condition in the WHERE clause.
    
    Root cause:
    -----------
    When an SF (or any other Item object) is marked as a
    constant, it might be evaluated during the PREPARE phase.
    After evaluating an SF, a cleanup is called on the related
    TABLE_LIST objects. This can create a problem when the
    query attempts to acquire a lock on the same tables after
    the PREPARE phase and before beginning the EXECUTE phase,
    because the runtime system currently does not support
    evaluating functions before tables have been locked.
    
    Solution:
    ---------
    A stored function is considered as constant only if the
    tables have been locked. This will make sure that even if a
    function is marked as DETERMINISTIC, it will be constant
    only during the EXECUTE phase when the relevant locks have
    been acquired.
    
    For some of the queries containing DETERMINISTIC functions,
    the conditions weren't evaluated because the
    const_item_cache is set to false. Now that we have shifted
    it to a function that correctly checks for table locks,
    these conditions can be considered constant. The result in
    some changes in partition_locking.result.

commit d3efed2343ec851545ecc26e83689b4749154c94
Merge: 30421a6 59822f6
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Jul 4 10:43:26 2017 +0100

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit 59822f6f281958c00b1e9ffdf5a1422b472c6be1
Merge: d6952b0 8cff24f
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Jul 4 10:43:11 2017 +0100

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

commit 8cff24f2198220ecf90f53e785b1e0f09f1702ba
Merge: b4abb1b 1b29ba0
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Jul 4 10:42:54 2017 +0100

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

commit 1b29ba059ab21579161909a2f85d9266f4b3ec05
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Jul 4 10:41:56 2017 +0100

    Bug #26364729 NDB : IMPROVE LOGGING OF NODE FAILURE HANDLING IN TC
    
     - Node failure handling in TC has a number of sub-steps which run
       concurrently.  All must complete before TC node failure handling
       is complete.
       Logging coverage is extended to record when a sub-step completes,
       and which sub-steps remain.
    
     - GCP / Node failure handling interactions
       TC takeover causes GCP participant stall at the Master TC to
       allow it to extend the current GCI with the taken-over
       transactions.
       - The stall can begin in various GCP protocol states
       - The stall can end in various GCP protocol states
       Logging coverage is extended to cover all scenarios.
       Additionally, 'debug print' style logging is change to be
       more consistent and understandable to users.
    
     - QMGR monitors node failure handling duration which requires
       participation of many blocks.  Currently it generates a
       warning log to the cluster log every minute, and generates
       some DIH debug information after 5 minutes.
       This functionality is made more aggressive, logging once
       every 30 seconds of delayed node failure handling, and
       including the DIH debug information every time.
    
     - Prefix of "DBTC instance %u:" shortened to "DBTC %u:"
    
     - A new ERROR code is added to assist testing.

commit b7f27f65509979658b0dec1a6cd2a2cea408f99e
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Jul 4 08:51:29 2017 +0200

    BUG#26136674: POSSIBLE UNINTENDED USAGE OF "PRECISION" VARIABLE
    
    Post-push fix: memory leak in unit test.

commit 7d230f05cebbad55fc531c51ba7adc5a6d42d3db
Author: Libing Song <libing.song@oracle.com>
Date:   Wed Jun 28 13:54:28 2017 +0800

    BUG#26148011 RPL.RPL_MULTI_SOURCE_CORRUPT_REPOSITORY
                 FAILS WITH RESULT CONTENT MISMATCH
    
    DESCRIPTION
    ===========
    The test uses show_relaylog_events.inc to show the content of
    some relay logs. the relay logs sometimes have different
    content. That caused test failures.
    
    ANALYSIS
    ========
    The reason is that FLUSH LOGS is called immediately after
    slave is started. At the time, slave may or may not
    get Rotate/Format_description events from master. Most of
    the time, the events arrive before FLUSH LOGS and are written
    into the relay logs which are not showed by the test. But
    they sometime arrive just after FLUSH LOGS, so they are
    written to the relay logs which are showed by the test.
    
    FIX
    ===
    The test just cares if SHOW RELAYLOG EVENTS FOR CHANNEL can
    be executed successfully, but not the result of the statement.
    So we just ignore the result by using --disable_result_log.

commit 30421a6bd187adef5bf944c945cca3ef09ddb0a6
Merge: 703327d 1340381
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Tue Jul 4 00:52:20 2017 +0200

    Merge from mysql-cluster-7.6.3-dmr-release

commit 703327df5723a13e7cbf399cb1c069cbf50642fe
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jul 3 13:10:04 2017 +0200

    BUG#86581 Fixed MCC for SSH login handling

commit d34dca25c02805be6055944cef0f3977ddbd375a
Author: Libing Song <libing.song@oracle.com>
Date:   Sun Jul 2 19:09:45 2017 +0800

    BUG#26362562 COMMIT_ORDER_MANAGER INSTRUMENTATION IS INCOMPLETE
    
    Description
    ===========
    mysql_mutex_destroy was not called in ~Commit_order_manager. It
    caused a memory leak in debug build after WL#9764.
    
    Fix
    ===
    Both mysql_mutex_destroy and mysql_cond_destroy are called to
    destroy the mutex and condition objects in ~Commit_order_manager.

commit 887e398a891de16a3aa3a1cbad9fa557838a22b9
Merge: 247eed1 d6952b0
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jun 30 13:53:07 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6 (Bug#26375985)

commit d6952b07c0785374f6faac4a1cfa7e22a9ed6c4d
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jun 30 12:51:30 2017 +0200

    Bug#26375985 BUILDING WITH_UNIT_TESTS=OFF FAILS: NO RULE TO MAKE TARGET 'NDBINFO_SQL_RUN'
    
    Make CMake macro NDB_ADD_TEST a function.
    
    RETURN is used in definition of NDB_ADD_TEST.
    
    For CMake macros RETURN returns from the file invoking the macro.
    
    This was not the intention, and it caused premature abortion of
    processing storage/ndb/tools/CMakeLists.txt if WITH_UNIT_TESTS=OFF
    was used such that ndbinfo_sql_run target was never defined.
    
    Running cmake failed with:
    FATALTARGET ndbinfo_sql_run missing, needed to generate
    storage/ndb/tools/ndbinfo.sql.
    
    By changing macro to function, RETURN will only cause return from the function.

commit 247eed14441f8b61946b41a60cfabedf00ecfcf6
Merge: e2baa6f 31fb089
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Fri Jun 30 10:50:56 2017 +0100

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit 31fb089ef3cac7a73182afba0da4af6d8cb5fc64
Merge: 70c5533 b4abb1b
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Fri Jun 30 10:50:11 2017 +0100

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

commit b4abb1ba10b2fd9bff89d6ad58ae165152eb78af
Merge: 7a6b82a 7bfbe6b
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Fri Jun 30 10:49:29 2017 +0100

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

commit 7bfbe6b0f5e6110ed80c8b16f87db923167ab317
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Fri Jun 30 10:47:04 2017 +0100

    Bug #26365433 	NDB : LGMAN DUMP CODES ARE IN OVERLAPPING RANGE
    
    Modify LGMAN dump codes to use the correct range.
    LGMAN dump code usage is all node-local.
    Add symbolic constants

commit 2e4b670886c34e1c82e7d59974f6750e13fa647d
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Fri Jun 30 14:52:09 2017 +0530

    BUG#26136674: POSSIBLE UNINTENDED USAGE OF "PRECISION"
                  VARIABLE
    
    ANALYSIS:
    =========
    In the function my_b_vprintf() which is used for logging
    in MySQL, there is an unintended usage of 'precision'
    variable.
    
    my_b_printf() which is wrapper for my_b_vprintf() is a
    simple version of printf().
    Generally in printf() statements, we use an asterisk (*) to
    denote the width specifier/precision instead of hard coding
    it in the format string. The value for '*' is passed as an
    additional integer value argument to printf(), preceding
    the argument that has to be formatted.
    
    To achieve the required formatting, we use two variables
    which are defined below.
    
    - minimum_width (currently implemented for %d and %u):
      The minimum number of characters to be printed. If the
      value to be printed is shorter than this number, the
      result is padded with blank spaces.
    
    - precision (currently implemented for %b, binary buffer):
      used to print exactly <precision> bytes from the argument
      without stopping at '\0'.
    
    In the current implementation, 'precision' was used for
    processing '*' which should ideally be used only for
    processing '.*'. This might result in data loss.
    
    FIX:
    ====
    We are now using the variable 'precision' for processing
    of '.*' and 'minimum_width' for processing of '*'.

commit 0c99678da67f5e44b7517f0705f44f1e5d10cebe
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Fri Jun 30 12:05:28 2017 +0530

    Bug#26117735: MYSQLBINLOG READ-FROM-REMOTE-SERVER NOT
    HONORING REWRITE_DB FILTERING
    
    Problem:
    =======
    When running mysqlbinlog with the --read-from-remote-server
    option, the processing of the binlog entries accepts
    rewrite_db as an argument, but ignores the rewrite rule.
    Therefore no filtering is done on the binlog entries,
    resulting in failures to write data in the target DB.
    
    Analysis:
    ========
    mysqlbinlog tool can read binary logs that are present
    locally or on a remote machine. At present rewrite filter is
    applied for binary logs that are read locally. This
    rewrite_db filter specific code is not invoked while dumping
    binary log from a remote machine. Hence the filtering is is
    not done on those binlog entries.
    
    Fix:
    ===
    Invoke rewrite_db filter code while dumping remote log
    entries as well.

commit e94da4a9522986b7d451e2ef8d9ec8d11fc6d3b6
Merge: 3aab15d 4d3d66c
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Thu Jun 29 13:59:42 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 4d3d66c18e38ca238b7d35fbbb4894b4ef14e3b7
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Thu Jun 29 13:58:26 2017 +0530

    Bug#25987505 - SUPPRESSION IS TOO STRICT ON SOME SYSTEMS
    
    DESCRIPTION
    ===========
    Valgrind failure happens for few test cases e.g.
    "main.mysql_client_test"
    
    ANALYSIS
    ========
    File "valgrind.supp" has a suppression which looks like:
    {
       OpenSSL still reachable.
       Memcheck:Leak
       fun:malloc
       fun:CRYPTO_malloc
       fun:sk_new
       fun:load_builtin_compressions
       fun:SSL_COMP_get_compression_methods
       fun:SSL_library_init
    }
    
    The valgrind failure stack is as shows below:
    {
       malloc
       CRYPTO_malloc
       sk_new
       ???
       SSL_COMP_get_compression_methods
       SSL_library_init
       ssl_start
       init_ssl
       mysqld_main
       main
    }
    
    Clearly the frame 'load_builtin_compressions' can't be
    matched here and hence the reported failure.
    
    FIX
    ===
    Replace the specific frame with wildcard '...' in the
    suppression.

commit e2baa6f852f8f1bfdfc368aa3fea5a788673ab03
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jun 28 18:33:54 2017 +0200

    WL#10302: WL#8069: We need to wait until MAX of MaxGciWritten and MaxGciCompleted is restorable before we delete old LCP control files, otherwise we hit problems at recovery

commit 2b17bf6293bbd6b9e80a6cd943fed25fcff4d6a8
Merge: de43361 70c5533
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:37:01 2017 +0100

    wl#10988: Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit de43361a0fd6d22496616f45a0dd72665fede746
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Jun 28 14:53:45 2017 +0200

    Bug#23523926 DEPRECATE "PERROR --NDB" IN 7.5
    
    post-push fix print warning to stderr.

commit 70c553389fb36b4f4dea5e9767687eacb908ed6a
Merge: 411438d 7a6b82a
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:36:02 2017 +0100

    wl#10988: Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 7a6b82a045e5b205ef328f1d7616bb07afabf5dd
Merge: 856aba6 ce76479
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:35:14 2017 +0100

    wl#10988: Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit ce76479ba6b7eadf68451fa67e8c75b3198d0fa6
Merge: 9ad321e ab08e84
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:32:33 2017 +0100

    wl#10988: Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit ab08e84860e7df34c91425b4beba640120405f45
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Tue Jun 27 11:52:54 2017 +0100

    wl#10988: Fix createDB sql statement generation
    
    SQL statement was being generated but not passed when executing
    the query. Functionality never used before.
    
    Minor code style fixes following Cluster Coding Style.

commit 8ee1e865ff16e5e8a55543a9d998cdfb3642ec12
Merge: 86f1922 411438d
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:23:07 2017 +0100

    wl#10896: Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 411438dfedfe6f724085db23fca3d67868b9dd79
Merge: dda1317 856aba6
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:19:25 2017 +0100

    wl#10896: Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5

commit 856aba61e10f9570c40a2e8d2b69a7b4d93a97ec
Merge: f570955 9ad321e
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:17:18 2017 +0100

    wl#10896: Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit 9ad321e6116a3deddb573d767f540e07ab584353
Merge: a0a8435 68365e3
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 14:08:40 2017 +0100

    wl#10896: Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit 68365e38289c3a0a220f29a64102cef6308c8a6c
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Thu Jun 8 18:30:14 2017 +0100

    wl#10896: Local copy when sync files within same host
    
    Detect if synchronization is done within the same host and pass correct
    arguments to rsync (i.e. omit the host part to prevent rsync to blindly use ssh).
    Removed code duplication by handling windows case within the main loop.
    Fixed windows sync that was creating one extra folder level than linux
    (removed dirname from script and changed atrt that was artificially appending
    "/*" to all paths - windows or linux paths).
    Agreed with Mauritz that supported formats should be either 'host:/some/path' or
    'host:c:\some\path'. Added validation in case the DIR part is empty.
    Increase minor version in 'autotest-run.sh' due to the changes done.

commit 4deda2bdb51809ab5ef95603e760cae302996289
Author: Mikael Ronstrom <mikael.ronstrom@oracle.com>
Date:   Fri Mar 21 17:13:25 2014 +0100

    WL#7761: Make atrt work on Mac OS X

commit f9ac8c5a8999f7b9d2ecd6ca3c9fc0993dbe8a2f
Author: Tiago Alves <tiago.alves@oracle.com>
Date:   Wed Jun 28 13:20:08 2017 +0100

    Upgrading atrt and atrt-gather-result.sh to mysql-5.7-cluster-7.6

commit 86f1922e035256c27cfa67b38cc036670882022c
Merge: ea39bc2 dda1317
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Wed Jun 28 12:38:46 2017 +0100

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6

commit dda1317c3768c8bd86522ef1ff5f477e770bb271
Merge: 373c539 f570955
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Wed Jun 28 12:36:08 2017 +0100

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

commit f5709558eae96e2214f5a3747184edf80cebc514
Merge: bf9663a a0a8435
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Wed Jun 28 12:34:46 2017 +0100

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

commit a0a84350b937eb6c295e17446ed58e1c9f778dd6
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Wed Jun 28 12:34:13 2017 +0100

    Bug #26263397   JOB BUFFER FULL WHILE RESTORING LCP IN START PHASE 5
    
    nr_start_fragments() (DihContinueB::ZTO_START_FRAGMENTS) has a
    potential signal fan-out of 100x when sending START_FRAG_REQ.
    Looks like an oversight in terms of break; scope.
    
    Logic modified to CONTINUEB after sending one START_FRAG_REQ
    limiting fan-out to 2.
    
    Manually tested.
    
    Further automated testing to be addressed in separate bug
    (26288247 NDB : ENFORCE REASONABLE SIGNAL FAN OUT LIMIT)

commit 3aab15d9a061628c49489267322a14210b784645
Merge: 73d9625 bc76a7a
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Wed Jun 28 10:55:47 2017 +0100

    Merge branch 'mysql-5.6' into mysql-5.7

commit bc76a7aeffcd4b2d744bd6fec87073e679a6f58d
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Tue May 30 16:50:55 2017 +0100

    BUG#26137159 SLAVE STOPS WITH HA_ERR_KEY_NOT_FOUND (1032) WHEN PARTITIONING + INDEX USED
    
    Problem:
    When table partitions and indexes are used simultaneously, and the index
    key is not in the partition function, in some situations replication
    would stop because a given key could not be found when executing an
    update or delete statement. This issue only happened when
    slave-rows-search-algorithms is set to hash_scan.
    
    Analysis:
    When slave-rows-search-algorithms is set to hash_scan, the applier
    searches for keys(hashes) of the rows that will be modified. Since in
    this case, the index key was not in the partition function, the
    retrieved rows could not always be a match. If the key to the retrieved
    row happened to be different than the key currently being searched, we
    would advance to the next key, even if not all rows up to that key had
    been retrieved yet.
    
    Fix:
    Advance to the next key to search (or return an error) only when the
    search for a given key value ends without finding the corresponding key,
    instead of advancing to the next key when the index key is different
    than the key being searched.
    
    (cherry picked from commit 8fefcc056b7dd704bf381788f9ab52cbcd0d41af)

commit 73d9625be591adf5f270cea170c62c83a7384f26
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Jun 28 13:09:35 2017 +0530

    Bug #25865525: BACKPORT 25147988 FIX TO 5.7
    
    Description:
    LOAD DATA fails to accept the multibyte character which follows escape mark,
    but INSERT can.
    
    Fix:
    Change READ_INFO::read_field  to ignore the escape mark if it is followed by
    mulitibyte character.

commit ea39bc29b9b1c1907a355d02aa863faed9aeab11
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Jun 26 15:15:30 2017 +0200

    wl#10234: emergency patch to avoid build break in nodejs code
    
    Expect nodejs test to fail as a NULL argument is now supplied
    instead if a Ndb* as expected. Need to be looked further into.

commit 8ea4c54663ed1f43f8b436b2fc191c07fd83a12c
Merge: 0d1a525 749902a
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Jun 26 14:12:21 2017 +0200

    wl#10234: Merge branch 'mysql-5.7-cluster-7.6-wl10234' into mysql-5.7-cluster-7.6

commit 0d1a525f3e83cc8760d3efc57af23cb3c5f3f934
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Mon Jun 26 10:29:49 2017 +0300

    wl#7614 win32-13.diff
    
    ndb_import0 case t9: avoid quoting

commit c19fc9dbc3e8e490da9add9c206dc64e138af3b9
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Wed Jun 21 13:39:55 2017 +0200

    BUG#26314472: SERVER STARTUP CRASH IF IT STARTED WITH GROUP_REPLICATION COMMANDS IN INIT-FILE
    
    Group Replication does communicate with the server through the SQL
    API, to which depending on the thread context from which the
    communication starts, the plugin may require to launch a thread.
    
    When that thread was launched, a memory pointer was released but was
    not protected against double free, this patch fixes that.

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 ac30f6a1549114339980a5a0df62a160352bfb65
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Thu Jun 22 10:40:26 2017 +0530

    Bug#26142801: RECOVERY: SSL_VERIFY_SERVER_CERT AND
    SSL_ALLOWED ARE NOT RESET BY GR VARIABLES
    
    Problem:
    =======
    group_replication_recovery_ssl* variables can be set
    dynamically and same is used by group_replication_recovery
    channel, upon, group_replication start (Or if recovery retry
    is in-progress, values gets reflected during next retry).
    But, there is a catch. Values of following variables
    group_replication_recovery_use_ssl and
    group_replication_recovery_ssl_verify_server_cert are not
    getting updated  when user tries to disable them for
    'group_replication_recovery' channel.
    
    Analysis:
    =========
    group_replication_recovery_ssl* variables are used by server
    when it is trying to initialize a group replication recovery
    channel. i.e these newly specified
    group_replication_recovery_ssl* options are used to
    initialize receiver thread specific ssl options.
    
    The plugin code initializes the corresponding receiver
    thread ssl variable only when the option is enabled. Please
    look at the following code.
    
    if (channel_ssl_info->use_ssl)
    {
        lex_mi->ssl= LEX_MASTER_INFO::LEX_MI_ENABLE;
    }
    
    If use_ssl is enabled only then mi specific ssl is set.  But
    there can be cases where user wants to switch off ssl and
    specifies use_ssl=0. In such cases the lex_mi->ssl will not
    be reset at all. That is the reason even though user resets
    the use_ssl=0 the ssl is still enabled. The same behavior
    was observed for the other ssl_verify_server_cert variable.
    
    Fix:
    ===
    When use_ssl/ssl_verify_server_cert variables are set in
    group replication plugin set their corresponding recovery
    channel specific server variables. Similarly when these
    variables are turned off, turnoff their corresponding
    recovery channel specific server variables.

commit fd7ede366193613f2f6145d11a903fdee9d91b87
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 07:41:27 2017 +0200

    Bug# 26168832: TEST DATABASE DOESNOT EXIST IN MSI PACKAGES
    
    Fixed accidental removal of the initial data base installation.
    
    (cherry picked from commit c04822bd9ab68efbc4ff62fa0df442d88b5c88ee)

commit 3ddc2993876e9a8eb5e24997e124e04ae11c9927
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 07:41:27 2017 +0200

    Bug# 26168832: TEST DATABASE DOESNOT EXIST IN MSI PACKAGES
    
    Fixed accidental removal of the initial data base installation.
    
    (cherry picked from commit c04822bd9ab68efbc4ff62fa0df442d88b5c88ee)

commit 432d360adedd7d8976fd6254eb3f5bee0b1ac3d6
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 499f2700d315918dfe2361b5f8b306df754f7f99
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 15ee5a53c43281822d8c9110160c12926efb952c
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 b101506145fc65f35335b0cd9f9f74abb5a6e8ec
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jun 22 15:40:17 2017 +0200

    WL#10426: Introduced InternalIP member
    On cloud installations there is usually an external IP address used to SSH
    into the VM or machine. This IP address is not intended to be used internally
    between machines in the cloud. Communications between nodes in the cluster
    is most likely happening internal to the cloud. So this means that the cluster
    config should use the IP address used internally in the cloud. This means
    using an IP address that is part of a VPN that the user have set up in the
    cloud. This internal IP address will be used in NDB configurations whereas
    the hostname will be used to SSH into the server to get information about
    the machine. This internal IP address can be set for each host in the
    InternalIP member.

commit 5ee807718bd6596e9a14f05f56e0e00445c4b061
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jun 22 15:19:49 2017 +0200

    WL#8069: Fix compiler warning

commit 96db001e8f754608375719fa8eaf7b8143fa73df
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Jun 22 14:11:50 2017 +0200

    WL#8069
    Fix such that we don't report MaxGciCompleted that is smaller
    than the restorable GCI at start of LCP. This ensures that
    the LCP is not having problems with too little REDO log
    available at restart.
    Added a bit more debug code around this.
    Ensured that tests in testSystemRestart works also when
    nodes not connected to active node group is around.

commit 153eb9cabd543d27f4bc112359e1af9d5636f34e
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.

commit 94a59a54e740d93321af16b536ce8cbf34e7b743
Merge: 2c2d214 373c539
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Jun 22 14:06:50 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Bug #26266758  SKIPPING MYSQL SLAVE ERROR CODE 1590 (ER_SLAVE_INCIDENT)
     DOES NOT WORK)

commit 373c539175108cd0869c0c8fabe443058c7f4b77
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 749902af083ee35e2398553c1eb62029fe0668b7
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Jun 22 10:29:53 2017 +0200

    wl#10234 Update version check for MultiFrag capabilities
    
    It didn't make it to the DMR3, so should check against 7.6.4

commit 160aef6fc359e093ddbaaa346fa1570e8357e4ac
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().

commit 9127e81912319a0e68280b49a61f9e6022d7d11f
Merge: 4585ae7 f1f44c0
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu Jun 22 12:59:30 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit f1f44c0311715cd8e30df12041e8eee24461854d
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu Jun 22 12:57:29 2017 +0530

    BUG#25033538: ASSERTION FAILURE IN THREAD X IN FILE
                  FTS0QUE.CC LINE 3831
    
    Post push fix for test failure on 32 bit platform.

commit 2c2d214a05cbbc25f74623771c55a52de4a2a2a8
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jun 21 15:14:09 2017 +0200

    BUG#26321303: Fix of patch

commit 0cbad9a1840f581d96f98ad805934e1c00331775
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Jun 21 14:11:30 2017 +0200

    wl#10234 Changes after review comments from Mikael R.

commit 11ef0ddf999ce0179b3586a1b9504caf565a9240
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Jun 21 13:01:28 2017 +0200

    wl#10234: Deprecate usage of 'm_firstExecution' member variable
    
    ... compliments previous patch.
    
    'm_firstExecution' was used as a flag to handle that we didn't
    have valid 'parallelism' statistics yet. However, it usage
    was a bit obfuscated due to its naming.
    
    This patch introduce the ::isValid() method in the class
    handling the statistics. Usage of 'm_firstExecution' can then
    be replaced with calling ::isValid() instead.

commit 84ee4daebf93a678dac55d1cce608b9d471e13b1
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Jun 21 12:49:57 2017 +0200

    wl#10234, Fix initial ('firsteExec') parallelism calculation (performance patch)
    
    When there is no valid parallism statistics available,
    we start by scaning only a single node-local fragment.
    This will give us a sample of the selectivity such that
    further scan parallelism can be estimated.
    
    However, this WL set introduced new logic which
    increased the parallelism to > 1 if we otherwise could
    have exceeded the MAX_PARALLEL_OP_PER_SCAN pr fragment.
    
    This logic incorrectly took effect also when we had choosen
    to sample only a single fragment. Thus breaking the initial
    sampling logic.

commit 97bad4d92d80ad31cd3c5f9c4b0610766eb43f99
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Jun 21 12:40:41 2017 +0200

    wl#10234, fix fragment enumeration skew. (performance patch)
    
    To avoid that all SPJ blocks requested fragment scans
    on the same sub-set of fragments, while other were
    idle, a different 'skew' is used wjen setting up the
    fragment lists on the different SPJ's.
    
    This was previously set up such that a skew of '1'
    was used between the different SPJ.
    
    With these WL that has to change such that the number
    of multi-fragments assigned to each SPJ is used in
    the skew calculation.

commit 43cd4ee5601e8234c398763b78f0313d8870b3bc
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Jun 21 12:34:04 2017 +0200

    wl#10234, correct MTR test ndb_dd_initial_lg.test after
    these WL changes will use more 'TRANSACTION_MEMORY' on
    a non-deterministic TC block
    
    Patch already discussed with Mai and Magnus B.

commit cb5729e04eecc2ffffd39488be5cfa393d306c81
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Jun 7 15:29:03 2017 +0200

    wl#10234 Update after Mauritz review comments.

commit 0ce85edd5f045661bb577740e7798a0c5b4f4e32
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Jun 6 15:15:49 2017 +0200

    wl#10234 Fix more incorrect comments and code simplification (avoid break)
    
    Fix comments which became incorrect after splitting the
    'get DBDIH info - start fragment scan' into two seperate phases.

commit a10c642f13816e1812bd6ace3e20c0aec19c495a
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Jun 6 13:18:50 2017 +0200

    wl#10234 Removed the now obsolete member variable ScanFragRec::scanFragId.
    
    Previously used as an argument sent to DIH in GSN_<insert signal name>.
    However usage of this signal was replaced with GSN_DIGETNODESREQ
    which does not take such a 'fragId' argument.
    
    The few remaining uses of this variable was partly incorrect,
    (Fixed by prev patches in this wl) or could easily be replaced
    by checking scanNextFragId instead.

commit c273ca383c62f5d5c4908f54df75be4859853a70
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Jun 6 12:51:06 2017 +0200

    wl#10234: Fix broken testScan -n Bug16402744 doing ERROR_INSERT 8097.
    
    Original testcase was intended to check behaviour when taking
    a CONTINUEB break just before sending fragment scan REQs
    for the last fragment to be scanned.
    
    This has detoriated over time, and became even more broken as part of
    this wl when splitting the DIH-REQ - start LQH Scan logic, into two phases
    where *both* of these phases incorrectly handled the same 8097 error insert.
    
    1) Patch fixes issue above such that 8097 error insert is only
       handled prior to sending the last 'start frag scan' to LQH as
       original intended.
    
    2) if (ERROR_INSERTED_CLEAR(8097) .. was checked as first term in the
       condition for when to take a CONTINUEB-break. This caused the
       error code to be CLEAR'ed the first time it was checked, and not
       after also the two other terms evaluated to 'true'.
    
    3) The 'Last fragId' check was expressed as:
        'scanFragP.p->scanFragId == scanptr.p->scanNoFrag-1)'
       However'scanFragId' was not yet assigned when checked. Replaced
       with scanptr.p->scanNextFragId which it will be assigne dfrom.
    
    Also see commit msg for bug16402744 for understanding how this testcase
    was intended to work.

commit 0f4d9279ce31d8587f576fa0eca5d0ee3c473ea1
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Jun 6 12:31:59 2017 +0200

    wl#10234 Fix incorrect comments

commit b0f202c7c34ae2a88d1901997a2a48f901ba2a6e
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Jun 6 12:01:28 2017 +0200

    wl#10234 Replace temp FragLocation array with pool allocated FragLocationRec.
    
    The previous wl#10234 patch set introduced ScanRecord::fragLocations[256]
    to manage the set of fragments to be scanned. As the size of the
    ScanRecord used to be ~100bytes, adding this array of FragLocations
    increased it size by a factor of ~20. This was never intended
    to be a permanent part of this wl, so this patch change the
    fragment locations to be allocated from a dynamic pool of
    fragment location records.
    
    The records are allocated as we get the location info from DHDIH
    and are released as soon as the fragment scan request has been
    sent to LQH.
    
    The fragment location records are added to the tail of a SLFifoList
    and consumed from its head in order to operate on them in the
    same order as they are received from DBDIH.

commit ed9f094e8ef333a96b5a555de5ceba923ebcb749
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed May 31 10:33:31 2017 +0200

    wl#10234, fix remaining review comments
    
    Fixed an incorrect assert() which checked that the max
    parrent correlation id was not exceeded.
    
    Correlation Ids are produced starting from the specified
    'batchRange' offset for a maximum of 'bs_rows'. Thus,
    correlation Id's may be produced in the range
    [batchRange .. batchRange + (bs_rows-1)].
    
    The assert for not exceeding the MaxCorrelationId should
    then be:
    
    - Checked *before* sending the scanFragReq to the LQH node.
    - Check for 'batchRange+bs_rows <= Max....' as corrIds are
      created starting with an offset of '0' and ending at
      an 'bs_rows-1' offset.

commit bb9502e798c867ea1018225c4bef2e364acb86a1
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon May 29 15:43:08 2017 +0200

    wl#10234, fix review comments

commit 0ff853ca529855965c2b2f1e609c8a34e6659897
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri May 19 09:37:57 2017 +0200

    wl#10234, prepare QN_ScanFragParameters for future extensions
    
    Extend 'struct QN_ScanFragParameters', which was introduced as
    part of this wl, with 3 new unused Uint32 members. As such changes
    has to be done under control of version checks, it could be
    good to have some spare fields here for possible future extensions.

commit cc068cd273b2cd37e99fe149d4e5cce4e9594b92
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri May 19 09:17:50 2017 +0200

    wl#10234, Reintroduce building of SPJ performance measurement tool
    
    spj_performance_test.cpp was one of the tools originaly used
    when developing the SPJ feature. It turns out that building of this
    tool was disabled when we switched to using cmake.
    
    Patch reintroduce build of this tool and also extend it to
    be able to test Scan-Scan spj queries. (Spj queries where
    both the root node and its childs are scans)

commit b538c3a45b8ac87b9d15c44e11567eb02795f421
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon May 8 14:14:55 2017 +0200

    wl#10234, testcases
    
    Add new ATR testcase and enable daily ATR testing of other testcases
    already added as part of this WL.

commit 6d985b8b3edadb1b7a4bce76b2bb81a1f492a183
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon May 8 13:07:20 2017 +0200

    wl#10234: Enable usage of MultiFrag scan from API -> TC -> SPJ
    
    SPJ API sets the ScanTabReq::setMultiFragFlag() to enable the feature.
    'm_fragsPrWorker' is calculated by the API such that each 'worker'
    handle all fragments located on the same data node.
    
    As a 'batch-buffer is set up pr fragment, the batch size available
    for each combined MultiFrag scan is multiplies by m_fragsPrWorker.
    
    Dbspj::execSCAN_FRAGREQ receives the list of fragments to scan
    (set up by TC) in the last longSignal section. Instead of
    scanFrag_build() setting up a single ScanFragHandle for the
    root scan, we now construct one for each of the MultiFragment.
    
    As there is an implementation defined 12-bit limit on
    'maxBatchRows', some additional checks had to be introduced
    to avoid it to overflow. (Due to larger batch sizes now being
    available)

commit a4f2e5cb2de29f3d5d1bbb44259370adcad657b2
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon May 8 12:42:14 2017 +0200

    wl#10234, fixup of previous patches in this wl:
    
    When assigning SPJ instances round-robin, they should be assigned
    such that the *same* SPJ instance is used for all scanFrag REQ's
    in a MultiFrag REQ sent to the same node.
    
    Also remove some jamLine debug put into the code in prev patches.

commit 1ed8f25ec0ebc983e704b3a6e4f383021400dbed
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu May 4 11:35:22 2017 +0200

    wl#10234: Online upgrade handling new Query Node type
    
    Introduce the version checker function: ndbd_spj_multifrag_scan()
    to check whether we are running against a version supporting
    the multi fragment scan option.
    
    In such cases NdbQueryBuilder produce the new QN_SCAN_FRAG
    query node instead of the deprecated '_v1' variants.

commit fb7ab4c5aaf4bec3c1454fd63d121f8eeb844c0d
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu May 4 11:02:08 2017 +0200

    wl#10234
    
    Complete deprecation by changing QueryNode builder from using
    QN_ScanIndexNode's to the new QN_ScanFragNode's.
    
    Backward compatibility should be taken care of by the physial
    memory layout of the two types being identical. So even if
    two different types are produced, the net result should be the
    same.

commit 446358d31883f5747a08b9236a651206191b58f9
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu May 4 10:36:42 2017 +0200

    wl#10234 Introduce the new QueryNode type QN_SCAN_FRAG.
    
    Need an extended version of the QN_SCAN_FRAG query node
    as the current version bit encoded the batch rows and batch byte
    parameter into a single Uint32. That is too limited for the
    multi fragment scan as it will get a batch sized multiplied
    by the n fragments it is allowed to scan.
    
    The old QN_SCAN_FRAG and QN_SCAN_INDEX is renamed with a
    '_v1' suffix, the same goes for the datastructures
    used by these query node types.
    
    Introduce a new QN_SCAN_FRAG query node using two Uint32
    for the batch rows/size parameter.
    
    Introduce code in the SPJ block which transform any '_v1'
    requests to the new QN_SCAN_FRAG query type.
    
    Note that the SPJ-API still does not produce the newly
    introduced QN_SCAN_FRAG in its SPJ requests.

commit dda06440e5b0724c6cc4b8f8b943febf63679338
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu May 4 09:04:54 2017 +0200

    wl#10234 Rename patch
    
    Renames class NdbRootFragment to class NdbWorker and update related
    comments to reflect this change.
    
    Class NdbWorker (former NdbRootFragment) handles the results
    being produced from a single SPJ SCANFRAG request, starting by
    scanning a specific root fragment. A full SPJ execution required
    one SPJ-SCANFRAG request to be sent to a SPJ instance for each
    root fragment to scan.
    
    With this 'multi-fragment' worklog that will change such that
    a SPJ SCANFRAG request may scan multiple root fragments. Thus
    the term NdbRoot*Fragment* was a bit misleading.
    
    The intention of the new naming is to focus on that execution
    of a SPJ query employes multiple SPJ instances as 'workers' - each
    of them handling some of the fragments.

commit bb06a4ff07a6fd33ba49b96b99167ff8b723adfc
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue May 2 13:54:28 2017 +0200

    wl#10234
    
    Enhance TC block to handle Multi fragment scan requests:
    
    A Multi-Fragment scan request will try to 'group' as many
    fragment scan request to the same 'node/instance' as possible
    into the same GSN_SCAN_FRAGREQ signal.
    
    In order to facilitate this we have to know which LDM instance
    each fragment is located on before we produce any GSN_SCAN_FRAGREQ
    signals.
    
    Thus, the Dbtc code had to be enhanced such that instead of
    immediately sending SCAN_FRAGREQ when DIH had replied on
    a DIGETNODESREQ-signal, we now instead collect this info into
    the fragLocations[]-array. When this array has been filled in
    for all fragments, it is sorted on the fragments 'blockRef'.
    (Which is the blockRef of the SPJ block to execute on in case
    of a MultiFrag-viaSPJ scan request)
    
    We are then ready to enter the new sendFragScansLab phase which
    use the collected fragLocations to send SCAN_FRAGREQ's to
    LQH / SPJ.
    
    Due to splitting the old combined DIGETNODESREQ + SCAN_FRAGREQ
    phase into two seperate phases some more restructuring
    of the code, mostly related to error handling:
    
    - Several places we could remove code to 'release' a failed
      scanFrag from the 'm_running_scan_frags' list. (Due to
      we were still being in the 'collect fragLocations[]' phase
      where we could not be 'running' yet)
    
    - Code for checking 'CLOSING_SCAN' and 'scanSchemaVersion'
      had to be adapted to the new phases.

commit 0a79a0d76e34115ebbcf0363266ee6b1f140ed25
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Apr 28 11:39:10 2017 +0200

    wl#10234
    
    Introduce the 'MultiFragFlag' in the ScanTab signal
    to indicate that TC should send 'MultiFrag' ScanFragReq.
    
    Also enhance the ScanFragReq signal with the same
    'MultiFragFlag' indicator. If set, a list of Fragments
    to scan will be sent as the last 'section' in the signal,
    after the AttrInfo and KeyInfo (if present)

commit 67aa9257e240ce6042b74fcce4b7cbad2711a355
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Apr 26 09:17:55 2017 +0200

    wl#10234
    
    Introduce the 'MultiFragFlag' in the ScanTab signal
    to indicate that TC should send 'MultiFrag' ScanFragReq.
    
    Also enhance the ScanFragReq signal with the same
    'MultiFragFlag' indicator. If set, a list of Fragments
    to scan will be sent as the last 'section' in the signal,
    after the AttrInfo and KeyInfo (if present)

commit 5696ca6d8c269eb506e7c1ff16babe5ab9cb0536
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Apr 25 15:37:59 2017 +0200

    wl#10234
    
    Rename all scanIndex* methods and data types to scanFrag*.
    Completes the deprecation of the old scanFrag methods.

commit cff9b56fec6ccca13f04c0e8bffea8853acfc986
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Apr 25 15:27:06 2017 +0200

    wl#10234: Use multiple fragments in SCAN_FRAGREQ to SPJ
    
    Remove the now obsolete QN_SCAN_FRAG scanFrag* methods.

commit aee7b63db4e0e6e0649321ae65f22ad8b877332c
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Apr 25 14:59:32 2017 +0200

    wl#10234: Use multiple fragments in SCAN_FRAGREQ to SPJ
    
    Refactor patch preparing the ground for wl#10234:
    
    There are currently two SCAN type treenodes in the SPJ block:
    
    - The QN_SCAN_FRAG (scanFrag* methods) scans a table,
    optionally through an index. It is the only scan-treeNode
    of the two which could be the 'root' of a scan type SPJ query.
    However, it is limited to scaning a single fragment.
    
    - The QN_SCAN_INDEX (scanIndex* methods) scans an child-treeNode
    which is linked to its parent treeNode trough a range equality
    on a (sub set of) its non unique indexed columns.
    Contraery to the QN_SCAN_FRAG, it is able to scan *all* fragments
    belonging to its table across the data nodes.
    However a QN_SCAN_INDEX can currently not be the
    'root' in a tree of SPJ operations.
    
    As WL#10234 will need even the root node to be able to handle
    scan across multiple fragments, some of the above limitations
    has to be lifted, Thus this patch:
    
     - Extend the SPJ scanIndex pseudo class to also be able to
       act as the root of a scan operation.
     - Dbspj::build() convert an incomming QN_SCAN_FRAG node
       to a SCAN_INDEX node.
     - Introduce a 'deprecation assert' in all existing scanFrag<foo>
       methods: They are now replaced with the scanIndex methods.
       (To be removed in later patch)
    
    This leaves the scanFrag* methods unused, but still present
    in the codebase.
    
    The following patches will eventually remove the scanFrag*
    methods and replace all its usage with the extendes scanIndex*
    methods.

commit 9d535b3c2e546d262de39684de24a0ac7037751f
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Jun 21 17:28:21 2017 +0530

    Remove ndb_perror from cluster 7.6 docker rpms

commit eebe6fcd6ec5a336575e9082ce86af3ca4110d73
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Jun 21 17:20:40 2017 +0530

    Added ndb_top to cluster 7.6 docker rpms

commit 73515a0eb325cc8b66816c859eb9e0031988c1f6
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jun 21 13:21:00 2017 +0200

    BUG#26321303: Fix OM_CREATE on Windows

commit a1e49ba3fc8236335120d9ee18ab3f83a2e946c2
Merge: 817ab39 1d7d460
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Jun 21 16:15:48 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 1d7d460570c54166e8c53c4dc69690e51258693a
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Jun 21 16:14:39 2017 +0530

    Remove authentication_ldap_sasl.so and authentication_ldap_simple.so from cluster 7.5+ docker rpm

commit 4585ae70078721d7ee1ed23ee632a251ac32de41
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.

commit 817ab395c0b288219925ab923fd1fc2d6b1ed308
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Jun 14 16:00:17 2017 +0300

    wl#7614 terminator1.diff
    
    check long terminators fully

commit c5d7fcc8e22503efbdb97aa5cbeab32f7765b180
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Jun 13 16:49:42 2017 +0300

    wl#7614 nul-input.diff
    
    allow literal NUL (0x00) in CSV input

commit b5edcedae31330e4a001039e0224e2dcf0d7a11a
Merge: e538a9c 9ba24a8
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Tue Jun 20 16:16:02 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 9ba24a80d321c38c513db14bb2e018a281d41d08
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Tue Jun 20 16:12:54 2017 +0530

    BUG#25033538: ASSERTION FAILURE IN THREAD X IN FILE
                  FTS0QUE.CC LINE 3831
    
    Analysis:
    ========
    Server exits when the full text search results
    exceeds the configured 'innodb_ft_result_cache_limit'.
    
    When the full text search results exceeds the
    'innodb_ft_result_cache_limit', an error is raised.
    During the FTS cleanup, the new result list i.e
    'query->intersection' is not freed, triggering
    the assert which checks if 'query->intersection'
    is NULL. Also the additional issues which was fixed
    by BUG 21140111 in 5.7 contributed to the problems
    reported in the bug.
    
    Fix:
    ===
    During the FTS query cleanup, free the result
    list 'query->intersection'.
    
    Also this fix backports the patch for:
    
    BUG 21140111: Explain ... match against: Assertion failed: ret ...
    
    The problem here is missing error check in
    Item_func_match::init_search() after the handler call
    ft_init_ext_with_hints(), and missing error propagation
    in the call stack.
    
    The fix also includes a new inlined query block property
    function has_ft_funcs() that is used to avoid an
    unnecessary and costly function call to optimize
    full-text searches.

commit 6b762b352bcd96686860f68103b295a0f367d6eb
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Tue Jun 20 09:48:46 2017 +0200

    Bug#25811493 - REPLACE FAILS ON SPARC WITH: ERROR 1114 THE TABLE IS FULL
    
    The test inserts two tuples which end up in two different fragments in
    sparc, but one in x86s, due to hash differences.
    
    Each fragment uses its own extent from the tablespace and this minimal
    test has only one extent available for normal usage, causing the test failure.
    
    Changing the test to be independent of tuple-fragment connection.

commit e538a9cdb23ce1abd96d9f2f867012260373f0f1
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Jun 20 07:00:25 2017 +0200

    Revert "Bug#25432850 - MYSQLPUMP: PROGRESS INFORMATION INCORRECT"
    
    Revert since it broke on ASAN.

commit fcd822689c7137c2daa657964de0dbbdec09b31e
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Jun 19 17:34:05 2017 +0200

    WL#10302: One more fix of variable handling around started LCPs in DIH

commit c7999cd48afbaff11ae45ae2ec2bdcd266799fda
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Jun 19 19:01:29 2017 +0530

    Added ndb_perror to cluster debian builds

commit 04f61d9acb74b394efd2831a09d83a925a868f19
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 19 13:21:05 2017 +0200

    Add ndb_tob to DEB_NDB_CLIENT_EXTRA

commit 37b7d6346d7cdf487f8833a1626592e7eee23356
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Mon Jun 19 13:03:18 2017 +0200

    Bug#2603593 GROUP_REPLICATION_GROUP_NAME SHOULD NOT MATCH SERVER_UUID
    
    Description:
    When a node requests to join the group, we don't check to see if the joiner
    node's @@server_uuid == @@group_replication_group_name.
    
    That can lead to a variety of serious issues because we rely on GTIDs being
    globally unique and the basic idea that each unique GTID (UUID:GNO) refers to
    the same underlying data changes. But in the above scenario UUID:N could have
    been generated for one user transaction on the stand-alone instance. And it
    could have been generated for an entirely different user transaction in the
    group. That's because the UUID part of the GTID that both independent systems
    were generating was the same.

commit a1c3617d8933a565e775d0f306335b76d751acc1
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Sun Jun 18 20:17:29 2017 +0530

    Add ndb_perror man pages to rpm builds

commit 6af5a6d3cb45bdfa3edbee9377f54180b30f7771
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:09:07 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Corrected the revert.
    
    (cherry picked from commit f637e524bf9b692c3ed46d856e2beac193b42a3e)
    (cherry picked from commit 4104f9089cdfaf9e7859365aaea9d1cdc7baaac5)

commit 23947b3e9e214daa15bfd692510ecd5aa7b14375
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:17:30 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Temporary revert of the VS2008 redist check.
    
    (cherry picked from commit 36ec550fe5fa6b2a997cb39d3b9e33988f525c96)
    (cherry picked from commit fb4b563273850e59dd61446a1145e84c3316ce89)

commit afc4138e4eaebe2336c09e6cb4587223794a825c
Merge: 2388f5c 92742c1
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jun 16 21:29:12 2017 +0530

    Null merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

commit 92742c1236326137241da15f83b197aa4535c5e0
Merge: 3666ae9 bf9663a
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jun 16 21:28:13 2017 +0530

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

commit bf9663a7d34edbca4470867bbf76c564351978bb
Merge: 3a5b342 f5e5577
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jun 16 21:25:55 2017 +0530

    Null merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4

commit f5e55773868fe712566b0c56fcb19e6cdea49ebc
Merge: 539060e 4104f90
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jun 16 21:23:55 2017 +0530

    Null merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3

commit 4104f9089cdfaf9e7859365aaea9d1cdc7baaac5
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:09:07 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Corrected the revert.
    
    (cherry picked from commit f637e524bf9b692c3ed46d856e2beac193b42a3e)

commit fb4b563273850e59dd61446a1145e84c3316ce89
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:17:30 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Temporary revert of the VS2008 redist check.
    
    (cherry picked from commit 36ec550fe5fa6b2a997cb39d3b9e33988f525c96)

commit c3bf8e2b5e8607262e20259952a1124113779b3b
Merge: 3d3936d 73d2027
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Fri Jun 16 18:01:09 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 73d2027113befdd433f447a3b2a4df4e8363d261
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Fri Jun 16 17:58:49 2017 +0530

    Bug#21421642 - SERVER CRASH WHEN CONNECTING SHA USER WITH
                   BLANK PWD FROM PYTHON CONNECTOR
    
    DESCRIPTION
    ===========
    When a user (created using sha256_password plugin) tries to
    connect to server through Python connector using a blank
    password, it results into server exit!
    
    ANALYSIS
    ========
    In the reported scenario during authentication process in
    sha256_password_authenticate(), 'pkt_len' which is an
    outcome of vio->read_packet() is calculated as 0. Later in
    the same flow, 'pkt_len-1' (which becomes an arbitary large
    number when casted to unsigned int) is passed as an
    argument to my_crypt_genhash() which is used for memory
    manipulations (such as memcpy() in case of YASSL) and hence
    the exit.
    
    When blank password is provided through client, 'pkt_len'
    is calculated to be 1 and is handled accordingly. This has
    to be extended for the case when 'pkt_len' is calculated to
    be 0 (e.g. When python connector is used to connect with
    blank password). All other values of 'pkt_len' are rightly
    handled in the code.
    
    FIX
    ===
    We avoid calling my_crypt_genhash() when 'pkt_len' is 0 and
    *buf is empty. In other words when the password is blank,
    return before calling my_crypt_genhash(). The return value,
    however depends upon if the 'auth_string' (corresponding
    column value from the mysql.user table for the given user)
    is empty (OK) or not (Error).
    
    NOTE
    ====
    The above fix takes its inspiration from the following:
    
    1. native_password_authenticate() - Handling when 'pkt_len'
                                        is 0
    2. connecting through client      - Checking emptiness of
                                        'auth_string'

commit 2388f5c6f5e52b78539f2b47906e07cb32ae5931
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Jun 16 15:40:04 2017 +0530

    Add ndb_perror to rpm builds

commit 3d3936ddd56efbe30c9db98d0248825ee91c1145
Author: Horst Hunger <horst.hunger@oracle.com>
Date:   Fri Jun 16 09:51:07 2017 +0200

    Bug#26285484: Disabled failing test runnin in Hudson job until being fixed.

commit 0e92e510f589a21c8d1c967f40eeda5b5af71fec
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Fri Jun 16 08:14:48 2017 +0530

    Bug #23523926 DEPRECATE "PERROR --NDB" IN 7.5
    
    post-push fix: updating old test case to adapt the new feature.

commit d0ab11963c7d27d55c2322a5526ab861c7e48ef9
Merge: 6c37273 3666ae9
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:35:14 2017 +0200

    Upmerge of the 7.5.7 build

commit 3666ae9d962cbe871f6a29bc25e26a0c495f3618
Merge: a249bde 3a5b342
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:33:13 2017 +0200

    Upmerge of the 7.4.16 build

commit a249bde2f699cbbb58cf14743a34bda8e3c20b0b
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:32:51 2017 +0200

    Raise version number after tagging 7.5.7

commit 3a5b342224f7c2e55ab33f709c2b42d709897801
Merge: 2259369 539060e
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:31:30 2017 +0200

    Upmerge of the 7.3.18 build

commit 2259369b061ea22dd9a1643ffafd503627841389
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:31:01 2017 +0200

    Raise version number after tagging 7.4.16

commit 539060e86af7eb270ebdc9904975df55215a4a63
Merge: e3e7d11 7dbf545
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:26:29 2017 +0200

    Upmerge of the 7.2.30 build

commit e3e7d117dba24b971e09042703f0de37004032a4
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 13:25:40 2017 +0200

    Raise version number after tagging 7.3.18

commit 6c37273bff50e26b819bd9b5369e7a63ff277fb0
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Jun 15 16:43:50 2017 +0530

    Bug #23523926 DEPRECATE "PERROR --NDB" IN 7.5
    
    post-push fix adding new line after warning

commit 7dbf545b984d79cebc670af34863cd1584732309
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Jun 15 12:56:25 2017 +0200

    Raise version number after tagging 7.2.30

commit e8155b25fbb663ebb339e6321f29b8b7b55e2ecc
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Jun 15 15:04:07 2017 +0530

    Bug #23523926 DEPRECATE "PERROR --NDB" IN 7.5
    
    post-push fix for pb2 failures

commit 901daf701bd142db642d01fd1d44e2bcb2f3d59a
Merge: 0faff41 929305f
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Jun 15 12:32:22 2017 +0530

    Null merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

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 0faff41685dd457561f98e6c72c879357086ead3
Merge: d5aa318 ec6d375
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Jun 15 10:56:22 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

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 d5aa3189d2dfb02e25fe163eebd5243e0e95aab0
Merge: 3c845c4 c9acede
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Jun 14 17:04:02 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

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 2e797a885a0029eb6586439cd10e49251c0d2873
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Wed Jun 14 16:22:00 2017 +0530

    Bug#25432850 - MYSQLPUMP: PROGRESS INFORMATION INCORRECT
                   FOR TABLES
    
    DESCRIPTION
    ===========
    While mysqlpump is performing backup, it shows incorrect
    progress of the tables.
    
    For example for a database having 500 tables each having
    500 rows, mysqlpump progress looks as shown below:
    
    Dump progress: 0/1 tables, 250/500 rows
    Dump progress: 0/73 tables, 18250/36500 rows
    Dump progress: 0/151 tables, 37750/75500 rows
    Dump progress: 0/229 tables, 57250/114500 rows
    Dump progress: 0/307 tables, 76750/153500 rows
    Dump progress: 0/385 tables, 96250/192500 rows
    Dump progress: 0/463 tables, 115750/231500 rows
    Dump completed in 9241 milliseconds
    
    Please note that the total-no-of-tables-backed-up at any
    given point of time remains zero throughout the process.
    
    ANALYSIS
    ========
    Abstract_chain_element::object_processing_ends() calls the
    following two functions in the respective order:
    
    1. Abstract_progress_reporter::report_object_processing_
       ended()
    
    In case of table dump, this function calls
    Abstract_progress_watcher::object_processing_ended(). If
    the latter finds that the task is fully completed by all
    elements of the chain [by checking if flag 'm_is_completed'
    is true], it increases the counter 'm_table_count' and
    reports the progress with a helper function.
    
    2. Item_processing_data::call_completion_callback_at_end()
    
    In case of table dump completion, this function finally
    calls Abstract_simple_dump_task::set_completed(). The
    latter is responsible for setting flag 'm_is_completed' to
    'true'. Logically this signifies that the task is fully
    completed by all the elements of the chain.
    
    In the current scenario, the 1st function always finds the
    flag to be false, the default value. Thereafter it skips
    the counter updation and progress reporting altogether.
    Calling 2nd function doesn't make any difference now.
    
    FIX
    ===
    The 2nd function has to be called first and only if it
    returns true, we call the 1st function. In other words,
    report the table progress only when the task is fully
    completed.

commit 3c845c4654ac90e2769df5bfa44e692a94b0a67f
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Tue Jun 6 15:00:18 2017 +0530

    Bug #23523926 DEPRECATE "PERROR --NDB" IN 7.5
    
    "perror" is a mysql tool to give error message for an error code. We can
    also get ndb cluster error messages when we pass "--ndb" as argument along
    with error code. But now a new tool called "ndb_perror" is available
    exclusively for ndb cluster. Hence now depricating "--ndb" functionality in
    "perror".

commit 29f316790f2b7105584e8a72078ebbef5108be0b
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Tue Jun 6 18:15:31 2017 +0530

    Bug#26048272 IMPLEMENT NDBINFO TABLE FOR LOOKUP OF ERROR CODES AND MESSAGES
    
    To diagnose error codes and messages returned from SQL commands easily, we
     need a way to lookup NDB error codes, error messages and error
    classifications using SQL.
    
    Hence, implemented ndbinfo.error_messages table which returns the array of
     errors for NDB as rows.

commit cab279ff3df6eb5af91d9055edc24c7792a9bbf1
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 f01e8d069939225127f428d960b83c7c57d3d88e
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Jun 1 09:55:08 2017 +0530

    Bug #23523869 IMPLEMENT NDB_PERROR AS REPLACEMENT FOR "PERROR --NDB"
    
    Overview:
    
    "perror" is a server tool which takes error code as input and prints the
    error message. It prints ndb error codes when --ndb is passed as
    argument.
    
    Problem:
    
    As perror is a server tool, when the mysql is not compiled with cluster
    flags then we will not get the ndb error codes. So, vanilla MySQL Server
    when compiled will not have "perror --ndb" functionality.
    
    Solution:
    
    Implemented new tool ndb_perror with functionality identical to that of
    perror.
    
    Signed-off-by: Dinesh Surya Prakash <dinesh.prakash@oracle.com>

commit 7327a5846bba094bab40a82ff212b679ac6eba3b
Merge: 4fc154a 44eec51
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Wed Jun 14 07:53:18 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 44eec513f267db22cec665ae9716f706c00c3659
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Wed Jun 14 07:50:43 2017 +0200

    Bug#23531150: MYSQLDUMP GET_VIEW_STRUCTURE DOES NOT FREE MYSQL_RES
                  IN ONE ERROR PATH
    Fix memory leak in mysqldump in case of an error.

commit 9225b46c0059b8b920ca0b4c58a9ead62efc5722
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jun 13 22:13:50 2017 +0200

    WL#10302: Fixed some ndbrequire handling in DIH

commit 4fc154a093e803815d7e284a1dfc78e460a21000
Author: Aditya A <aditya.a@oracle.com>
Date:   Tue Jun 13 18:41:54 2017 +0530

    Bug #25942592 INNODB: FAILING ASSERTION: INDEX->PAGE != 0XFFFFFFFF IN BTR0CUR.CC LINE 816
    
    Post push fix to fix ASAN failures
    
    Approved by jimmy over IM

commit a0805d44c32bcea8219c90588d3d1e9e9992349e
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Jun 13 16:39:09 2017 +0530

    Bug#22914463 SET BINLOG_CHECKSUM CRASHES WHEN EXECUTED INSIDE
        TRANSACTION
    
        Analysis: SET binlog_checksum causes the binlog to rotate.
        Also on a binlog enabled server, gtids are stored in the gtid_executed table when
        binary log is getting rotated.  global_update function for binlog_checksum
        system variable acquire LOCK_LOG before starting the variable update
        procedure and now if the statement is allowed inside transaction and if transaction
        contains the statements of the session's ongoing transaction, that needs to be binlogged.
        So this invokes binlog group commit. This function tries to acquire LOCK_LOG again.
        This function is not meant to be invoked this way. The stack trace show that the thread
        tries to acquire a mutex that it already holds.
    
        Fix:  Disabling binlog_checksum update inside a transaction.

commit 5af8e240052cf3094e6c072168b4f2558619ba4e
Merge: 1d75f4e 3ea11b1
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 16:22:38 2017 +0530

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

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 1d75f4ec4bbebde1ecd7d26d069b135f0dd86fe2
Merge: 823a4fe ffe2f87
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 15:50:22 2017 +0530

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

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 823a4fe133ea9cde1095bf2330047c79c497d7ea
Merge: 60a372b de56eb9
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jun 13 14:58:43 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Merge tag 'clone-5.7.19-build' into mysql-5.7-cluster-7.5
    
     Removed AWS plugin from default list to fix Debian 7 build
    
     Deb packaging: Workaround for keyring_aws build failure
    
     Post Merge Fix updating result files of ndb_dist_priv and
     ndb_rpl_dist_priv test)

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 60a372b18d29cbde7fb7156d73a248324dab9da0
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Jun 13 09:53:28 2017 +0200

    Raise version number after tagging 7.6.3

commit 70aa1ff98295f97eb8da1a6b18a98f69eb4fcfcd
Author: Aditya A <aditya.a@oracle.com>
Date:   Mon Jun 12 23:08:20 2017 +0530

    Bug #25942592	INNODB: FAILING ASSERTION: INDEX->PAGE != 0XFFFFFFFF IN BTR0CUR.CC LINE 816
    
    PROBLEM
    -------
    
    ha_innopart::records_in_range() checks only the first partition to see if it is discarded
    or not before calling the btr_estimate_n_rows_in_range() . Apart from first partiion if
    any other partition is discarded then the server will assert because root page of index
    will be NULL for discarded partition.
    
    FIX
    ---
    Extend the check for each read partition .
    
    [rb 16481 approved by Jimmy ]

commit 8771db30c6b3cf9a29eaaec1c66f631dac6a4832
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon Jun 12 17:49:09 2017 +0530

    Bug#24679056:MULTI-THREADED SLAVE LEAKS WORKER THREADS IN CASE OF THREAD CREATE FAILURE
    
    Post-push fix:
    Fixed the valgrind and asan failure.

commit f7c21ca5aa40c331d2e562a15735fae3c071c635
Merge: 2ef1a5d 88fcfa5
Author: Aditya A <aditya.a@oracle.com>
Date:   Mon Jun 12 17:18:11 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 88fcfa5eb662de56e84d50098a2663e06f457462
Author: Aditya A <aditya.a@oracle.com>
Date:   Mon Jun 12 17:07:50 2017 +0530

    Bug #25909540   UNINSTALL PLUGIN DAEMON_MEMCACHED MAKE MYSQLD CRASHED
    
    ANALYSIS
    
    innodb_conn_clean() doesn't check if conn_data->thd is NULL before
    attaching it to the thread.
    
    FIX
    
    Check if conn_data->thd is present before attaching.
    
    [rb 16426 Approved by jimmy ]

commit 2ef1a5d1b626e1f5ae6a35c69f8a221f95a266f4
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>

commit 0622d39a0812199f0d6bbf8b45a54f6e754cf42c
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Fri Jun 9 12:11:18 2017 +0530

    Bug#26161674: GR_SINGLE_PRIMARY_ASYNC_AFTER_GR_PRIMARY IS SPORADICALLY FAILING ON PB2
    
    - Fixed sync issue in GR_SINGLE_PRIMARY_ASYNC_AFTER_GR_PRIMARY testcase.

commit f65534d21339523139e8a4a1f4715badd5f3d6e5
Merge: dbee02e d4b222d
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Fri Jun 9 12:53:42 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit d4b222d53d56b79426d4f847e9c5929fab9647b6
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Fri Jun 9 12:50:35 2017 +0530

    Bug#24679056:MULTI-THREADED SLAVE LEAKS WORKER THREADS IN CASE OF THREAD CREATE FAILURE
    
    Problem:
    If one adds SHOW PROCESSLIST to the end of rpl.rpl_mts_debug.test, it will show
    an orphaned SQL worker thread that is there regardless that the slave is
    stopped. It is a thread created by mts_worker_thread_fails failure injection
    point testcase, which tries to set up MTS with two worker threads and
    simulates a pthread_create failure for one of them.
    
    Analysis:
    The root cause is that the variable slave_parallel_workers will not be
    incremented in case of failure in slave_start_single_worker
    (caused here by "mts_worker_thread_fails" injection). This will end up
    causing an early exist in slave_stop_worker
    
    void slave_stop_workers(Relay_log_info rli, bool mts_inited)
    {
      int i;
      THD thd= rli->info_thd; if (!mts_inited)
        return;
      else if (rli->slave_parallel_workers == 0)
        goto end;
    
    Fix:
    Incremenet the variable slave_parallel_worker for every successful call to
    the method slave_start_single_worker(). In this way the early exist will be
    avoided when there are worker threads present which needed to be stopped.

commit dbee02efb087576853341f7fcd1caaafe60d6590
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Wed Jun 7 08:26:03 2017 -0700

    WL#10322 Post-fix
    A restart was added to sys_vars.innodb_undo_logs_basic.test so it also needed
    to have not_embedded.inc.

commit 562eaa23e4670b38ff4650861abc4bca4e3eca6d
Author: Horst Hunger <horst.hunger@oracle.com>
Date:   Wed Jun 7 14:57:35 2017 +0200

    Bug#26042764 Post push fix: Update of the result files of the PAM tests running under Hudson.

commit 60cf68a6762a97d30d7d7d221cfbdcc95a92bd8d
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue Jun 6 15:42:41 2017 +0100

    BUG#25786490 XA TRANSACTIONS ARE 'UNSAFE' FOR RPL USING SBR
    
    Post push fix re-recording some related test cases results.

commit 1039252ee9cba7a775808087705651b616cbd491
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Tue Jun 6 11:41:16 2017 +0200

    BUG#25232042: ASSERT "!CONTAINS_GTID(GTID)", RPL_GTID_OWNED.CC:94 OWNED_GTIDS::ADD_GTID_OWNER [Post-Fix]
    
    Test gr_perfschema_group_member_stats was failing due to two
    rollback error messages being printed on the error log.
    The test is doing a hacky thing:
     1) It stops group_replication_applier on server1;
     2) server2 does join the group;
     3) server1 will not log the View_change_log_event on which server2
        joined, it will just queue it;
     4) Local transactions (T1,T2) on server1 are executed and logged
        to the binary log;
     5) group_replication_applier is resumed;
     6) View_change_log_event it is logged.
    This makes T1 and T2 arrive server2 through two ways, first through
    recovery, then through GCS.
    
    Before the fix of BUG#25232042: ASSERT "!CONTAINS_GTID(GTID)"
    RPL_GTID_OWNED.CC:94 OWNED_GTIDS::ADD_GTID_OWNER, the transactions
    were allowed on both ways and would be skipped by the auto-skip
    feature of GTIDs on the second apply.
    After the fix, certifier rollbacks the second time it sees the same
    GTID, making that transaction to be rollback, which on
    group_replication_applier means discard the transaction (and do not
    queue it on group_replication_applier channel).
    
    On this scenario, the correctness is ensured and we can safely
    suppress the error messages.

commit 1042f0a113cd7b2be1a38092e9f78eaad4025df4
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:09:07 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Corrected the revert.
    
    (cherry picked from commit f637e524bf9b692c3ed46d856e2beac193b42a3e)

commit 88dfda1b4816eca3b28e53dfd2c6b50bbd3c9e26
Merge: f18dd75 065b1bc
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:15:02 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 065b1bc0081360b9aa6425d20fe01ff39f4adb0e
Merge: 757e313 f637e52
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:12:19 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit f637e524bf9b692c3ed46d856e2beac193b42a3e
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:09:07 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Corrected the revert.

commit 4d1a9b9de8589d1ea35e7e247bb82983c42d667b
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 12:04:40 2017 +0200

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

commit 79f13c5f657881eb140526f134b4390358d8acbf
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 2e81c7cb8066a910077615d68eb4cca176043e0b
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 b28034c34388c7db8fbb709ccc0964d61ca271b7
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 702b46ebbcfdfaa620cc3d96426ae2555336dc13
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 11:56:42 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6
    
    (cherry picked from commit 6ddc838acd11da6d43d2b86f2e73f0b7ebf125c2)

commit f3c4fa0dfb74a0c7132e1af51a591085b43e3b05
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:17:30 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Temporary revert of the VS2008 redist check.
    
    (cherry picked from commit 36ec550fe5fa6b2a997cb39d3b9e33988f525c96)

commit dd6ce85bbe59b9c0842e0418131616ccdba1b720
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 15:25:04 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
    
    (cherry picked from commit bf47fb74dcc3e84057314817c56e6f8e05af094c)

commit f18dd75acd58f8d0dfcaea99620886da9f53e16f
Merge: ee89108 757e313
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:29:41 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 757e3132e5679e3d503b9bf828ac7650f52a534b
Merge: 6ddc838 36ec550
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:27:47 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit 36ec550fe5fa6b2a997cb39d3b9e33988f525c96
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:17:30 2017 +0200

    Bug#26171638 MYSQL 5.5.57 - MSI COMMUNITY PACKAGES NOT GETTING INSTALLED
    
    Temporary revert of the VS2008 redist check.

commit ee89108913c36caea12ae4e8c0a7de5a2fa5ced0
Merge: e51ab07 6ddc838
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 12:04:40 2017 +0200

    Merge branch 'mysql-5.6' into mysql-5.7

commit 6ddc838acd11da6d43d2b86f2e73f0b7ebf125c2
Merge: c04822b bf47fb7
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 11:56:42 2017 +0200

    Merge branch 'mysql-5.5' into mysql-5.6

commit e51ab07562e7323023cb5f1319d725161bd7cc0c
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Thu Sep 1 20:58:11 2016 +0400

    WL#8662: Remove "Delphi style" column and table syntax
    
    This patch is for 5.7: add deprecation messages for .<column> and .<table> syntax.

commit 7acb3b979b1ae8f383a4be77f477ee2ca1494bf2
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Tue May 30 17:42:37 2017 +0200

    BUG#26159499 START G.R. CRASHES DUE TO INLINE_MYSQL_MUTEX_LOCK PLUGIN_UTILS.CC:35
    
    When START GROUP REPLICATION fails the applier module kill all pending
    transactions, calling the method unblock_waiting_transactions from
    Blocked_transaction_handler.
    
    Blocked_transaction_handler is instantiated after the start of applier module,
    that can trigger this condition.
    
    The instantiation of Blocled_transaction_handler was moved to be before the
    instantiation of applier module.

commit bf47fb74dcc3e84057314817c56e6f8e05af094c
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 15:25:04 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 70b6d76899732daf96da1f02777e4049dc2a6bca
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)

commit c81115113cfcf8d784a48290b30b24ad19b470e6
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 07:41:27 2017 +0200

    Bug# 26168832: TEST DATABASE DOESNOT EXIST IN MSI PACKAGES
    
    Fixed accidental removal of the initial data base installation.
    
    (cherry picked from commit c04822bd9ab68efbc4ff62fa0df442d88b5c88ee)

commit d8e6a93b0ead34c61aaa12c2c4a41d817c075ba8
Merge: 77d704e c04822b
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

commit c04822bd9ab68efbc4ff62fa0df442d88b5c88ee
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 07:41:27 2017 +0200

    Bug# 26168832: TEST DATABASE DOESNOT EXIST IN MSI PACKAGES
    
    Fixed accidental removal of the initial data base installation.

commit 77d704eb70b556e95970adc3823bcea9591913d4
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Thu Jun 1 10:14:05 2017 +0530

    BUG#25479538 ASSERT:SIZE == SPACE->SIZE DURING BUF_READ_AHEAD_RANDOM
    
    Issue
    =====
    The original issue was that the size of a fil_per_table tablespace was calculated
    incorrectly during truncate in the presence of an fts index. This incorrect calculation
    was fixed as part of BUG#25053705 along with a testcase to reproduce the bug. The
    assert that was added as part of it to reproduce the bug was wrong and resulted in
    this bug.
    
    Fix
    ===
    Although the assert was removed earlier in a seperate commit as it was blocking the
    ntest, this patch replaces the other parts of the code that were added to reproduce
    the bug and replaces it with code that tries to reproduce the bug in a different way.
    
    The new code basically tries to tweak conditions so as to simulate the random read
    where a page that doesn't exist is tried to be read.
    
    RB: 15890
    Reviewed-by: Jimmy Yang <Jimmy.Yang@oracle.com>
    Reviewed-by: Satya Bodapati <satya.bodapati@oracle.com>

commit bd6aa24131505886b06381fcce97d97efa9f6002
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.

commit e620446b261d2068fadbf3b79be9f65de44a06d4
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 d5aae9182fdc0d0f82c387561f99b3a00ec71411
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

commit a8168bf1e8270d44bdc3185e0be9947faa9b5d10
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 30 16:52:16 2017 +0100

    BUG#25786490 XA TRANSACTIONS ARE 'UNSAFE' FOR RPL USING SBR
    
    Post push fix re-recording some related test cases results.

commit 161ddb439b15175f9b3dd51081879893d0bcf444
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 9da34cff69d050ba0c6cd46fa072ba2d1f427a4c
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.

commit b4da19384e684eed9eec2c06d44e1c8339fe8783
Merge: b440be3 36ba15b
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 30 16:11:37 2017 +0300

    Merge branch 'mysql-5.6' into mysql-5.7

commit 36ba15b7e41d01b3c16962f8d9a435642383967b
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 30 15:59:51 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.
    The fix is to escape the USE parameters whenever quotes are used.
    RB# 16316

commit 2cdcfaafff9e45fbeb8e5253ff6d03de4a2c0600
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 0a07424eef304505a9f5dee294efb7f43a67641e
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 b440be3fd79b0635b5759dcdd7851a7fa2970c51
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue May 30 13:20:15 2017 +0530

    Remove authentication ldap plugin from docker rpms

commit 9a5e9f69f188322961c5dae87ae406d641d20547
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 30 08:24:51 2017 +0100

    BUG#25786490 XA TRANSACTIONS ARE 'UNSAFE' FOR RPL USING SBR
    
    Post push fix re-recording some related test cases results.

commit 2985b090034f1be7ed2624c8655e1367b0cff9c6
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 3d2e4b2882a95d28c4cc5b0112cc16f9cc22fb57
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 10819a832cccddf894ba32b6b39f739b16283433
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.

commit defbef08fd86f0fc09f297827d6f8b952aeeace2
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.

commit 55df42e3a3ad7b39c793c66d41fff76dc9910143
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.

commit d471a149554a3d51351b9e7575cdfeb7c4e51b4f
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Sun Apr 23 16:11:19 2017 +0100

    BUG#25786490: XA TRANSACTIONS ARE 'UNSAFE' FOR RPL USING SBR
    
    Problem
    -------
    
    Before WL#6860, a GTID DML transaction represented the full transaction,
    containing the events to change the database content, to prepare the
    transaction on the storage engine and to commit it.
    
    WL#6860 made possible to have DML transaction being prepared with one
    GTID and committed with other.
    
    Having two XA transactions committed in parallel on master may lead to
    have them prepared but not committed on the slave.
    
    If the second transaction being prepared depend on any lock acquired by
    the already prepared transaction, the slave applier will fail reporting
    timeout waiting for the lock to be acquired.
    
    Transactions replicated using RBR should not be affected by this issue
    because they will use READ COMMITTED isolation level on the slave side
    regardless of server isolation level configuration.
    
    Fix
    ---
    
    Make XA transactions unsafe for replication.
    
    When using SBR, a warning will be given for any DML inside a XA
    transaction.
    
    When using mixed mode replication, all DML inside a XA transaction will
    be binary logged using rows events.
    
    Fixed also a small issue with Gtid's may_have_sbr_stmts with debug.

commit c80729814641e8990f2900bffe6e792e2365cccc
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 9c5ae02e3ce451c328cf6d851fa05a2d3410b0c3
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

commit 941067c0006724e9dc450416d5818f627bdc6a3f
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Mon May 29 13:14:36 2017 +0200

    Bug#25473794: GR: PARTITIONED NODE SHOULD GET UPDATED STATUS AND NOT ACCEPT WRITE
    
    Post fix with some missing supressions

commit a13c42af52b9fda3b99295f4fdc5ea59e53e2a82
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Sat May 27 15:54:54 2017 +0530

    Bug#25973525:INCORRECT WARNING IS LOGGED ON"FLUSH LOGS"WHEN BINARY-LOG IS IN USE AND ELD!=0
    
    Problem:
    With current behaviour if expire_logs_days/binlog_expire_log_seconds(on mysql-trunk)
    is set, following warning will be logged whenever the user issues
    "FLUSH LOGS"/"PURGE LOGS BEFORE" and binlog file is in use, though the file is
    not old enough to get purged.
    Eg:
    2017-04-27T09:42:10.202909Z 10 [Warning] file ./master-bin.000001 was not purged
    because it was being readby thread number 12
    
    The warning is incorrect since it gives a notion to the user that system tried
    to purge the log-file even when it was not old enough to get purged.
    
    Analysis:
    The root cause is that we check if a log is being used by other thread firstly
    while purging it.
    
    Fix:
    To fix the problem, we check if a log older than the purge time firstly, then
    check if it is being used by other thread while purging it. This will ensure
    that the above warning is gone.
    
    The changes in test rpl_4threads_deadlock was done because it started failing
    after the changes done in binlog.cc. The reason for failure is explained below.
    
    The sync point 'purge_logs_after_lock_index_before_thread_count' is set in the
    method which checks if the log is in use, after the changes done in binlog.cc
    this check(if the log is in use) will be done after purge_time check. The
    purge_time in test was set as 9999-12-12 which was effectively being converted
    to 0(Bug#26147576) and thus the sync point will never be reached.
    To fix this the purge_time is modified to 2038-01-19(highest permissible value).
    
    Additional changes done in rpl_4threads_deadlock
    - We need to have the FLUSH LOGS command inside the while loop so that we have
      binary logs to flush in second iteration as well, as the PURGE LOGS command
      will purge all but the current binary log file.

commit 201be04295de019092a5b3b3782c006b6374c0fc
Merge: ec0357e 65f1e5a
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon May 29 15:03:36 2017 +0530

    Raise version number after cloning 5.7.19

commit 65f1e5a205ee90eab3dee21524ac9697b3bd005f
Merge: a8c1489 33de929
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon May 29 14:59:03 2017 +0530

    Raise version number after cloning 5.6.37

commit 33de929874c61dfee74225b2234652f904450058
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon May 29 14:52:50 2017 +0530

    Raise version number after cloning 5.5.57

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 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 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 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 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 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 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 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 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 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 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 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 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 9672ff891ce835e89f68bd74d37b4dd815e84cf3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 2 19:56:07 2017 +0530

    wl 5847:  Windows fixed.

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 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 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 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 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 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 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 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 10b631a8ed9ee835da5bcb87afe85515534336a0
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 11:15:12 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (cherry picked from commit b3cb4ea79732a1caab14d046d7642463da068a1d)

commit 4fdc32b88882e1c0268ddc90d4c2fb533f57ae1e
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
    
    (cherry picked from commit 3e02a529abdc4f43040b8e83fa075d8bb2280385)

commit 8abcb22252c72e5447131cce04c8e804fac221e6
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Mon Apr 17 21:37:49 2017 +0300

    wl#7614 sparc-bit.diff
    
    bit(x) fix for sparc
    
    (cherry picked from commit ecae44ecc35ee746b856ef124be39c8afd22bb7d)

commit 929ed638e9e4d5ada80a07d4913fb552b3a1bc38
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Apr 15 13:37:19 2017 +0300

    wl#7614 auto-incr1.diff
    
    handle autoincrement temporary errors
    
    (cherry picked from commit 4ffa72047fcd2663a25b22d28cc66999dc7fec85)

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 638a6f6a1ca9e2e2057bf1100e47724ea57a73bd
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Apr 13 15:57:25 2017 +0300

    wl#7614 worker-state1.diff
    
    fix require() in worker stop
    
    (cherry picked from commit de71dbcb7d289a3cd0e405d0c79a3771bdb7ff28)

commit de5160d441f14d1d5cd2e665a4b775048a522b80
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Apr 12 12:08:33 2017 +0300

    wl#7614 alignment1.diff
    
    avoid alignment crash on sparc
    
    (cherry picked from commit 554bb4157cb4340017044c9866a35c2676cce8c3)

commit 0eaee3e830f14641691981eaa043d2aca8714d7c
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Mon Apr 10 16:50:51 2017 +0300

    wl#7614 un-inited1.diff
    
    un-initialized member + misc
    
    (cherry picked from commit 8606b5e40dac92fc7da43d7f04e3e49b48000861)

commit 8c4314d7c2149f010945de615743941d87dd5a04
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Apr 8 22:52:06 2017 +0300

    wl#7614 csv-delim1.diff
    
    usage error for unknown CSV escape
    
    (cherry picked from commit ac4b9b7341c7eef1cae2b7781f2e02f1210664bf)

commit 6eef25fc4710a9150c2ad3e77f440a28d3063c3f
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Apr 8 22:50:24 2017 +0300

    wl#7614 opts-check1.diff
    
    check --input-type and --output-type
    
    (cherry picked from commit a2350e14f9e61431bdac0eef62d73ffc47da1fdd)

commit a08a4bbe68001711989e25173b656a4ba26ab6d5
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Apr 8 22:45:31 2017 +0300

    wl#7614 char-subscript1.diff
    
    macos(clang): char as array subscript
    
    (cherry picked from commit cbbeb630475297c75df32ba194ccdccebbfb2994)

commit 2ce839987c719d8245a507b398f228315c2752f4
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Sat Apr 8 22:43:29 2017 +0300

    wl#7614 struct-fwd1.diff
    
    macos(clang): mult fwd struct decl
    
    (cherry picked from commit fd72b8880b6eda36efd27b1638de5b327429b97e)

commit 1b99cc3746d2e98c2398efc5dcf0d2433a8ebfc2
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Apr 18 11:19:35 2017 +0200

    BUG#25508233: Fix error in calculation that gets out of hand with file sizes above 4GByte
    
    (cherry picked from commit 53726f1f8d34889b43f65d25fd346f8f3adeff94)

commit cd8f70d0ebe2b8cbcba6e808700518cbf7abd541
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Apr 8 00:49:07 2017 +0200

    Bug#25851801 7.6.2(DMR2):: COMPLETE CLUSTER CRASHED DURING UNIQUE KEY CREATION ...
    
    DynArr256::truncate() now succeeds if there are no pages allocated in array.
    
    The test case with the above fix now brought up another bug there two calls to
    Dbacc::releasePage() is missing when pages was not possible to add to fragments
    page directory due to out of memory when allocating directory page.
    
    This made some checks failed and the dbacc page was leaked.
    
    The missing calls to releasePage() were added.
    
    (cherry picked from commit cec32871ab7158046670ef676413ef42c41f4595)

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 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 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 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 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 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 ec5bb13165f87a35ad50e586faae18086178ea0b
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Apr 6 23:08:12 2017 +0300

    wl#7614 mgm-conn1.diff
    
    missing use of opt_ndb_connectstring

commit bf96a7ba47e17521625c98c30db2615ad1da1998
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Apr 6 19:11:02 2017 +0300

    wl#7614 static-const1.diff
    
    conditional expression created lvalue
    https://gcc.gnu.org/wiki/VerboseDiagnostics#missing_static_const_definition

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 22f5a9e00b3331b4f36f24c5e9b709b4535e56ca
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 18:02:57 2017 +0530

    extra logs.

commit 7a3f2eb31732cdb86ddfb242dfdfdfda7df7f6ef
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 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 a0d2f1bd69ffd3d8989da4dbdd2a034a5de49df7
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 621bc679a2e4b9db39fbf0516468befe1f40fd6a
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
    
    (cherry picked from commit 09b50ab8c41db000561d92809e48755b907c149b)

commit a4ae707fc37091431a5c468d3c226c6ec5ecbc0c
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 3b688f1e9419456a52b9a3ad48bfe005e5ccbb2d
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 200b72d46d414e84d981b08ee8c27992550fed13
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 57103a9e67d411d73acd3b93621f5d4adc5d06c9
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 c349f6732818d0d72c83ae645245e0705708cb27
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 15:38:20 2017 +0530

    final

commit 553430521e6afd1c7b8cfb3543a86e1595dd43a0
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Apr 6 11:01:09 2017 +0300

    wl#7614x
    
    add ndb_import to deb and rpm

commit e8e57910bf7b627ef7e0fc373c84fe94da07f200
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Apr 5 14:38:26 2017 +0200

    Fixed the last copyright year, I hope...

commit 3b7d88cf6729b402eda269bf431bd2dd6e205834
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Apr 5 14:28:35 2017 +0200

    Updated copyright years

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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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
