commit 88d44cf92038947d40b7af4dc27295ccb611d0fc
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.

commit 9fa8a7da37e93e4a7f543032b49557c22f2d4032
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Jun 23 10:15:07 2017 +0530

    Bug#26197113 SLOW DYNAMIC TABLE STATISTICS RETRIVAL FROM I_S AFTER MYSQL-TRUNK-META-SYNC PUSH
    
    Analysis:
    
    If the table is not present in the cache then opening the table
    takes lot of time and it leads to slow performance in information
    schema queries.
    
    Following changes are done to fix the issue,
    
    InnoDB changes:
    
    - Instead of opening the table, InnoDB can fetch the stats
      information from innodb_table_stats and innodb_index_stats.
    
    - Fetch the record from innodb_table_stats using db_name, table name
      and it will give information about n_rows, clustered index_size and
      sum of other index size.
    
    - Fetch the space id from Tablespace SE private data for
      general/system tablespace (or) Fetch the space id using db_name,
      table_name from fil_space_t hash.
    
    - Use the space_id to calculate the available length in the
      tablespace.
    
    - Maximum value of autoincremnt fetched from innodb_dynamic_metadata
      using table id and autoincrement fetched from table_se_private data.
    
    - Cardinality can be fetched from innodb_index_stats table using
      db_name, table name, index name and column offset.
    
    - If the table doesn't have persistent stats then InnoDB loads
    the table from the disk.
    
    Server changes:
    
    - Supply mysql.tablespaces.se_private_data to internal functions
      INTERNAL_*(), which is used by SE to read the SE specific tablespace
      metadata when fetching table dynamic statistics. E.g., InnoDB would
      read the SE specific space_id from se_private_data column.
    
    - INFORMATION_SCHEMA.TABLES system view is now joined with
      mysql.tablespaces, to get the mysql.tablespaces.se_private_data for a
      table.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    Reviewed-by: Bin Su <bin.x.su@oracle.com>
    Reviewed-by: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
    RB: 16467

commit 32b7a4f5b89e607fd889f35c90214319b17688a8
Author: Dag Wanvik <dag.wanvik@oracle.com>
Date:   Fri Jun 16 10:12:25 2017 +0200

    WL#9727 Flag unsupported window functions
    
    [ reviewed by Chaithra ]

commit 7cd1b9a64b1aa16090b4183928ed01eb57e25e88
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Jun 22 12:33:38 2017 +0200

    Bug#26310935: MOVE AWS KMS CREDENTIALS TO DIFFERENT DIRECTORY

commit 53fbc2007eff2888ea0e765f76045b106ade7060
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed Jun 21 12:31:59 2017 +0200

    Bug#26279805 WRONG COPYRIGHT HEADERS IN COMPONENTS/ FILES
    
    Fix zip number in FSF address. Also fix some additional cases of wrong
    FSF address.
    
    Approved by Terje Rosten <terje.rosten@oracle.com>

commit 32515f2f28cc378df3de2bcb0b62ed4a5bf303f1
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri Jun 9 09:10:45 2017 +0200

    Minor cleanup after DMR cutoff

commit 751a5c98c156b7e6f629b2c72094d4daba24be42
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Tue Jun 6 12:07:31 2017 +0200

    Fix broken merge of Docker RPM spec file change:
       some plugins disappeared from list to remove before packaging.

commit be1ac65b0b1dcb4603511db15ece72633b4fce1e
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Jun 6 06:02:55 2017 +0200

    Revert "WL#9209: InnoDB: Clone local replica"

commit ab7bb93a1f8a077974387905fabc8aa76fdd877d
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Mon Jun 5 23:18:18 2017 +0530

      WL#9236, WL#9603 and WL#9727 - Add SQL window functions to MySQL
    
      Post-push change to:
      - Fix failures of the test rpl_window_functions with gtid on
      - Stabilize the tests main.window_functions and main.nth_explain
        by adding ANALYZE TABLE

commit 32479aeeb8c20423a6aa84490735a7839d2ebeb1
Author: Debarun Banerjee <debarun.banerjee@oracle.com>
Date:   Mon Jun 5 18:04:58 2017 +0530

    WL#9209: InnoDB: Clone local replica
    ====================================
    Create a server plugin that can be used to retrieve a snapshot
    of the running system. Here we would support syntax to take a
    physical Snapshot of the database and store it in same
    machine/node where the database server is running.
    
    We should be able to start mysqld server on the cloned directory
    and access data. The clone operation should work with concurrent
    DMLs on the database.
    
    INSTALL PLUGIN clone SONAME 'mysql_clone.so';
    CLONE LOCAL DATA DIRECTORY [=] 'data_dir';
    UNINSTALL plugin clone;
    
    Review: rb#15068
    
    WL#9212: InnoDB: Monitor Clone status
    =====================================
    Support metadata view in performance schema to monitor progress
    of an ongoing clone operation. A clone operation might take time
    to clone the entire database. Administrator can view the current
    status and percentage of clone operation completed by querying
    this view in local and remote server.
    
    EVENT_NAME = "statement/sql/clone"
    EVENT_NAME = "stage/sql/clone (file copy)"
    EVENT_NAME = "stage/sql/clone (page copy)"
    EVENT_NAME = "stage/sql/clone (redo copy)"
    
    Review: rb#14160
    
    Merged from mysql-trunk-wl8953 [656f4f02]

commit 227d4b7a1d0144790b624c68affce8a797801361
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Jun 5 10:09:29 2017 +0200

    WL#9236, WL#9603 and WL#9727 - Add SQL window functions to MySQL
    
    Temporary workaround to make main.window_functions_big pass in QC tests.

commit 74db6cee521a05f7f6fe58986abf27ed90f01cc2
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Sun Jun 4 15:16:50 2017 +0200

    WL#10297: Change InnoDB tests to run with new default charset
    
    Fix one remaining InnoDB test.
    
    Approved by Deepa Dixit <deepa.dixit@oracle.com> over e-mail.

commit 62239098ee1e6d31c36eb7515dafb1662b598ebc
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Mon Jun 5 08:58:42 2017 +0200

    WL#924 : Follow up patch to fix failure in  main.mysqld--help-win
    
    Approved by Prabeen Kumar Pradhan <prabeen.pradhan@oracle.com>

commit c0dbcd7cd9d7e79685284145a2b3f095914fbf00
Merge: 75b033c 88dfda1
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Jun 5 08:16:00 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 75b033ceb7e9bd73499204c4971f38692796915c
Author: Christopher Powers <chris.powers@oracle.com>
Date:   Sun Jun 4 13:18:26 2017 -0500

    WL#8881 Performance Schema, Resource Control - No PFS build break

commit c040bc63501c43b5167eeba8ef887c6e8129d506
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Sun Jun 4 09:24:32 2017 +0200

    WL#9236, WL#9603 and WL#9727 - Add SQL window functions to MySQL
    
    Follow-up fixes:
    
    Remove trailing whitespace in result file for main.window_functions_bug
    
    Disable QC runs for main.nth, main.window_functions and sys_vars.windowing_use_high_precision.

commit b1746ded22bec022bfb3bbb8c0cbde2705c262d6
Author: Mayank Prasad <mayank.prasad@oracle.com>
Date:   Sat Jun 3 15:02:26 2017 +0530

      -- Post push fix for WL#8879 for UBSAN failure.

commit 420419991fb5b5b2997c0d848c70ad80036b1441
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Sat Jun 3 14:33:19 2017 +0200

    WL#924 Mandatory roles
    This worklog introduces two new server configuration variables:
    - mandatory-roles
      Specify a comma separated list of roles which are always granted
      to any authenticated user.
    - activate-all-roles-on-login
      If true, all granted roles are automatically made active after
      authentication.

commit 7a6fa76220780e32ba2c1034c336537d45d9ae85
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Sat Jun 3 06:50:29 2017 +0200

    Bug#24511108 LOAD DATA LOCAL ON BY DEFAULT
    
    Fix i_main.costmodel_planchange

commit 3d81565ba6d09fb450e0340a4d721927f035d498
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Fri Jun 2 17:41:40 2017 +0200

    WL#10570: Provide logical diffs for partial update of JSON values
    
    This commit makes some JSON functions (JSON_SET, JSON_REPLACE and
    JSON_REMOVE) generate logical diffs when they are used in UPDATE
    statements and the target column of the update is also the input to
    the JSON function.
    
    These logical diffs can be used in row-based replication to reduce the
    amount of binlog produced when updating JSON columns. Instead of
    writing the whole new JSON document to the binlog, it could write the
    diffs that describe only what has changed in the document. Row-based
    replication does not yet take advantage of it.

commit 9f53170a74b6fbca0a413f9c4aec422611f75fd3
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Fri Jun 2 10:15:26 2017 -0700

    WL#9507: Make innodb_undo_tablespaces variable dynamic
    WL#10498: InnoDB: Change Default for innodb_undo_tablespaces from 0 to 2
    WL#10499: InnoDB: Change Default for innodb_undo_log_truncate from OFF to ON
    
    * Introduce innodb_undo_tablespace_update() and
    srv_undo_tablespaces_update() for online updates.
    * Introduce innodb_rollback_segments_update() for online updates.
    * Introduce srv_undo_tablespaces_uprade() to convert 5.7 undo
    tablespaces to 8.0.1.
    * Introduce srv_undo_tablespaces_downgrade() in case the upgrade from
      5.7 fails.
    * Introduce trx_rseg_adjust_rollback_segments() and
    trx_rseg_add_rollback_segments() to consolidate the creation and use of
    rollback segments in any tablespace.
    * Introduce a new file format for undo tablespaces including a reserved
    range for undo space IDs and an RSEG_ARRAY page.
    * Rename auto-generated undo tablespace names from undonnn to undo-nnn
    * Expand the undo namespace to support new undo file format.
    * Various changes to allow online creation of undo spaces and rollback
    segments.
    * Change round robin routine for supplying rsegs to transactions to
    support rseg arrays in each tablespace.
    * Handle conversions between undo space_id and undo space number.
    * Introduce undo_settings.test
    * Adjust and improve a lot of testcases.
    
    Approved in RB#14864 by Deb

commit 973df4495b8bbe9e0a15f61daaabc241d76a3de0
Author: Dag Wanvik <dag.wanvik@oracle.com>
Date:   Fri Jun 2 22:14:29 2017 +0200

    WL#9236, WL#9603 and WL#9727 - Add SQL window functions to MySQL

commit c67add5abbefd8f7b69660b4fdcb8c508329b920
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Fri Jun 2 14:34:41 2017 +0100

    BUG#26180903 - GCS/GROUP REPLICATION CRASHES WHILE STARTING UP XCOM
    
    Description:
    -----------
    GCS JET tests crash after updating the recent GCS libs generated by the
    mysql-trunk
    
    Analysis:
    ----------
    When replying in the local socket within acceptor_learner_task, XCom
    calls a "blocking" operation that will withdraw scope from the current
    task.
    
    That can cause the local msg_link object to disappear and when the task
    regains execution, it is not here anymore.
    
    Solution:
    ----------
    Serialize the request before sending it to the network, thus discarding the
    need for maintaining the msg_link object alive.

commit ebec0463dbbb9a137ea24e2766d05c793ad7f33f
Merge: cd9f82d f18dd75
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 19:30:49 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 cd9f82d82b5fe8b996002a4c4af56d12955bacce
Author: Mayank Prasad <mayank.prasad@oracle.com>
Date:   Fri Jun 2 22:13:19 2017 +0530

      Post push fix
      plugin declaration for:
    	- i_s_ndb_transid_mysql_connection_map_plugin
    	- ndbinfo_plugin

commit 85bcb4f88c41877f94bf7920b74ee8936dd970fb
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:38 2017 +0200

    WL#8685: [47/47] Disable geographic computations
    
    Disable geographic computations until geographic R-tree support is in
    place. Otherwise, queries may return different results depending on
    whether an index is used.
    
    Add unit tests to provide code coverage for geographic functions while
    MTR tests for the same are forced to use Cartesian computations.
    
    Change-Id: I2d93d4554fd6ae74c45e6fc72071641d4d773a8b

commit a64ec279e4d1b5d2ceb0b55f35c6cc4b80b787c9
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:34 2017 +0200

    WL#8685: [46/47] MBRCovers
    
    Add a new implementation of function MBRCovers that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Ie23913dde1635327dbceedf6af36b5df76a993db

commit c581ebcab3b0ca4f12e939e9aaffe2dbeaa6891a
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:30 2017 +0200

    WL#8685: [45/47] MBRCoveredBy
    
    Add a new implementation of function MBRCoveredBy that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Ifb885cf52eb8d6216043e789e8173bb34a4adb39

commit b67f1218b1a88d57c50604fc7b72329a44b3a401
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:27 2017 +0200

    WL#8685: [44/47] gis::mbr_covered_by
    
    Add function gis::mbr_covered_by.
    
    Change-Id: Ic62857dacf998ad572a689ca73725d18b7f89f54

commit 9315ef9900772aa1e3cff281cbd8a0889da2ce9f
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:24 2017 +0200

    WL#8685: [43/47] MBRTouches
    
    Add a new implementation of function MBRTouches that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I6ca0d1a709376430541e8e6a4a9b6155e189e458

commit baf668e6d5f34c7d68b7a59a0d42bbcaea12dd61
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:21 2017 +0200

    WL#8685: [42/47] gis::mbr_touches
    
    Add function gis::mbr_touches.
    
    Change-Id: Ifdd6b43003a8a8bd494385efbe3a5753f434ea5b

commit e919a35085b0b2a13bcc8e19681a1fcdffcb71a4
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:17 2017 +0200

    WL#8685: [41/47] MBRContains
    
    Add a new implementation of function MBRContains that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I43ff1c299030d5b69acf45dfaa2d59e6aed27132

commit 469d94d6b862efd608c59e9209a80d0ac7a2cff1
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:14 2017 +0200

    WL#8685: [40/47] MBRWithin
    
    Add a new implementation of function MBRWithin that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I6a56d778203504e042ad32ec9ed0603ef2071868

commit e16b1c0103ca67d5d993fc80aa057bdc9305f221
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:10 2017 +0200

    WL#8685: [39/47] gis::mbr_within
    
    Add function gis::mbr_within.
    
    Change-Id: If130e20a32c6f515cd9697c056d1b24b554bd5ab

commit 56b53aa83e70aaea416b277c6f02d8f357f6012e
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:07 2017 +0200

    WL#8685: [38/47] MBROverlaps
    
    Add a new implementation of function MBROverlaps that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Id78a31e6351bd8c4e2c98426e6d7acf8e618fb3d

commit 5682fea3821e737f921711d3d4b0839f820b8dc0
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:04 2017 +0200

    WL#8685: [37/47] gis::mbr_overlaps
    
    Add function gis::mbr_overlaps.
    
    Change-Id: I5e4d51926e47e293637c7af29d047c854626507a

commit 03777bbd38285068140b5dcfff6dd302f334721c
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:30:00 2017 +0200

    WL#8685: [36/47] MBREquals
    
    Add a new implementation of function MBREquals that supports both
    Cartesian and geographic geometries.
    
    Change-Id: If1ce42c3dfe552cc52802d305c25765ea2550059

commit ed808230b4516beb3de9deef9fb2507af7df3156
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:56 2017 +0200

    WL#8685: [35/47] gis::mbr_equals
    
    Add function gis::mbr_equals.
    
    Change-Id: Ib3564a5de0381626f79501492d02669629a37dac

commit 714766862a1c29ea9e6e699288a20c8da0e2896e
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:52 2017 +0200

    WL#8685: [34/47] MBRIntersects
    
    Add a new implementation of function MBRIntersects that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I18fcfd1601f863de0da20b9fdc7584285e46153e

commit 86cef6383bd46d4fbb3593544b0ed684728e5683
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:48 2017 +0200

    WL#8685: [33/47] gis::mbr_intersects
    
    Add function gis::mbr_intersects.
    
    Change-Id: I769f4df2eb98b5f983cc9b88d373262fbb6e744d

commit 95dde668d456673bf41c165e6009ad160a88ea6f
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:43 2017 +0200

    WL#8685: [32/47] MBRDisjoint
    
    Add a new implementation of function MBRDisjoint that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Iadaa19c5ee2f7c8dcf877dea20d111e9c5e261c2

commit 88142b12ec3b3865db4eb669a2cf341c7427f844
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:39 2017 +0200

    WL#8685: [31/47] gis::mbr_disjoint
    
    Add function gis::mbr_disjoint.
    
    Change-Id: Ie65510ff80deb844bb7c5dc7fe06ed7a7d8f0ede

commit b7160830d88eb309a5bb35b91caf87d39192ab48
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:35 2017 +0200

    WL#8685: [30/47] MBR utility functions
    
    Add utility functions for operations on minimum bounding rectangles.
    
    Change-Id: I77fc7be1320565c5e813a9ad0f18f4eb8e575f9f

commit f82c9efa7278ac6dde0f37f6d4501b70d1f1596b
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:32 2017 +0200

    WL#8685: [29/47] Box type
    
    Add a Box type representing bounding boxes and coordinate system
    specific subtypes with Boost.Geometry type traits.
    
    Change-Id: Id724aa78e4418f9509a21f4f9175b3655ceaa743

commit 8cbd5b858c19e72b9472d2652e816444dfaeabd1
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:29 2017 +0200

    WL#8685: [28/47] ST_Touches
    
    Add a new implementation of function ST_Touches that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I4968d0cbb7e347bab5b0fe7e8b4e14ee0cb10b40

commit b80a6a73ce3f0bfc7ce42f75289fa8aee39c1c71
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:26 2017 +0200

    WL#8685: [27/47] ST_Crosses
    
    Add a new implementation of function ST_Crosses that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I785aeeaa5dac6360996c002a3edc0a926e0eb395

commit 84d9b732f22eaf3d7ff673f093e5ff3f6ff4eb51
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:22 2017 +0200

    WL#8685: [26/47] ST_Contains
    
    Add a new implementation of function ST_Contains that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I2f56ae3ac2afe1f8eb6340e8696eecd92fba5c9f

commit afa621bd2098a14af9f461bab5e4273ecff5cb63
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:19 2017 +0200

    WL#8685: [25/47] ST_Within
    
    Add a new implementation of function ST_Within that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Ie26b02e56c5bf1af418cd9ed33fd42fafc2d09b4

commit 8b4d743089c02038b4d403cd2ef761eacd49ae82
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:15 2017 +0200

    WL#8685: [24/47] ST_Overlaps
    
    Add a new implementation of function ST_Overlaps that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Icd996ec35ce5f32925b63bd09b75cc1abe38efa1

commit 8f15a468e635b9ac74eeb6f9b1d474925f8ffdb3
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:12 2017 +0200

    WL#8685: [23/47] ST_Equals
    
    Add a new implementation of function ST_Equals that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I2e1cde15aaaa23d601d27ac6cff354fcc3f58899

commit 455a850f067c6ebd6539a59b756c4f42a2329b97
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:09 2017 +0200

    WL#8685: [22/47] ST_Intersects
    
    Add a new implementation of function ST_Intersects that supports both
    Cartesian and geographic geometries.
    
    Change-Id: I615df08e38bbd2f3b58e0d79e4a2c4eef3be16e3

commit 68d2fe6451934363194baa1912d3424da24d5d80
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:05 2017 +0200

    WL#8685: [21/47] ST_Disjoint
    
    Add a new implementation of function ST_Disjoint that supports both
    Cartesian and geographic geometries.
    
    Change-Id: Ia4d8117a420d46618451973d6acf863aef1e5bea

commit 1f08754940df6c6ff18911b1ab33bae8696bb49b
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:29:01 2017 +0200

    WL#8685: [20/47] gis::touches
    
    Add functor gis::Touches and function gis::touches.
    
    Change-Id: I91e72ef658e31691ba8f43a0aa02aae8127b15e7

commit d9174d41f285694758c5f2d82412c3a88b07d7b0
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:58 2017 +0200

    WL#8685: [19/47] gis::crosses
    
    Add functor gis::Crosses and function gis::crosses.
    
    Change-Id: I8bf1595cf0e3eba22f2c4fd7af8365c5aa45f57a

commit 4dc594d6648f976d3a93f7c95d0298a682e96ebe
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:50 2017 +0200

    WL#8685: [18/47] gis::within
    
    Add functor gis::Within and function gis::within.
    
    Change-Id: I1119cdc4d8b9d01ce767c066a146a509ab40c2dd

commit 08422804f8065e0c402a82db189c7bd6dc2628f9
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:46 2017 +0200

    WL#8685: [17/47] gis::overlaps
    
    Add functor gis::Overlaps and function gis::overlaps.
    
    Change-Id: Ie1d3def5399629974c8930882ea2c85b3ddf9e3a

commit a9aff6be387715407cbd8d09f28c40740b1568fc
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:43 2017 +0200

    WL#8685: [16/47] gis::equals
    
    Add functor gis::Equals and function gis::equals.
    
    Change-Id: I67d048afcf9d966f387cfc9d364b4ab5a36124bf

commit 962639c3b70fd664e75f6d2097fc4a9b29fc5860
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:40 2017 +0200

    WL#8685: [15/47] Geometry collection utility functions
    
    Add utility functions to split a geometry collection into multipoint,
    multilinestring and multipolygon, and to compute the union of each
    collection class.
    
    Change-Id: If585a1682dcd483ccad3ef193c73ef183c4038a4

commit 23654ec9a68d31fb9f32b6be488ebb6006ea3dfc
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:36 2017 +0200

    WL#8685: [14/47] gis::Union
    
    Add functor gis::Union with support for a limited set of parameter type
    combinations.
    
    Change-Id: I8683b62e33a29d8d6130fb54b6d62ca489ffaf32

commit ae1dd61d5b72001a6a016c9a658363d960422d4d
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:33 2017 +0200

    WL#8685: [13/47] gis::Difference
    
    Add functor gis::Difference with support for a limited set of parameter
    type combinations.
    
    Change-Id: I27e7293dceffefb22ede0bec7ad360bb5fc2ca0d

commit cde825fe2a91d9110d18469fa5f4c00d29842c3c
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:29 2017 +0200

    WL#8685: [12/47] gis::intersects
    
    Add functor gis::Intersects and function gis::intersects.
    
    Change-Id: I29cdeadb6edaef11823f80c2021e5a68c3e8a031

commit 58a218317139c274bffa1b9ada8ff30d0ef7cf74
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:25 2017 +0200

    WL#8685: [11/47] gis::disjoint
    
    Add functor gis::Disjoint and function gis::disjoint.
    
    Change-Id: Iaf6019f7605a986ba3ec04f7e710901e547c4f62

commit b6a222336e5ea19c9526ec4fb991781aefc886c6
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:19 2017 +0200

    WL#8685: [10/47] Refactor gis::Functor
    
    Refactor gis::Functor to suport any return type by throwing an exception
    when encountering an unkonwn geometry type. Also make all operations
    const.
    
    Change-Id: I299bb1929e5dd48c9145d492f9fcaee1827de036

commit daaff20e46cb02b6f169c8435f70bae51df84f77
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:16 2017 +0200

    WL#8685: [09/47] Geographic Ring_flip_visitor
    
    Add support for detecting and flipping geographic polygon rings.
    
    Change-Id: I9de86dcb50a4e275aab49abd100f385c7e04d279

commit 82efe9a87b2cefa6883fcaada3491c69d6ac07bf
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:12 2017 +0200

    WL#8685: [08/47] Coordinate system specific subscript operator
    
    Make the return value of operator[] on geometries coordinate system
    specific. This is a Boost.Geometry requirement.
    
    Change-Id: Ia08874c86d8bad5d39bcc41ffae98f56044a7f40

commit c0f3643b17c6fa0e947d45b51a410ce130c129db
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:08 2017 +0200

    WL#8685: [07/47] Point less than operator
    
    Add gis::Point::operator<, required to put gis::Point in std::set.
    
    Change-Id: I33d853e4be9247b6d83ec7802fa0ae843ab3f4b5

commit f9f05e2f6a91662f47db1d6bca44f7b80496c733
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:04 2017 +0200

    WL#8685: [06/47] Geometry interface for set functions
    
    Add the necessary interface to geometry classes to support limited union
    and difference operations.
    
    Change-Id: Ib405318c78bc6bbf9f8021cdec9a6ed57b083f3f

commit 32939983e6ada9397baf3af83f68114fba5c2f18
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:28:00 2017 +0200

    WL#8685: [05/47] Geometry collections subscript operator
    
    Add const and non-const variants of gis::Geometrycollection::operator[].
    
    Change-Id: I90ec487353f7fd4cfc1cddffddb0cd3025b26109

commit 418ba790c1cddf5e1f417500805d73f5a657f171
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:27:55 2017 +0200

    WL#8685: [04/47] Workaround for bug #26161793
    
    Bug #26161793 ST_TOUCHES, CONDITIONAL JUMP OR MOVE DEPENDS ON
    UNINITIALISED VALUE(S)
    
    Quick workaround while waiting for an upstream bug fix.
    
    Assign a value to has_interior.
    
    Change-Id: Ibbaf58da45c24c597d5d942428f1fb5041a036b4

commit 0367c3f83fb380d3817ada0e8cb1cb2483d79e51
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:27:50 2017 +0200

    WL#8685: [03/47] Workaround for bug #26114214
    
    Bug #26114214 ASSERTION `INDEX < INFO.COUNT' FAILED
    
    Quick workaround while waiting for an upstream bug fix.
    
    Replace the assertion with a throw.
    
    Change-Id: Id4180a4c3936d6071e12b01681194d6c18e2845e

commit cfd89e6dda21a25c653604030448ca5f5038eb59
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:27:46 2017 +0200

    WL#8685: [02/47] Workaround for bugs #25999920 and #25999938
    
    Bug #25999920 ASSERTION `LHS.DENOMINATOR() != 0' FAILED
    Bug #25999938 ASSERTION `LHS.DENOMINATOR() != 0' FAILED
    
    Quick workaround while waiting for an upstream bug fix.
    
    Replace the assertions with throws.
    
    Change-Id: I0a6f613c16bd2780fd823a6e2482b0305a9d2369

commit e90733422ab58edf78f971cc18b1afafa1d983fd
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Fri Jun 2 12:27:38 2017 +0200

    WL#8685: [01/47] Workaround for bugs #25999901 and #26000074
    
    Bug #25999901 ASSERTION `! OP1.FRACTION.IS_ZERO() && !
    OP1.FRACTION.IS_ONE()' FAILED
    Bug #26000074 ASSERTION `! OP2.FRACTION.IS_ZERO() && !
    OP2.FRACTION.IS_ONE()' FAILED
    
    Quick workaround while waiting for an upstream bug fix.
    
    Replace the assertions with throws.
    
    Change-Id: I85a8f4c5c7d233a8c52142709cb5f386646168ec

commit 7ff91b8d09377ad580d25b5bdb01389be7014b4e
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Fri May 12 13:34:39 2017 +0200

    Bug#25914845 FUNNY GRANT/REVOKE SYNTAX CRASHES IN APPLY_PRIVILEGES
    
    Empty or missing privilege identifiers which looked like
    authorization identifiers could crash the server when used in a
    GRANT or REVOKE statement.
    
    The issue stemmed from a typo in custom parser code which enabled
    dynamic privileges.

commit ea0da99fbc049848557456e9b99b77101c0d5909
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri Jun 2 16:48:49 2017 +0200

    Bug#24511108 LOAD DATA LOCAL ON BY DEFAULT
    
    Fix binlog.binlog_start_comment
    
    Approved by Amit Bhattacharya <amit.bhattacharya@oracle.com> over IM.

commit eb58c72f5beeeb045134c81263b36a024f3fd2a8
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue Mar 7 12:05:46 2017 +0000

    WL#10406: Improve usability when receiver thread is waiting
              for disk space
    
    Step 1
    ======
    
    This patch replaced the requirement to access Master_info format
    description event from Master_info->data_lock to relay_log->LOCK_log.
    
    It also changed the locking order at queue_event() to
    relay-log->LOCK_log, Master_info->data_lock.
    
    It made the SQL thread not rely on the relay log LOCK_log to be
    stopped anymore.
    
    Step 2
    ======
    
    Truncating the relay log in correct event boundaries
    ----------------------------------------------------
    
    This patch introduced the MYSQL_BIN_LOG::truncate_relaylog_file(). This
    function is called after errors writing events to the relay log, passing
    the relay log end pos (the end of the last known successfully written
    event) to minimize the possibility of the applier thread to read a
    partial (bad) event.
    
    Displaying "Waiting for disk space" on status
    ---------------------------------------------
    
    This patch introduced enter_stage_hook to make my_write() able to set
    the current thread stage as "Waiting for disk space" before calling
    wait_for_free_space() function and restoring the previous thread stage
    after the function call.
    
    This will make any thread waiting for disk space on my_write() to report
    this information not only in error logs but also in thread status
    interfaces (performance schema tables, SHOW SLAVE STATUS, etc.).
    
    WL related bug fixes
    ====================
    
    BUG#26111422 ASSERTION `IS_OPEN()' FAILED AT
                 MYSQL_BIN_LOG::TRUNCATE_RELAYLOG_FILE
    
    Problem
    -------
    
    The replica server is trying to truncate a closed relay log file when an
    unrecoverable error occurred while rotating the relay log.
    
    Analysis
    --------
    
    In the case of an unrecoverable error when rotating the relay log, the
    server will take the configured BINLOG_ERROR_ACTION.
    
    When BINLOG_ERROR_ACTION=ABORT_SERVER, the server will be shutdown.
    
    When BINLOG_ERROR_ACTION=IGNORE_ERROR, the server will close the relay
    log. The only way of recovering the closed relay log is to restart the
    whole server.
    
    The code at truncate_relaylog_file() is asserting that the relay log was
    opened when called to prevent trying to truncate a closed relay log.
    
    Fix
    ---
    
    Because of the possibility of calling the function after an error
    rotating the relay log, the truncate_relaylog_file() function should
    not assert that the relay log is open and also should take no action
    when the relay log was closed.
    
    BUG#26161405 EXECUTING STOP SLAVE WHEN IO_THREAD IS "WAITING FOR DISK
                 SPACE" CAUSES PROBLEMS
    
    Problems
    -------
    
    STOP SLAVE [IO_THREAD] will set mi->abort_slave flag and will wait until
    the I/O thread to be stopped.
    
    When the I/O thread is waiting for disk space, the mi->abort_slave
    signal will not be checked by the I/O thread until finishing queuing the
    current event. So, "STOP SLAVE" will be blocked (until STOP SLAVE
    timeout with an error).
    
    Also, any thread waiting for disk space at "my_write" (thread that used
    the MY_WAIT_IF_FULL flag) could report itself as "Waiting for disk
    space".
    
    Shutting down the server while having an I/O thread waiting for disk
    space would hang the server without accepting new connections until disk
    space be freed.
    
    Fixes
    -----
    
    STOP SLAVE [IO_THREAD] throws a warning message into the server error
    log recommending either to free some disk space or to use 'KILL' to
    abort I/O thread operation.
    
    Only the relay log related operations will change the thread status to
    "Waiting for disk space". A new flag was used to signal the my_write
    function to change the thread status.
    
    Shutting down the server while having an I/O thread waiting for disk
    space will make the I/O thread to be killed, truncating the current
    relay log file if possible.
    
    Fixed a doxygen issue at MYSQL_BIN_LOG::truncate_relaylog_file().
    
    Fixed an issue in "performance_schema.threads" that was not showing
    "Waiting for disk space" at PROCESSLIST_STATE field.

commit 16b61008e86c47b76112e14d556f99ebfe833d36
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Fri Jun 2 18:52:29 2017 +0530

    Bug#26142776 : DIFFERENT MYSQL SCHEMA AFTER UPGRADE
    
    Post push fix:
    
    - Create mysql.ndb_binlog_index in mysql tablespace while creating
      new data directory.
    - With the change in default_storage_engine in mysql_system_tables.sql,
      sql commands now use InnoDB instead of MyISAM engine by default. If
      CREATE TABLE statement is executed without ENGINE clause via --init-file
      option, it results in table creation with InnoDB instead of MyISAM
      engine. Record i_rpl.rpl_bootstrap_gtid.test.

commit d844580f2b657544e93ede5a1c3f3822e46b3de4
Author: Mayank Prasad <mayank.prasad@oracle.com>
Date:   Fri Jun 2 18:44:39 2017 +0530

      Post push fix.
      Plugin declaration for ndbcluster.

commit 6c9cce7fb51172501c1f469fe3e9ca8339610e7b
Author: Vitor Oliveira <vitor.s.p.oliveira@oracle.com>
Date:   Fri Jun 2 14:34:49 2017 +0200

    WL#9838 Group Replication: Flow-control fine tuning
    
    Before this worklog GR's flow-control mechanism depended on heuristics
    that left little control to the user, other then enabling/disabling it
    and setting the queue thresholds. WL#9838 allows the user to have more
    control over flow-control settings, with new options to control:
    
        The minimum flow-control quota that can be assigned to a member,
        it is no longer restricted to being 5% of the lowest flow-control
        thresholds.
    
        The minimum recovering flow-control quota: different from the
        minimum flow-control quota in that it applies only to members
        entering the group, so that the members entering the group don't
        excessively affect throughput.
    
        The maximum cluster commit quota: in order to keep the group
        operating within a safe throughput range (to improve on predictable
        behaviour and balance between members).
    
        The proportion of the quota that is assigned to each member: it not
        longer needs to be divided equaly by the writer members, to support
        scenarios where one member is supposed to write more then others.
    
        The flow-control period: allows flow-control to run less often than
        once per second when the commit rate is very low and not enough
        transactions are executed per second to give the heuristics enough
        data to work properly.
    
        The percentage of the quota reserved for catch-up when flow-control
        is released: the constants in the code, 10% and 50% of the quota
        respectively, can now be tuned to properly reduce variations that
        are presently seem in the throughput when the system is close to
        exhausting its free capacity.
    
    In addition, participation in flow-control becomes optional, so that
    some members can be ignored by other members if they require so. This
    allows members to remain in the group while performing maintenance
    tasks, at the cost of having the garbage collection in GR become less
    effective as members stop applying transactions that are being sent to
    the group.

commit 67dcbdc4556ff781fb12e97dd78c4ee73e99f8d4
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Thu Jun 1 23:31:57 2017 +0100

    WL#10632 - Update XCom in GR(Post-fix)
    
    Memory leak that passed PB2 pre-push tests.

commit 14f0258d0d53c47768c22317865a923cbdbbb852
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Fri Jun 2 08:09:04 2017 +0200

    Bug#24786075 FIND A WAY TO LIST #SQL... TABLE LEFT IN DATA DICTIONARY IN CASE ALTER FAILS.
    
    This patch adds a new keyword EXTENDED to SHOW TABLES syntax
    enabling users to list hidden tables that are created by ALTER
    TABLE command. In rare situations ALTER TABLE command might fail
    by leaving metadata of '#sql' temporary tables in DD table.
    
    The patch does following changes,
    
    - Change syntax of SHOW TABLES to add EXTENDED command.
      The new syntax would look like,
    
      SHOW [EXTENDED] [FULL] TABLES ....
    
    - Introduces new native function IS_VISIBLE_DD_OBJECT(). Which
      skips hidden tables, columns, indexes and index elements by
      default.  And show them if EXTENDED keyword is provided in SHOW
      command.
    
    - Change CAN_ACCESS_TABLE()/CAN_ACCESS_COLUMN() native function
      to avoid handling hidden DD object checks. Move the
      responsibility to IS_VISIBLE_DD_OBJECT() native function.
    
    - Enable DROP TABLE command to drop temporary tables left by
      ALTER TABLE.
    
    - Add new test case to verify SHOW EXTENDED and the possibility
      of DROP TABLE to clean left-over temporary tables by ALTER TABLE.

commit 8db29355bed350b46ebb649e1662c152fe237f1b
Author: Elżbieta Babij <elzbieta.babij@oracle.com>
Date:   Tue May 23 15:53:38 2017 +0200

    Bug #26043363 - CRASH INNMEM::TABLE::INSERT AT INNMEM/SRC/TABLE.CC:85
    
    Ftruncate isn't reserving disk space for file with only 0s inside, so following writes to mmaped pages are allocating new disk pages and on out of space the SIGBUS is being thrown.
    Function my_chsize uses ftruncate, we want to use posix_fallocate, hence implementation of my_fallocator based on my_chsize.
    
    RB#16345
    Reviewed by Sunny Bains and Thayumanavar X Sachithanantha

commit 580554e18283d229d0a7a64945a3614be90ea25e
Author: Mayank Prasad <mayank.prasad@oracle.com>
Date:   Fri Jun 2 16:33:11 2017 +0530

      WL#8879 : PERFORMANCE_SCHEMA, TABLE PLUGIN

commit 57581e4a27e1a985f06f52ea495f5c1523bdb09c
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Fri Jun 2 12:46:22 2017 +0200

    WL#8879 PERFORMANCE_SCHEMA, TABLE PLUGIN
    
    This patch implements following two API's which are required by
    WL#8879.
    
      dd::create_native_table(THD*, Plugin_table*);
      dd::drop_native_table(THD*, Plugin_table*);
    
    These APIs would be invoked by the new table plugin server added
    by WL#8879. The API's just updates the DD tables and do not make
    calls to performance_schema engine. The patch does,
    
    - The PS tables are created during plugin initialization.
    
    - The PS tables are dropped during plugin deinitialization.
    
    - INSTALL and UNINSTALL implementation is modified to do atomic
      updates. I.e., if the command fails, the plugin PS table metadata
      are rollback.
    
    - Makes INSTALL/UNINSTALL COMPONENT commands to enable component
      initialization phase to invoke dd::create_native_table() and
      dd::drop_native_table() APIs.
    
    - Change Plugin_table to store schema name.
    
    - Change Plugin_table_definition_impl to return current schema name.
    
    - When a PS table is created, the API create_native_table() changed
      the autocommit mode to off, without checking if there is already
      a transaction started. Due to this, the InnoDB table operations
      are first done in autocommit ON mode and then in autocommit OFF.
      This causes InnoDB to rollback some operations and hence leaves
      DD in in-consistent state. The result is that the server startup
      fails.
    
      The fix is to move commit the transaction at the end of component
      /plugin initialization phase during server startup. The server
      shutdown does not remove PS table metadata from DD, so the server
      shutdown component/plugin deinitialization code does not need to
      commit the transaction.
    
    - If a server is crashed, and restarted without a given plugin,
      the meta data will still be present, there is not side effect.

commit a3ceb326aae2baad175e45b379101c8949e91df7
Author: Dhruthi K V <dhruthi.k.v@oracle.com>
Date:   Fri Jun 2 16:16:45 2017 +0530

    WL#10477 Defaults: Enable Transaction Write Sets
    
    post push fix.

commit 0bfc446cdcb8f5cf1e2349d2653003b068c385c3
Merge: a19d010 ee89108
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Fri Jun 2 12:06:38 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 a19d010cf421488c5cd896dbf4308af21100a5b7
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Thu Jun 1 11:36:29 2017 +0200

    WL#10441: Post-push fix.
    
    Ensure --secure-file-priv="" is set also for test cases which do not
    use $DEFARGS. Harden embedded perl code so that detects errors
    earlier. Rewind file handles and dump the whole log when expected
    errors are not found.
    
    Patch approved by Terje Røsten

commit fc2a117ad196092d813750dff6d94f993c87c0a4
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Fri Jun 2 10:18:09 2017 +0200

    WL#8943 Extend ANALYZE TABLE with histogram support
    
    Post-push fix: Make histograms_debug stable across
    32-bit and 64-bit platforms.
    
    Change-Id: Ie0649b052b135a0d2bdd0f6f0b3b1c3492b4d873

commit 12a0e966c70e5bca00393e988398dbb1bad1ff49
Author: Christopher Powers <chris.powers@oracle.com>
Date:   Thu Jun 1 23:54:56 2017 -0500

    WL#8881 Performance Schema, Resource Control - ASAN fixes v2, Doxygen docs

commit c0053452d88f3a874307d038aa765ab0d87d8198
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Fri Jun 2 11:03:17 2017 +0530

    Bug#26093967: AVOID SETTING GROUP_REPLICATION_FORCE_MEMBERS IN A PARTITION THAT HOLDS MAJORITY
    
    Moving group_replication.gr_force_peer_addresses_3_to_2 from the experimental list
    to the disabled list because it is failing consistently.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com> via IM

commit 87fb9ca71f40ec5296bd3a8aefc23a661be31369
Author: Catalin Besleaga <catalin.besleaga@oracle.com>
Date:   Thu May 11 14:00:59 2017 +0200

    Bug#26042934: Unchecked read after allocated buffer
    
    Problem:
    There is no check for packet length before reading the byte that
    specifies if there are new data types provided.
    
    Solution:
    Added checks for the length of the packet_left before reading the byte.
    Also added an assert and a check for the packet length left while
    reading each ps parameter.
    
    Change-Id: I059c7eb31cd5005f4bc8aee3048fdcc2221ff381

commit 8522db2f7c7e74e15c961041ddaad516b0fe0661
Merge: 537f1a1 e51ab07
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Fri Jun 2 01:57:06 2017 +0400

    Null-merge from 5.7.

commit 537f1a1b7dd4ec07ed86abf66671fb93bdd8af91
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Thu Sep 1 21:01:19 2016 +0400

    WL#8662: Remove "Delphi style" column and table syntax
    
    This patch is for trunk: it finaly removes the .<table> syntax.

commit 774ccc9f17bfe69e1334bda7f9bb0681d83f438e
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Thu Jun 1 19:07:05 2017 +0530

    Bug#26142776 : DIFFERENT MYSQL SCHEMA AFTER UPGRADE
    
    In mysql-8.0, new installation of data directory will
    create all system tables with InnoDB storage engine in mysql
    tablespace. This change was implemented in scope of WL#9532.
    But for system tables created in mysql-5.7 and in-place upgraded,
    the system tables still have separate tablespaces for each table.
    
    Fix adds ALTER statement to scripts/mysql_system_tables_fix.sql
    to move InnoDB system tables to mysql tablespace when mysql_upgrade
    is executed. Privilege tables will not be altered if they were in
    NDB to begin with.
    
    Changed mysql_system_tables_fix.sql to temporarily alter privilege
    tables to InnoDB instead of MyISAM (default engine for the table)
    if they are in NDB. Changed default_storage_engine to InnoDB for
    mysql_system_tables.sql and mysql_system_tables_fix.sql scripts.
    Removed 'TABLESPACE=mysql' clause from scripts/mysql_sys_schema.sql
    for sys.sys_config so the table is now created in a file-per-table
    tablespace.

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 085089193da5cb610d4ba7ade360ead2687d8b89
Author: Christopher Powers <chris.powers@oracle.com>
Date:   Thu Jun 1 15:14:04 2017 -0500

    WL#8881 Performance Schema, Resource Control - ASAN fix

commit b7b70621112ce96d55097692e6c59dde70534183
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Thu Jun 1 23:37:57 2017 +0400

    WL#8657 - post push fix

commit 27d72280ad20d398be63b480cd73dafe6498e484
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Thu Jun 1 19:16:40 2017 +0400

    WL#8657: True bottom-up server parser: refactoring of the ALTER TABLE statement
    
    Also fixes the bug 25717617 "WRONG SYNTAX ERROR LINE NUMBERS WHEN SQL_MODE HAS THE IGNORE_SPACE FLAG"

commit 71ba071566d26053caf139b451b3658fb6eca775
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu Jun 1 18:00:05 2017 +0200

    BUG#24511108 LOAD DATA LOCAL ON BY DEFAULT
    
    Enable local-infile on test gr_force_member_expel.

commit 46c3feb2fa07f52005335d1b3915a3d24ae89c75
Merge: 0c2a9df 7acb3b9
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Thu Jun 1 17:38:18 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 0c2a9dff5b8b9b604072e2ba6a4063f2dba652c4
Author: Xing Zhang <xing.z.zhang@oracle.com>
Date:   Thu Jun 1 23:32:00 2017 +0800

    WL #10818: Add utf8mb4 accent sensitive and case insensitive collation
    
    Added accent sensitive and case insensitive collation, utf8mb4_0900_as_ci.
    The implementation is simple and straightforward because all the logic of
    multi-level collation is ready when we added accent and case sensitive
    collations.
    
    The benchmark result of this collation is slower than accent and case
    insensitive collation but faster than accent and case sensitive collation,
    just as expected.
    
    BM_MixedUTF8MB4             161 ns/iter     0.77 GB/sec
    BM_MixedUTF8MB4_AS_CI       336 ns/iter   377.31 MB/sec
    BM_MixedUTF8MB4_AS_CS       486 ns/iter   261.13 MB/sec
    
    Change-Id: I1e44b7008c7746ee111dd8738d22591c7a36eec4

commit b4511f4225a335d839d98837c8b0717eedd715d7
Author: Libing Song <libing.song@oracle.com>
Date:   Mon May 8 18:33:38 2017 +0800

    WL#9219 Remove cross compatibility code for binlog V1-V3
    
    Binlog versions smaller than 4 had been deprecated before MySQL-5.0.
    The compatibility code was removed in this patch.
    
    Start_event_v3 and Start_log_event_v3 are removed from the code.
    Some of the code in Start_event_v3 and Start_log_event_v3 were moved
    into Format_description_event and Format_description_log_event.
    
    While START_EVENT_V3 type is not removed, it is just a placeholder now.
    Server and mysqlbinlog will not recognize START_EVENT_V3 after this patch.

commit 9201ec5b496e5cbf33b37934cba29547ee7c565c
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Thu Jun 1 19:26:26 2017 +0530

    WL#10380: Group Replication: Monitoring improvements
    
    Description:
    This worklog goal is to improve Group Replication by introducing additional
    columns in existing performance schema.
    
    Schema after code changes:
    
    For table - performance_schema.replication_group_member_stats
    New suggested columns:
    Field          Type     Null Key  Default Description
    MEMBER_ROLE    char(64) NO        NULL    Member role in a group; can be any of
    the PRIMARY or SECONDARY
    MEMBER_VERSION char(64) NO        NULL    The MySQL version of the member.
    NOTE: Columns will be added in same sequence as listed above.
    
    For table - performance_schema.replication_group_member_stats
    New suggested columns:
    Field                                      Type                Null  Key
    Default  Description
    COUNT_TRANSACTIONS_REMOTE_IN_APPLIER_QUEUE bigint(20) unsigned NO         NULL
    Transactions waiting apply, received from group.
    COUNT_TRANSACTIONS_REMOTE_APPLIED          bigint(20) unsigned NO         NULL
    Transactions applied, received from group.
    COUNT_TRANSACTIONS_LOCAL_PROPOSED          bigint(20) unsigned No         NULL
    Number of local transaction requested by member to Group Replication Plugin for
    commit.
    COUNT_TRANSACTIONS_LOCAL_ROLLBACK          bigint(20) unsigned No         NULL
    Number of transaction originated from local member but rolledback at GROUP level
    NOTE: Columns will be added in same sequence as listed above.

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 f74305178ee24d86b8a91dee73cdef8781e38f55
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri May 19 16:12:58 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP [patch 5, noclose]
    
    Migrate the audit_log plugin's HASH instances to std::unordered_map.
    
    Change-Id: I40637f479b5704a7ab92cdae970fe427945af48b

commit 8ea622ae85886929393601cc3d4f0585a4807465
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Jun 1 15:20:17 2017 +0200

    Bug#24511108 LOAD DATA LOCAL ON BY DEFAULT
    
    Add more --local-infile=true
    
    Approved by Kristofer Pettersson <kristofer.pettersson@oracle.com> over IM.

commit 18ab808c162161a2ba238fe92645fb2309eca19b
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Thu Jun 1 14:15:03 2017 +0200

    Bug#26085712 SERVER FAILS TO START AFTER SET PERSIST
                 GTID_MODE = ON_PERMISSIVE OR ON
    Problem: If gtid_mode is persisted with value ON_PERMISSIVE then server
             fails to start.
    
    Analysis: Default value for gtid_mode is OFF, and when this variable is
              persisted with value ON_PERMISSIVE, server when updating the
              value for this variable does check if it is a one step change
              or not. Since it is not a one step change(from OFF -> ON_PERMISSIVE)
              server reports a error 1788. However this error is abstracted and
              actual error reported is [ERROR] Failed to set persisted options.
    
    Fix: Fix is to skip this check when gtid_mode variable value is updated during
         server startup.

commit 7c08b1032ce34314439248c635a70c8b0bd29d3a
Merge: 89cd1d3 70b6d76
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Jun 1 13:48:08 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

commit 89cd1d30520e42e0e14227fb9d52781c05375109
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Jun 1 13:10:36 2017 +0200

    WL#8881 Performance Schema, Resource Control
    
    Follow-up fix to perfschema.service_pfs_notification

commit ab2d9753e33154211d6bfcc0c3d52df274710321
Author: Georgi Kodinov <georgi.kodinov@oracle.com>
Date:   Thu Jun 1 14:02:30 2017 +0300

    Addendump to bug #24511108: add more --local-infile to tests that need it.

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 c6e2e930ca019ab59b482ebe438f18ab8bb322c2
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Fri Mar 17 12:49:54 2017 +0100

    WL#8943 Extend ANALYZE TABLE with histogram support
    
    This worklog extends ANALYZE TABLE with histogram support. This
    allows user to create, update and remove histogram statistics with
    the following two syntaxes:
    
      ANALYZE TABLE tbl_name UPDATE HISTOGRAM ON column [, column] WITH n BUCKETS;
      ANALYZE TABLE tbl_name DROP HISTOGRAM ON column [, column];
    
    mysql.column_stats is converted into a pure dictionary table. This will
    allow us to use existing data dictionary machinery to insert, update
    and remove histogram data. It will also give us caching mechanism which
    we need in future work.
    
    In order to inspect the histogram data, we have added a new view named
    information_schema.COLUMN_STATISTICS. Also, mysqlpump and mysqldump is
    extended such that ANALYZE TABLE-statements are dumped in order to
    re-create histogram statistics.
    
    Change-Id: Ibaff7248698984672d3456063d28af7dcd5a4f82

commit 7ba83602310cf549ea7f9b746b3c0d3fcb4d966f
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu Jun 1 11:49:21 2017 +0200

    BUG#25976199: GROUP_REPLICATION.GR_FOREIGN_CHECKS_DISABLED TEST FAILING ON PB2
    
    Remove group_replication.gr_foreign_checks_disabled from unstable
    tests.

commit 694113a8e38539de42d799cae615ba55564d90e4
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Thu Jun 1 06:57:22 2017 +0200

    WL#9787: Allow SET PERSIST to set read-only variables too
    
    Post push fix. Fixed issues reported by valgrind.

commit 780b0d8415a59bc7b2bdf1b4a014ba9a6642615e
Author: Georgi Kodinov <georgi.kodinov@oracle.com>
Date:   Fri May 19 15:48:29 2017 +0300

    Bug #24511108 LOAD DATA LOCAL ON BY DEFAULT
    
    Changed the default for the server option to off
    Changed the default of the client option to off
    Updated the test files.
    Added a C ALI test.

commit 4cf89a9572f96e1f7bc574e8d96412aac9c72bb6
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 30 12:08:12 2017 +0200

    Bug#26147274 ASSERTION `ITEM->MAYBE_NULL' AT MAKE_SORTKEY_FROM_ITEM IN SQL/FILESORT.CC
    
    Problem:
    filesort gets an unexpected NULL value during execution (maybe_null == false)
    
    This is caused by disabling datetime checks during insert, then re-enabling
    them during select ... order by. Item_func_min_max::get_date() calls
    check_date which does *was_cut= MYSQL_TIME_WARN_ZERO_IN_DATE; return TRUE;
    
    Change-Id: Ib3b2b0f0d61c2429347c1a30279acfc49b0479d4
    Fix: use error_int() to return correct status in Item::val_date_temporal()

commit 27f27a687751d527f348ac22f202d442d23f5037
Merge: 7420107 d8e6a93
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Thu Jun 1 08:14:28 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 74201076c19d4c95053f6e973d09bd2419ccc158
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Thu Jun 1 08:55:06 2017 +0300

    Follow-up to fix for bug#26106655 "DISCREPANCY BETWEEN IMPLICIT DB OF PARENT TABLE FOR FK AND REFERENCES PRIVILEGE".
    
    Fixed Doxygen error introduced during merge to mysql-trunk.

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 397ba469755b0c64b38418d0464b6b5e5be4d36d
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Thu Jun 1 10:49:22 2017 +0530

    Bug#24658707 ASSERT: BUF0BUF.CC:2469:BUF_BLOCK_GET_STATE(BLOCK)
    == BUF_BLOCK_FILE_PAGE
    
    Issue
    =====
    The issue is that during commit_inplace_alter_table we wake up the purge
    thread and we take a btr search latch and try to disable the adaptive hash
    search system and empty the index. The purge operation happening in the
    background, when flushing the pages, tries to remove possible adaptive hash
    index on the page and it sets the the block state as BUF_BLOCK_REMOVE_HASH
    and waits on the btr search latch taken by the alter command. And in the
    alter command when we're trying to empty the hash index of the same block
    we hit the assertion ut_ad(buf_block_get_state(block) ==
    BUF_BLOCK_FILE_PAGE) as the block state was changed by the purge operation.
    Both the threads would be working on the same block at the time of
    assertion.
    
    Fix
    ===
    The fix has already been pushed to trunk as part of meta-sync branch.
    Readding the assert which was removed earlier to silence the pb2 failures
    which was because of this bug.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>

commit c561820698de4ef3a686ace78c2e25cf10fcf1d9
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Jun 1 07:05:44 2017 +0200

    Revert "BUG#24679166: TABLE CREATION WITH BINARY TYPE COLUMN IS RESULTING"
    
    Revert since it caused PB2 breakage.

commit 7c9b6722a3ac6b9f3c74ddcd38d420a8cc18d8d8
Merge: 417ac82 77d704e
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Thu Jun 1 10:15:35 2017 +0530

    Null merge from 'mysql-5.7' branch.

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 417ac824e15a14277bd183ddc2967864d9346d11
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Wed May 31 23:11:24 2017 +0530

    BUG#25976199 GROUP_REPLICATION.GR_FOREIGN_CHECKS_DISABLED TEST FAILING
    ON PB2
    
    Issue
    =====
    The issue is that when there is already a table with FK defined without
    parent table (by disabling FOREIGN_KEY_CHECKS), and when we create
    the parent table, the referenced_index_name for the child table is not
    set as the parent table does not know that there is a FK relationship on
    it. This results in the bug.
    
    Fix
    ===
    The fix is to get rid of foreign_key list empty check and call
    row_table_add_foreign_constraints() for every create table instance.
    This call takes care of the above issue as it loads the foreign key
    constraint for the table and checks for child table.
    
    RB: 16423
    Reviewed-by: Jimmy Yang <Jimmy.Yang@oracle.com>

commit 8235f8d73a9d200af4c98aba6f811c03a61586fd
Author: Christopher Powers <chris.powers@oracle.com>
Date:   Thu Jun 1 04:38:42 2017 +0200

    WL#8881 Performance Schema, Resource Control

commit 3411eaef35f4c8261fe3ccbe1536de3b9650bff7
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Wed May 31 16:18:03 2017 +0530

    BUG#24679166: TABLE CREATION WITH BINARY TYPE COLUMN IS RESULTING
                  IN ASSERT CONDITION FAILURE.
    
    Analysis
    ========
    CREATE TABLE query with a VARBINARY/BINARY column having a
    default value in hex format causes the server to exit in
    debug build. In a non-debug build, an error is reported(failed
    to updated data dictionary).
    
    During the query parsing phase, the default value in hex format
    is converted to the hex string. Converting hex string value to the
    "system_charset_info" fails (as the hex string byte value could be
    out of supported range of values). Hence during the store of this
    value in DD(Columns::FIELD_DEFAULT_VALUE_UTF8),
    Field_blob::store_internal() returns 'TYPE_WARN_INVALID_STRING'
    triggering the assert which checks for the return value.
    
    Fix:
    ===
    While preparing the default value string for storing in the DD, the
    value in hex string format is converted to the printable hex
    encoded string. At this stage, the supplied format (string, hex or
    binary format) while creating table is lost. Hence regardless of
    the format specified for BINARY/VARBINARY column's default value,
    string in HEX format is saved in the DD tables. So I_s queries and
    SHOW COLUMNS will now display default value for BINARY/VARBINARY
    type of columns in the HEX format.

commit f2b8ac2ec67abb5ec15bdc3403b023c33914e7df
Merge: fe166ee bd6aa24
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Thu Jun 1 01:32:44 2017 +0300

    Merge branch 'mysql-5.7' into mysql-trunk

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 fe166ee3d5747edac0345f84de367996d57dfe59
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Wed May 31 15:40:27 2017 +0200

    WL#10441: Post-push fix.
    
    Need to call unireg_abort() rather than exit to terminate launcher
    process, so that proper cleanup is done. Allow unireg_abort() and
    cleanup code to work silently when used to terminate the launcher
    after the daemon has started successfully.
    
    Change memory_class_array into a std::atomic to avoid TSAN warnings.
    
    Change the path used in main.basedir as an illegal --log-error value
    to a non-existing directory under the MTR tmp dir
    
    Remove reporting of unexpected warnings in main.basedir as this
    depends on the environment
    
    Remove not_valgrind.inc from main.mysqld_daemon as it is no longer
    required.

commit e6832072fa5a10c26501ae4f51dabd18bbee0d75
Merge: 0b0f1f7 d5aae91
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed May 31 19:28:18 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 0b0f1f78ba548ba5a332adf87f9e30aa40c88337
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Wed May 31 15:39:29 2017 +0200

    BUG#25959028: REPLACE MY_ATOMIC WITH C++11 STD::ATOMIC
    
    Fix a incorrect replace on pipeline_stats.cc, it should had been
      -  my_atomic_add32(&m_transactions_waiting_apply, -1);
      +  --m_transactions_waiting_apply;
    but it was
      -  my_atomic_add32(&m_transactions_waiting_apply, -1);
      +  ++m_transactions_waiting_apply;
    on revision 9b7e4f838361587623258455002541eb21fd004b

commit 35d90d931048d49a18a6fc05ce61d1beb567fe44
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed May 31 13:00:50 2017 +0200

    Bug#26166852 TSAN: DATA RACE IN CLEANUP_INSTRUMENTS
    
    Additional patch, fix compile errors and data race in unit test.
    
    sql_base.cc:3152
    mdl_ticket may be used uninitialized in this function
    
    several places:
    row.st_row_connect_status::thread_id may be used uninitialized in this function
    
    unittest/gunit/test_utils.cc
    TSAN reported data race for static variable 'expected_error'
    
    Change-Id: I20ff3d281ae1614858f28dfad107f58ff9268bde

commit 45bf6ad6a8ddcb360088353fd21d03d583273e98
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 30 14:30:29 2017 +0200

    Bug#26166852 TSAN: DATA RACE IN CLEANUP_INSTRUMENTS
    
    TSAN reports cleanup/shutdown of performance schema.
    
    Fix: use std::atomic<pointer> rather than raw pointer for
    global_instr_class_memory_array
    
    Change-Id: I2d0ec2633a35ab8813018c5c7dd8ee4e09c34cd5

commit ac7c8d62b616d953da641aaeb1e284878c265d73
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Wed May 31 14:40:05 2017 +0530

    Punch hole support not available bug.
    
    Issue
    -----
    Currently, some tests that require punch hole support to run are not
    being run in some systems even though the punch hole support is
    available for them.
    
    The way we check if punch hole support is available or not is by running
    a piece of c code which defines a macro without checking if it's defined
    already or not. This missing check results in the compiler cribbing about
    redefinition which the test misinterprets it as punch hole support not
    available.
    
    Fix
    ---
    Add the #ifndef check to check for redefinition of the macro.
    
    Reviewed-by: Jimmy Yang

commit d24210dd07b139637f35d6683d192bb490cc6abd
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Wed May 31 11:16:57 2017 +0530

    WL#10297: Change InnoDB tests to run with new default charset
    
    Description:
    ============
    WL#7554 changed the default character set from latin1 to utf8mb4.
    Some tests were rewritten to use latin1 temporarily, so now
    they have been changed to use utf8mb4.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    Reviewed-by: Sunny Bains <sunny.bains@oracle.com>
    RB: 16234

commit 124316f92cc5105bfa8113968119b33fc3db2a70
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Fri Mar 31 15:32:36 2017 +0100

    WL#10632 - Update XCom in GR
    --------------------------------
    
    Since MySQL-GCS development has migrated to mysql main trees, XCom has been
    adapted to also live in the server repository according to server rules of:
    - Formatting;
    - Types;
    - Removal of external references.
    
    The version that brings all those adaptations and that respects the rules defined
    in a separate repository.
    
    The goal of this WL is to bring that XCom code to the latest version of Group
    Replication.

commit 1e7919e13d83090b1c0eb9b0f22da583f33f1e34
Author: Marcin Babij <marcin.babij@oracle.com>
Date:   Tue May 30 18:22:02 2017 +0200

    Added doxygen documentation section ta address most common problem while developing new server services.

commit 3572405e4538693980c01f47c5c18d6ec3dcf99b
Merge: 81d99ba a8168bf
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 30 16:54:11 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 81d99bacb30985c32a0317968b8d06ca7767f614
Merge: 60647da 9da34cf
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue May 30 16:13:53 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 60647da58fe6309b93f51bf8621a16f6e0e6fe10
Merge: 04827cc b4da193
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 30 16:13:54 2017 +0300

    Merge branch 'mysql-5.7' into mysql-trunk

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 04827ccaedbcac0ca401befd56cec67c164d5c16
Author: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
Date:   Mon Apr 24 10:32:42 2017 +0200

    WL#10612: X Protocol IN Operator for JSON
    
    New CONTAINS and NOT_CONTAINS operators to be introduced in any
    expression valid in CRUD operations. They are different from the
    IN operator, in that IN works with SQL and requires a set of literals
    at the right side.
    
    Approved-by: Vinay Fisrekar <vinay.fisrekar@oracle.com>

commit 5911b1412f352cc27491c026282e96e79be31f22
Author: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
Date:   Thu Apr 27 19:19:13 2017 +0200

    WL#9807: X Protocol Crud.Insert with upsert
    
    The UPSERT command is a very useful operation that allows performing
    an insert or update, depending on whether the record already exists or
    not, in a single step, atomically.
    MySQL supports the ON DUPLICATE KEY UPDATE extension to INSERT,
    which has this behaviour, and should be used for implementation.
    
    Approved-by: Vinay Fisrekar <vinay.fisrekar@oracle.com>

commit fe96f19e0a3b686a82400d0b90c0a3742d1143b6
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue May 30 16:32:53 2017 +0530

    Bug#25404058 BINLOG_ROW_IMAGE, BINLOG_ROWS_QUERY_LOG_EVENTS CAN BE SET BY
    NON-SUPER.
    
    Problem: binlog_row_image, binlog_rows_query_log_event affect the format
             that we write to the binary log and can be set without any special
             privileges.
    
    Fix: Added privilege restrictions to these variable execution
         so that only users with super or SYSTEM_VARIABLES_ADMIN privileges,
         are be able to change these variables.

commit 14ee9a2f5da366dd9f70ea77f7eef1bb2fa8163a
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Tue May 30 11:46:44 2017 +0200

    WL#10441: Post-push fix.
    
    Correct pid and skip output for successful daemonize. Add
    --secure-file-priv="" to avoid failure when running with rpms.

commit 5181eb9c88c67a2485e9bc338698296ca130d048
Merge: db3c477 b440be3
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue May 30 15:31:30 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 db3c477660a55c7757f43eceae745578956fd9b6
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 30 10:45:52 2017 +0100

    BUG#25786490 XA TRANSACTIONS ARE 'UNSAFE' FOR RPL USING SBR
    
    Post push fix to revert an unwanted change.

commit 8abb318ea1e6d853bcbddb39174a7ccd8ccb371e
Merge: 019eeb8 9a5e9f6
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 30 10:26:04 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 019eeb81aee93ccaadec25ac6b366bd113fd3fad
Author: Horst Hunger <horst.hunger@oracle.com>
Date:   Tue May 30 10:08:07 2017 +0200

    WL#8020 post push fix: Fixed failure in Fedora packaging.

commit 4047aa0e196b332e3f828c136ae90407b7071b53
Merge: 57caf27 10819a8
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 30 10:31:46 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 57caf272de3404a695eeb5576c5616251008ba40
Merge: 4fedbbd defbef0
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue May 30 09:51:55 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 4fedbbd54ac38e0bf840532355982d56671e047e
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Tue May 16 12:58:54 2017 +0200

    WL#10441: Add mysqld_safe-functionality to server
    
    - Find the the absolute path of the executable and make argv[0] point to it
    
    - Deduce mysql_home (aka basedir) from the executable path
    
    - Let mysqld::runtime::mysqld_daemonize() return (rather than call
      exit directly) on the parent side, and call
      flush_error_log_messages() to get all messages from the daemonize
      process properly formatted. Move the call to mysqld_daemonize() to a
      point where paths have been resolved agains CWD so that a daemon
      process treats relative paths in the same way as a regular server.
    
    - Print the name of the chosen error log file before opening and redirecting
      stderr so that users can see where the daemon will try to log messages.
    
    - Fix a bug in open_error_log() which assumed the log file could be used if stat
      showed it to be writable for user (that will be true even if it is not owned
      by the current uid). When calling my_freopen() on such a file the stderr
      FILE pointer becomes invalid, and this causing messages to be lost.
    
    - New mtr test main.basedir.

commit f74e747fcbc9a5ba4e0631219c08a97ea4b16005
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Tue May 30 06:48:57 2017 +0200

    WL#9787: Allow SET PERSIST to set read-only variables too
    
    Currently only global dynamic variables can be persisted to mysqld-auto.cnf.
    This WL introduces a new sytax to persist read only variables too. The new
    PERSIST_ONLY token in SET statament lets global variable name and its
    corresponding value to be stored in a mysqld-auto.cnf file with an exception
    of not changing the current global value. To persist read only variables user
    should have PERSIST_RO_VARIABLES_ADMIN dynamic privilege granted in addition
    to SYSTEM_VARIABLES_ADMIN privilege.

commit 253e470cd94ce166ad4b438d0a19ddda923c9b12
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Mon May 29 16:14:58 2017 +0200

    WL#9831: Ranges in JSON path expressions
    
    The JSON path syntax is extended with support for array ranges. Ranges
    can be specified in the path with [X to Y] path legs. For example:
    
    - $[0 to 2] matches the first three elements in the array (element
      index 0 to element index 2, inclusive).
    
    The path syntax now also allows indexing relative to the end of the
    array, using the "last" keyword. For example:
    
    - $[last] matches the last element in the array
    
    - $[last-1] matches the second to last element in the array
    
    - $[last-2 to last] matches the last three elements in the array
    
    - $[1 to last] matches all elements in the array, except the first one
    
    Change-Id: I0f00a25fcc5765c3b1326a4ce759dbf3af84e74d

commit 1b98ce29f20882ef95b0caf7c83a02017858f2e5
Merge: 836e28b 55df42e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 30 12:06:07 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 836e28bc1d960b64422497b728fe826e0d94b30d
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Tue May 30 11:25:36 2017 +0530

    WL#10300: Change Optimizer tests to run with new default charset
    
    Description:
    ============
    WL#7554 changed the default character set from latin1 to utf8mb4.
    Some tests were rewritten to use latin1 temporarily, so now
    they have been changed to use utf8mb4.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    Reviewed-by: Tor Didriksen <tor.didriksen@oracle.com>
    RB: 16197

commit 62ff5d40c6fe0523d3faa9d4dd5fd6873db0875b
Merge: 73ba33e d471a14
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Mon May 29 20:23:55 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 73ba33e6e5d895e0e3aa8d17172e5877f4b0041f
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Mon May 29 15:31:07 2017 +0200

    WL#10611 Group Replication: Disallow writes after leave group
    
    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 e28e3835efafa2f7f497c549cf02c5c9fd8d4a9e
Author: Georgi Kodinov <georgi.kodinov@oracle.com>
Date:   Mon May 29 16:27:50 2017 +0300

    WL#8020 addendum: fixed an address sanitizer error.

commit 9d47f174ce700171275176991db3b5377d6ec26b
Author: Dhruthi K V <dhruthi.k.v@oracle.com>
Date:   Mon May 29 18:40:52 2017 +0530

    WL#10478 Defaults: Enable Binary Log Expiration
    
    Rationale
    ----------------
    By default we should place some reasonable limit on the lifespan of binary logs.
    30 days is a fairly safe minimum limit (removal happens at startup and when the
    binary log is flushed). This will help to prevent excessive amounts of disk
    space being wasted on binary logs that are no longer needed for replication or
    recovery purposes.
    
    Server Changes:
    ----------------
    expire_logs_days = 30 : This causes mysqld to periodically purge unused binary
    logs that are older than 30 days

commit 4daf147d3d9f441d374625f97d0aabd758543f80
Merge: c207e27 8a8bc6a
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Mon May 29 17:36:36 2017 +0530

    Periodic up-merge of Cluster branch

commit c207e27156c1fa06203a08b86c87d749e5fe7be1
Merge: bbf0838 9c5ae02
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Mon May 29 13:44:26 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 bbf08382dc8c66ccb5dad23dd78d59ed1e6cf068
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon May 29 17:02:39 2017 +0530

    Merged the changelog for server 8.0.2 release

commit ac992fb2ceffeb2e6dfbec432afbfeeffb5888ed
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon May 29 12:07:15 2017 +0200

    Bug#26161492 INNODB.INNODB_TSOF_USE_1 IS FAILING SPORADICALLY
    
    Disable the test for now.
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com> over IM.

commit 2c032c9067c23b7c2964bc070345b422c211ddf9
Merge: e756dac 941067c
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Mon May 29 13:28:08 2017 +0200

    Bug#25473794: GR: PARTITIONED NODE SHOULD GET UPDATED STATUS AND NOT ACCEPT WRITES
    
    Merge branch 'mysql-5.7' into mysql-trunk

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 e756dac413689e58374c250bcfd7fdaee08ad3b8
Merge: 8265aa8 a13c42a
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon May 29 16:05:06 2017 +0530

    Null-merge from 5.7.

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 8265aa8349742b87575db9415dca8a7d4d4d04b1
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 29 10:45:31 2017 +0200

    Fix doxygen warnings
    
    Change-Id: I2c1b2d019d2157e2ba9659ffccd41bdc7b6539e9

commit 2e6a7729ea36aabb9fb223291eaa960da6c47b3a
Merge: 83d1803 201be04
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon May 29 15:05:47 2017 +0530

    Empty version change upmerge

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 83d1803c7227ddda56069a0606530408534bedad
Author: Gleb Shchepa <gleb.shchepa@oracle.com>
Date:   Wed May 24 12:00:10 2017 +0400

    Bug#26132947: SERVER CAN EXIT ON ALTER TABLE ADD PARTITION SYNTAX
    
    The LEX::part_info pointer was NULL in the case of trivial "ALTER TABLE ... ADD PARTITION" syntax.
    
    The fix forces the initialization of LEX::part_info in all variants of the "ADD PARTITION" clause.

commit c7a0bfa210ebc9c1be1e462d8d4e408aa523102f
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon May 29 07:58:32 2017 +0200

    Bug#25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP
    
    Another patch to stabilize tests by adding --sorted_result
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com> over IM.

commit 3e0577e559ec486175b42876fdfc305c2c4c2ee1
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon May 29 06:38:44 2017 +0200

    Bug#25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP
    
    Stabilize tests by adding --sorted_result
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com> over IM.

commit 5859dfa044cebb77f59b86b68dc57a196222c543
Merge: 12a4771 ec0357e
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Sun May 28 22:43:29 2017 -0600

    Null-merge from 5.7.

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 12a4771672ae147c7cebceab24d358f52f9781ac
Merge: 3d321cd 9ad4514
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Sun May 28 17:24:38 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

commit 9ad4514e3431366a272df202bd8777f80608f8a3
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 3d321cda79db8b10ec0ba7993b201c529a124190
Merge: e638ca1 c85f3f0
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Sun May 28 10:08:33 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 e638ca14d178f131b092c6f354bf4e1f76d37227
Merge: 802c4fc ede445b
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Sat May 27 00:09:07 2017 -0600

    Null-merge from 5.7.

commit ede445b526e66dcf62ae57c6b8fda9eb9af74a9c
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Sat May 27 00:05:33 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 802c4fc2d65029ee9135b0b6bd13628ecc678223
Merge: d6b8201 716db0e
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Fri May 26 23:42:28 2017 -0600

    Merge branch 'mysql-trunk-wl10322' into mysql-trunk

commit 716db0e6a155c0778c1639144a5cd6a7d6da82fd
Merge: 5354098 ee42bb2
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Fri May 26 11:52:55 2017 -0700

    Merge branch 'mysql-5.7-wl10322' into mysql-trunk-wl10322
    
    # Conflicts:
    #	mysql-test/collections/default.daily
    #	mysql-test/collections/mysql-5.7-stage.push
    #	mysql-test/collections/mysql-trunk-stage.push
    #	mysql-test/suite/innodb/r/innodb_wl6915_debug.result
    #	mysql-test/suite/innodb/t/innodb_wl6915_debug.test
    #	mysql-test/suite/innodb/t/log_file.test
    #	mysql-test/suite/innodb_undo/r/truncate.result
    #	mysql-test/suite/innodb_undo/t/noop-master.opt
    #	mysql-test/suite/innodb_undo/t/truncate.test
    #	mysql-test/suite/innodb_undo/t/truncate_recover-master.opt
    #	mysql-test/suite/innodb_undo/t/undo_space_id-master.opt
    #	storage/innobase/handler/ha_innodb.cc
    #	storage/innobase/include/srv0srv.h
    #	storage/innobase/srv/srv0srv.cc
    #	storage/innobase/srv/srv0start.cc
    #	storage/innobase/trx/trx0purge.cc
    #	storage/innobase/trx/trx0trx.cc

commit d6b8201184f8ab0413d503c7d3863d70e1621518
Author: Deepthi ES <deepthi.e.s@oracle.com>
Date:   Sat May 27 10:34:01 2017 +0530

    WL#10474 : Defaults: Store Replication Metadata In InnoDB
    
    Post push fix for testcases.

commit ee42bb2260953ae468c1395a46c0fef351e2bc8e
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Wed May 24 22:22:15 2017 -0700

    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 53540982d9ca0cacc243f408d2d2c95c5ba7e336
Merge: ac82a65 ed578d1
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 26 19:48:48 2017 +0530

    Null-merge from 5.7.

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 ac82a65b69cd11791ba7301b8a1a5e57cb710a97
Merge: 5ca7249 db37025
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 26 19:33:04 2017 +0530

    Null-merge from 5.7.

commit db3702594f32340341af2cd35b9b930d2f1f3c78
Merge: 9b1fe87 062e632
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 26 19:32:24 2017 +0530

    Merge branch 'mysql-5.6' into mysql-5.7

commit 062e6320b7e72debb7cb739919e8c39515f92e5d
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 26 19:28:41 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 5ca7249060d343a822fb87fd5791e1fb847de09e
Merge: 3a85aac 9b1fe87
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri May 26 15:50:47 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

commit 3a85aac6ed164dfa1fbb61752cd43e8172ef37d5
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Fri May 26 15:35:11 2017 +0200

    WL#9143: Keyring plugin for the Amazon's AWS
             Key Management service
    
    Post Push fix : Added missing .inc file

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 00164575ca0642b80fcb4fd14a3ecf2f6ea0bc72
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Fri May 26 15:06:44 2017 +0200

    WL#9143: Keyring plugin for the Amazon's AWS
             Key Management service
    
    Post Push fix : Fixed unit test

commit cf7e185b6e73d521f08aad3f777d5ae6a7acaed0
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri May 26 12:59:18 2017 +0200

    BUG#24311527: PLUGIN-LOAD FAILS AFTER MYSQLD --INITIALIZE
    BUG#25642343: THE SERVER SHOULD HAVE A DEFAULT USER FOR THE SERVER SESION SERVICE
    
    Update main.ps_sys_upgrade test.

commit 277176d091c19321ffd6ce11880ef970b6e5c732
Merge: fb118bc 08309af
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Fri May 26 16:08:57 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

commit fb118bc4eefc1637693a8ffbeecd74f690b679d2
Merge: 4ef7b48 b4e3c4c
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Fri May 26 12:39:10 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 4ef7b4821cc5bfcca8f26476ce5a97642eefcb9c
Merge: dd33122 f3dfe27
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Fri May 26 12:34:58 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 dd33122f3b29e32448ccf41622eb21e1487199e3
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Fri May 26 13:27:18 2017 +0300

    Revert "Bug#26132577 FAILURE IN I_BINLOG_GTID.BINLOG_GTID_SET_GTID_NEXT AFTER THE FIX OF BUG#25998635"
    
    This reverts commit cd119189ad1bc149785b602ac2af399368bf8b36.
    
    Bug# 26128931 is fixed and committed, now the tests succeed

commit f647c527f9c9a67e1ca08073914f3743825b6d14
Merge: 56da084 064a9c6
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Fri May 26 12:08:47 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 56da084f6f3cea5a55ef49228e5157ff9b1f09bd
Merge: 434489a 477635b
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri May 26 14:49:36 2017 +0530

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

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 434489a5eb00ff5b04896fe278c65369c435f57a
Merge: 3320ae0 5996646
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri May 26 10:53:55 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 3320ae037a10dded8c00ab1bc1cc9d0bb5d4b1e3
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed May 24 14:05:24 2017 +0200

    Bug#25825833	MYSQL SERVICE IN UBUNTU 14.04 LACKS USER PRIVILEGE VALIDATION AND LOOPS
    
    If the user running the service script isn't allowed to read pidfile or datadir,
    fail fast.

commit 6af691656f1d493f98576e1eb0a2956412fa47f6
Merge: 9ff8378 0fc7e76
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri May 26 10:20:31 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 9ff8378415c80c3c1bc72899575c31268cd0caa9
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri May 26 09:08:50 2017 +0100

    BUG#26128931 USE `DATABASE` STATEMENT FAILS INSIDE GTID SKIPPED
                 TRANSACTION
    
    Post push fix for the test case.

commit 9a609784043e07dd40c9e344fff3a1f48cc6c185
Merge: ba146ae 6e64622
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri May 26 08:56:44 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 ba146aeca40a945975c1c2dabbd4b1b767da8308
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Fri May 12 20:56:40 2017 +0200

    WL#7069: Followup. Change the SDI filename extension to lower case.
    
    Lower case seem to more in line with what users expect, since the FRM files
    used the extension .frm (lower case).
    
    Put the extension in a shared constant dd::sdi_file::EXT and use this
    both inside the sdi code and externally (upgrade).
    
    Patch approved by Sivert Sørumgård.

commit 7d75a47390340cae3363489975fb6cfb33c9874c
Merge: 2f44315 ca5c137
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Fri May 26 12:17:21 2017 +0530

    Null-Merge branch 'mysql-5.7' into mysql-trunk
    
    Bug#25369742 INCORRECT BEHAVIOUR IN SEL_ARG::RB_INSERT DURING
                 RANGE QUERY OPTIMIZATION

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 2f443155f6afc5686b29ed78a3785fd3b2952278
Merge: b6c8c91 980eb3a
Author: Libing Song <libing.song@oracle.com>
Date:   Fri May 26 14:00:22 2017 +0800

    Manual merge branch 'mysql-5.7' into mysql-trunk

commit b6c8c916abb0b571b1db9d6b845986360e08d344
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri Feb 17 15:48:37 2017 +0000

    BUG#25584734 SHOW BINLOG/RELAYLOG EVENTS BLOCKED WAITING FOR LOCK_LOG
    
    Problem/Analysis
    ----------------
    
    The access to the binary/relay log events by SHOW BINLOG|RELAYLOG EVENTS
    blocked the log access by acquiring the log lock_log for the whole
    "dump", but this was fixed in BUG#20928790.
    
    After BUG#20928790 was fixed, SHOW BINLOG|RELAYLOG EVENTS statements
    acquire the log's lock_log only for a brief amount of time to calculate
    the end of the log file. This was necessary in MySQL 5.6 in order to
    avoid to read "partial" events while the binary/relay log was being
    written (by commits or by the receiver thread).
    
    In MySQL 5.7, WL#5721 has implemented the binlog_end_pos, to allow the
    dump thread to read from the binary log (even from the "hot" log file)
    without the need of acquiring the log's lock_log. In this way, no dump
    thread would block commits from happen.
    
    In MySQL 8.0.1, WL#8599 made the applier threads to rely on
    binlog_end_pos too.
    
    Fix
    ---
    
    Now, SHOW BINLOG|RELAYLOG EVENTS was modified to
    rely on the binlog_end_pos for the "hot" log file. This made the
    statements to not block commits or receiving events at all.

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 a3120029d6f9e76486dc6debfa5f109bd69f37e8
Merge: 4d1d115 9f1b178
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Thu May 25 22:11:50 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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

    Backport BUG#25750822

commit 4d1d11595f16d2a84b25566470b049d57f2fb62e
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Thu May 25 19:25:08 2017 +0200

    Bug#25835833: SHOW STATUS SSL CRASHES GPL SRVR WHEN SRVR STARED WITH XPLUGIN,EXPIRED SSL CERTS
    
    Problem:
    =======
    X plugin uses a specific internal account for connection
    
    Solution:
    ========
    X plugin uses a built-in mysql.session account
    
    Review: 15961
    Reviewed by: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
    Reviewed by: Lukasz Kotula <lukasz.kotula@oracle.com>

commit 6bb5489ee5f2e6ef076959a80bafa43796720682
Merge: ac2af63 4601be0
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Thu May 25 18:45:56 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ac2af6307345b9548cb93261efac85dd184f728a
Author: Deepthi ES <deepthi.e.s@oracle.com>
Date:   Thu May 25 18:33:03 2017 +0530

    WL#10474 : Defaults: Store Replication Metadata In InnoDB
    
    This WL changes the default values of relay-log-info-repository and
    master-info-repository.This is required for crash-safe replication and
    for reliable replication generally.
    
    Server Changes:
    
    master-info-repository = TABLE : causes mysql.slave_master_info to be used for
    storing replication channel metadata.
    relay-log-info-repository = TABLE : causes mysql.slave_relay_log_info to be used
    for storing relay log metadata.
    
    This patch removed master-info-repository=TABLE and relay-log-info-repository=TABLE
    in tests.This also adds 3 include files : 'include/have_slave_repository_type_table.inc',
    'include/not_relay_log_info_file.inc' and 'include/not_master_info_file.inc'.

commit b945be08f2f2490b08ee7921fd6a43a187b50ad9
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu May 25 14:55:21 2017 +0200

    WL#7194: Define and implement authorization model to manage XA-transactions
    
    Rename user account mysql.session_user to mysql.session on
    mysql_upgrade_grant test.

commit 8446b028bd67299f96339bd7b98d343b577facfe
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Thu May 25 17:03:21 2017 +0530

    wl#10433: Group Replication: Member weight for automatic primary election
    
    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".

commit 122b787d761ab131bf8f0b1c088b381a8d055e1f
Author: Georgi Kodinov <georgi.kodinov@oracle.com>
Date:   Fri May 19 10:55:14 2017 +0300

    WL#8020: UDF registration component service

commit a9b2c48a3cd118c095551bd21c675ea066a1c7c1
Author: Elżbieta Babij <elzbieta.babij@oracle.com>
Date:   Wed May 24 16:51:15 2017 +0200

    Bug#25997118 CHANGE THE NAME OF THE ENGINE INTRODUCED IN WL#8117
    
    Fixing mysqld--help-win test.

commit c269bfc4a0fcc1ae79e924da010ca2a01f6cea56
Merge: b942da7 66611ea
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Thu May 25 12:32:05 2017 +0200

    Bug#25473794: GR: PARTITIONED NODE SHOULD GET UPDATED STATUS AND NOT ACCEPT WRITES
    
    Merge branch 'mysql-5.7' into mysql-trunk

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 b942da772e1945a51123543036f01ce31ea94bae
Merge: 1801b7f 091d0fe
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 25 15:12:29 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 1801b7fb6340f1af765f42ab26cea8f100a3513b
Author: Dmitry Shulga <dmitry.shulga@oracle.com>
Date:   Thu May 25 16:27:18 2017 +0700

    WL#7194   Define and implement authorization model to manage XA-transactions
    
    This patch introduces the new system privilege XA_RECOVER_ADMIN that controls
    whether a user can execute the statement XA RECOVER in order to get
    a list of XID for prepared XA transactions. The statement XA RECOVER can be
    executed successfully only in case it is run by a user with the privilege
    XA_RECOVER_ADMIN. It means that a user who is the initiator of the transaction
    wouldn't be able to run XA RECOVER unless the user has the privilege
    XA_RECOVER_ADMIN. By default the privilege XA_RECOVER_ADMIN isn't granted for
    a new created user and explicit execution of the statement GRANT XA_RECOVER_ADMIN
    is required before a user can run the statement XA RECOVER. In case the statement
    XA RECOVER is failed by the reason of missing the privilege the error
    ER_XAER_RMERR is issued. Additionally, the error ER_SPECIFIC_ACCESS_DENIED_ERROR
    is issued as a warning to provide more information about a reason of statement
    failure.

commit 2c83c67e8cacebea6a27e1ee470324bdffa1e446
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Wed May 24 15:05:19 2017 +0530

    WL#9687 : Change default for explicit_defaults_for_timestamp to ON
    
    Change default value of explicit_defaults_for_timestamp to ON.
    Add deprecation warning when the value of
    explicit_defaults_for_timestamp is changed from TRUE to FALSE.
    
    In MySQL 5.6 explicit_defaults_for_timestamp option was introduced (and
    deprecated) in WL#6292 with the intention of suggesting users to switch
    to new behavior. In most cases though, users ignore the warnings from
    explicit_defaults_for_timestamp. This worklog will change the default
    value of explicit_defaults_for_timestamp to TRUE, with users able to
    revert back to the FALSE behavior in mysql-8.0.
    
    Fix test cases to execute with default behavior by:
    i>   Record new default value of explicit_defaults_for_timestamp option.
    ii>  Record the result difference by not promotion of timestamp columns
         by default.
    iii> Timestamp columns are now nullable by default and no auto
         promotion happens. Record test output.
    iv>  Test tried to insert ZERO date in NO_ZERO_DATE mode. This
         is not allowed for timestamp column by default. Adjusted test case.
    v>   Fix sql mode to test the intended behavior of the test and
         record result file.
    vi>  There are error scenario to check that CREATE TABLE statement fails
         with 2 timestamp column with NO_ZERO_DATE sql. This is deprecated
         behavior. Removed the test scenario.
    vii> Record the extra warning when trying to insert NULL to
         TIMESTAMP NOT NULL column. Value inserted in the table changed
         from current_timestamp value to '0000-00-00 00:00:00'.

commit 6ba64e3406e33fd6cd302271452c76b8f74e6c46
Merge: 840a6ed 48a0a60
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Thu May 25 10:55:21 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 840a6ed03c8117bce8bb799432b09777fadaa1f6
Merge: b4ea44f cd49d5c
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu May 25 10:36:11 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 b4ea44fe3a4d6867ff109502e8587371137fd2d7
Merge: 7d598ed 0c12827
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Thu May 25 10:26:25 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 7d598edcd171470b3455f12da6eae3e879fbe1ed
Author: Deepthi ES <deepthi.e.s@oracle.com>
Date:   Thu May 25 13:26:17 2017 +0530

    Bug#24694453 RPL TESTS FAILING WITH MTS (ANY) AND RELAY_LOG_INFO_REPOSITORY=TABLE
    
    At running rpl.rpl_stm_000001 in MTS with relay-log-info-repository=TABLE the
    test could not sync the slave with the master.
    More specifically after the slave restart :
    
      SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
      source include/start_slave.inc;
    
    always resumes the slave with the very error-code query that is intended to
    be skipped. The wrong skip is turned out to be caused by MTS recovery that
    does not see
    
      l.110: drop table t2
    as executed in mysql.slave_worker_info though it must've been applied.
    The missed mysql.slave_worker_info update is found to be caused by
    "lazy" flush_info() which is called with force == false in MTS
    non-transactional commit branch (Slave_worker::slave_worker_ends_group).
    
    FIXED with turning the force parameter of
    commit_positions(Log_event *evt, Slave_job_group *ptr_g, bool force)
    from false to true.

commit 100e8263fc8824608f1e6e42ee4442790d895c38
Merge: df7a855 47d1f7a
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 25 12:44:17 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 df7a8553cf31efa9d19f9c2c277f8e9aebd221fc
Author: Bin Su <bin.x.su@oracle.com>
Date:   Fri May 19 17:52:11 2017 +0800

    Bug#26113652 - DON'T INHERIT TABLESPACE WHEN DATA DIRECTORY IS SPECIFIED
    FOR PARTITIONED TABLE
    
    The problem is that if a partition is specified without TABLESPACE
    but with DATA DIRECTORY, it may report TABLESPACE and DATA DIRECTORY
    conflicttion if there is higher level TABELSPACE specified.
    
    The solution should be that if DATA DIRECTORY is specified for a partition,
    it should always ignore higher level TABLESPACE as how we do before.
    
    Reviewed-by: Jimmy Yang<Jimmy.Yang@oracle.com>
    RB: 16305

commit b9e055a34738e0736f95b091eab11f6e02e4325c
Merge: 9e22e32 f04824c
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Wed May 24 18:34:28 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 9e22e32ffe7138faff916b7f4ea0d59502a68d93
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri May 5 16:00:20 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP [patch 3]
    
    Yet more conversions from HASH.
    
    This fixes an issue where plugin names were not correctly compared under the
    system collation's rules, since HASH erroneously assumes that two strings
    cannot compare equal if they differ in the number of bytes (and the new code
    does this correctly). One test which relied on this has been corrected.
    
    Change-Id: Iaecb64ddad9363ca2905431dce4c83491c4fe8c3

commit 8a8bc6a9ce70f4dd11a6619ef34fe54161bf9a07
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue May 23 15:46:19 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Enable tests that were previously disabled due to Bug#25858337
      TABLESPACE NAMES SHOULD NOT BE GLOBALLY UNIQUE ACROSS ENGINES
    - The tablespace_names test was deleted. This test was mainly to
      reproduce the issue in the above bug which has since been closed
      as the behavior is by design. The functionality being tested is
      covered in tablespace_basic making the tablespace_names test
      redundant
    - The ndb_dd_ddl test has been enabled and updated to now expect
      different error codes in certain cases such as when the
      tablespace being created already exists, datafile being dropped
      does not exist, and other such combinations.
    - The ndb_dd_alter test has been tweaked to work keeping in mind
      that tablespace names are now unique across the board. However,
      it unfortunately remains disabled under WL#9185 due to another
      issue

commit b046b9490b08116381a1d35e1815d7803a5169e2
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 23 15:21:09 2017 +0200

    Bug#26105334 WARNINGS WHEN BUILD WITH GCC 7.1.1.
    
    Extra warnings when building with DEBUG and -O1
    
    row0sel.cc:5483:8: warning: this statement may fall through
    sp_head.cc:3355:14: note: 'sprintf' output between 37 and 55 bytes into a destination of size 17
    
    Change-Id: Ibaf01a1ffde1191999273c843d6088082ccaa58d

commit 7d3a5a9e558f7078ba5b90c3bbc6e8871523ad93
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 18 14:41:23 2017 +0200

    Bug#26126253 BUILD WARNINGS FOR DEVELOPER STUDIO
    
    Fix misc warnings:
    Last line in file is not terminated with a newline.
    name hides dict_index_t::name.
    Deducing non-void lambda return type 'bool' from lambda without a single
    return statement.
    
    Change-Id: If566799a7cbb272e3e8db49cc4b7e7dc49d07315

commit adff55d5ac62f5fdbc7d4f7ab26c13b40de9d3f3
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 22 12:14:29 2017 +0200

    Bug#26105334 WARNINGS WHEN BUILD WITH GCC 7.1.1.
    
    Bug#26085531 -WSTRICT-ALIASING WARNINGS WITH GCC 7.1
    
    Problem:
    sql/temp_table_param.h:39:7: warning: '*((void*)&<anonymous> +48)' is used
    uninitialized in this function [-Wuninitialized]
    
    Fix: initialize more members in default CTOR.
    
    Problem:
    sql/auth/sql_authorization.cc:1266:27:
    error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
    
    Fix:
    Use implicit_cast to base class.
    
    Change-Id: I2c51512088e3041e079fe328a6ecb6cce02cac4f

commit 0c584f1cdd86eeab72716eb02a9ccd07f9d1f96f
Author: Deepthi ES <deepthi.e.s@oracle.com>
Date:   Wed May 24 12:28:31 2017 +0530

    Bug#24694798  ASSERTION `!RLI->GAQ->FULL() || ((RLI->CHECKPOINT_SEQNO == RLI->CHECK...' FAILED
    
    The assert was caused by unexpected group status of Coordinator thread.
    The actual status was Relay_log_info::MTS_KILLED_GROUP which is actually
    correct in the bug case circumstances.
    
    Fixed with refining the assert to account the KILLED_GROUP possibility
    which also makes the test pass.

commit a42a2a351979e55c4dbfe1569d8979548ceaa146
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue May 23 12:13:32 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Enable tests that were previously disabled due to Bug#25858461
      FAILURE TO DROP DATAFILE FROM TABLESPACES WITH MULTIPLE DATAFILES
    - The ndb_dd_dump test is enabled and result file is updated to
      reflect the change in default character set
    - The ndb_dd_basic test remains disabled but this time under new
      Bug#26124155 filed
    - The ndb_binlog_ddl_multi test remains disabled and should be
      fixed as part of WL#9185
    - The ndb_rpl_dd_basic test was enabled
    - The ndb_rpl_dd_partitions is enabled and result file is updated
      to reflect the change in default character set

commit 298008cc4fce32e6ffc0b6187382a5e789c3398a
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Fri May 12 09:45:31 2017 +0200

    Bug#25858461: FAILURE TO DROP DATAFILE FROM TABLESPACES WITH MULTIPLE DATAFILES
    
    Problem: It was not possible to drop a tablespace file from a general
    tablespace which had more than one tablespace file.
    
    Root cause was that when a tablespace file is dropped, all tablespace
    files with a higher ordinal position will have their ordinal position
    decremented by one. Since the ordinal position is part of the PK of
    TABLESPACE_FILES, the store following the drop would result in an
    pk-update of the files which had their ordinal position decremented.
    
    But pk-updates are not supported by the store-implementation in
    dd::Weak_object_impl as it searches for the new key and only performs
    an update if this key is found. When the key itself is being updated
    searching for the new key is wrong and could cause the wrong tuple to
    be updated, or as in this case, a new tuple to be inserted without
    deleting the tuple with the old key. In this case such an insert was
    rejected because both the old and the new tuple had the same value for
    TABLESPACE_FILES.file_name, and there is a unique constraint on this
    column.
    
    Solution: When dropping a tablespace file, all the files must be
    dropped from TABLESPACE_FILES first, and then the remaining files (that
    were not supposed to be dropped) must be re-insterted with the correct
    PK and file_name, so that duplicates are avoided.
    
    (cherry picked from commit a6de211c736f49a74ad433f7651b629552c9115d)

commit 7f8effa9b7c191c32c27c2469815841b3f9538d2
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 17 16:36:26 2017 +0530

    Bug #26114429: MTR SHOWS LD_LIBRARY_PATH WARNING WHEN RUN WITH NDBCLUSTER
    
    - Remove explicit setting of LD_LIBRARY_PATH for ndbcluster in mtr.
      This isn't required since mysqld already has libndbclient compiled
      in

commit b1c9bae7443df24f8c39933d7d8131219027422d
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri May 19 15:23:08 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Enable the group_by_order test
    - Update the result file to use --sorted_result to get deterministic
      output. This is required since group by now does not always use
      filesort

commit 7ac1b2efc15b52e9e193519ca04bbfb5509a3343
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Wed May 24 10:48:03 2017 +0530

    Fixed below keyring test failures on Hudson.
    keyring_okv.keysecure_table_encrypt_3.test
    keyring_okv.table_encrypt_3.test
    
    Reviewed by:
    Harin Vadodaria <harin.vadodaria@oracle.com>

commit cd119189ad1bc149785b602ac2af399368bf8b36
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed May 24 06:22:19 2017 +0200

    Bug#26132577 FAILURE IN I_BINLOG_GTID.BINLOG_GTID_SET_GTID_NEXT AFTER THE FIX OF BUG#25998635
    
    Disable the test until a fix is available.
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com> over IM.

commit 25d0a509833d217665293914a8e49ca9fe5ab58e
Merge: ea4de15 91aacba
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Wed May 24 09:09:27 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ea4de15a07b2d2a1d68efc9a07a5f028627d577f
Merge: 641fcb5 4cc6323
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Wed May 24 08:55:25 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 641fcb5aa260e7d2661fa415f5814c10bd862f9e
Merge: a55491c 762edb6
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Tue May 23 20:10:13 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
    
    Merge branch 'mysql-5.7' into mysql-trunk
    
    This merge only includes minor test and log message fixes related to this patch.

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 a55491cf7801596263e2629c50b8f31c58705d6e
Author: Guilhem Bichot <guilhem.bichot@oracle.com>
Date:   Tue May 23 11:56:02 2017 +0200

    Bug#25907510 CRASH IN HA_MYISAM::IDX_COND_PUSH WITH INTERNAL_TMP_DISK_STORAGE_ENGINE=MYISAM
    
    In WL#883 (CTEs) this was changed, for a tmp table created for a
    derived table:
    - before: one such table has a single TABLE;
    TABLE::key_info and TABLE::s::key_info are the same pointer,
    so accessing the array of key descriptions is possible from any of the
    two pointers.
    - after: multiple TABLEs are possible for CTEs referenced more than once,
    so pointers are different pointers, as some keys can exist in a
    TABLE_SHARE while not yet existing in all TABLEs connected to it
    (if in the middle of the key creation process).
    Thus, content of key_info for the TABLE and TABLE_SHARE can be different.
    Content for TABLE_SHARE's is a shallow version of that of TABLE's,
    filled in TABLE::add_tmp_key().
    For example, key_info::key_part_info isn't filled for TABLE_SHARE.
    
    Alas I overlooked that some old code, ha_myisam::idx_cond_push(),
    uses TABLE_SHARE::key_info and has a valid reason to do so:
    - it has no access to TABLE (see fix for Bug 12976163).
    - what it's reading from TABLE_SHARE::key_info is identical for
    all TABLEs of this share, so the read is safe.
    
    Fix: in add_tmp_key(), delay the copying by a few lines, so that
    the TABLE's key_info is more complete when the copying happens,
    so that the TABLE_SHARE's key_info is more complete too.

commit 4f304b07ca552de1db6d3b2cf6cc5cc41f00e8a6
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Tue May 23 13:44:56 2017 +0200

    Bug#25700242: TABLESPACES SHOULD BE SUPPORTED BY OTHER ENGINES THAN INNODB
    
    Post-push fix. Invert incorrect test for nullness of sdi
    handlerton function pointer.

commit b5e105fd6f3e1f616d2ecb060ef4ec389830ae2b
Merge: 58cb9af 41f8bcd
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 23 16:40:35 2017 +0200

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

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 58cb9af2f67bcc67135431d318e9a6ad87d6e895
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu May 4 14:15:35 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP [patch 2]
    
    Migrate more HASH instances to std::unordered_map.
    
    Change-Id: Ifa9510540d3f68c70ee7b37ab66e84eedadc0ff6

commit 8f84d8c943865e904d092af39d705dc9a8585931
Author: Elżbieta Babij <elzbieta.babij@oracle.com>
Date:   Tue May 23 11:13:05 2017 +0200

    Bug#25997118 CHANGE THE NAME OF THE ENGINE INTRODUCED IN WL#8117
    
    Rename files
    Rename directory
    Change all internal names from innmem to temptable.
    Fix tests

commit 4c14e99834bf3ed9a0e9c92ba7f99f61ed158782
Author: Deepthi ES <deepthi.e.s@oracle.com>
Date:   Tue May 23 14:39:55 2017 +0530

    Bug#26005418 RPL_SIMULATE_CREATE_CHUNK_FAILURE FAILS IN MTS MODE WITH RLI=TABLE
    
    The synopsis line test failed and its reason turns out to be a persistent error
    at START-SLAVE (l.66: --source include/start_slave.inc).
    The error log actually shows:
    
    [ERROR] Error looking for file after ./slave-relay-bin.000003
    
    The error analysis showed that
    
    SELECT Master_log_name FROM mysql.slave_relay_log_info == ""  => true
    
    The empty Master_log_name obviously can't match to a non-empty data from
    the Worker info table which dooms MTS recovery.
    
    The reason for the empty Master_log_name is that Rotate event applier
    never cared to call Rpl_info_table::flush_info(force == true). The
    argument value is propagated as false from
    Relay_log_info::inc_group_relay_log_pos().
    Because of that  Rpl_info_table::flush_info(force == false) returns early
    to put the updated last executed coordinates at risk of getting lost
    which the test demonstrates.
    
    Fixed with making Rpl_info_table::flush_info(force == true) in the
    Rotate event case.  The parameter value is set to true by
    Rotate_log_event::do_update_pos() and propagated from there through
    Relay_log_info::inc_group_relay_log_pos()'s extended signature with an
    bool argument.

commit 98faa6f85357d3dcd8d56df351ab1ada51134171
Merge: da4b76a d04ecc4
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 23 11:29:53 2017 +0300

    Merge branch 'mysql-5.7' into mysql-trunk

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 1c13439ab75b15261e3201e4d862dd37aa4efed0
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 23 08:40:20 2017 +0200

    Bug#26078612 PB2 TEST FAIL: NDB_RPL.NDB_RPL_BINLOG_FORMAT_ERRORS. MIXED ENGINE + SELF_LOGGING
    
    - disable testcase ndb_rpl_binlog_format_errors
     - this test has failed forever but shows up all
       the time in trunk-cluster where tests are
       run with mysqld-debug

commit da4b76a9e78ff11f3d2a53ebdcf9e09ffe3227be
Merge: 865ca38 edc3c84
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue May 23 07:59:44 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk
    
    Conflicts:
    	mysql-test/t/mysql_not_windows.test

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 865ca38eaef56c3604fccd890284a501b2773a07
Merge: c76c825 9d6f729
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Tue May 23 07:17:21 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 c76c8259b064400f94402ff341143f2076757b38
Merge: f01d252 2895ffa
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 23 10:26:56 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 f01d252cba4b544aade05a916963583f00b603b5
Merge: aa9d941 a326f87
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Tue May 23 10:10:27 2017 +0530

    Null-merge from 5.7.

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 aa9d941405abb204d9578c4877a3105a09871d17
Merge: b02cc23 4c2413e
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Tue May 23 08:41:33 2017 +0800

    Merge branch 'mysql-5.7' into mysql-trunk

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 b02cc2357d6a388b56239c4a412f0f3a4a845ee6
Merge: b42e93d d56a1c3
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Mon May 22 18:48:37 2017 +0300

    Merge branch 'mysql-5.7' into mysql-trunk

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 b42e93da54bb8a9244b13d83926d7e9053e07fa9
Author: Daniel Blanchard <daniel.blanchard@oracle.com>
Date:   Mon May 22 11:55:44 2017 +0100

    Bug #24823885: PERFORMANCE REGRESSION WHEN CHANGING CHARACTER SET TO
    UTF8MB4
    
    Post-push fix: Improve performance of my_charpos_mb4 for single byte per
    character strings.
    
    Microbenchmarks (64bit Intel Xeon CPU E5-2690 2.89GHz MSVC 2015)
    
      BM_SimpleUTF8MB4            249 ns/iter [  +3.2%]
      BM_UTF8MB4StringLength       14 ns/iter [+428.6%]
      BM_MixedUTF8MB4             390 ns/iter [  -0.3%]
      BM_MixedUTF8MB4_AS_CS      1276 ns/iter [   0.0%]
      BM_JapaneseUTF8MB4         1229 ns/iter [  -2.4%]
      BM_NewlineFilledUTF8MB4     371 ns/iter [   0.0%]
      BM_HashSimpleUTF8MB4        345 ns/iter [  +0.9%]
      BM_Hungarian_AS_CS         6236 ns/iter [  -0.2%]
    
    Change-Id: Ib09a6679b0d8c5ea6583d8a61216184c0f9004cd

commit bb62c19d95802facd93c50d63d52a748558326dd
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon May 22 17:59:58 2017 +0530

    Post-merge fix: BUG#24590891: RESTARTING A SLAVE AFTER SEEDING IT WITH A MYSQLDUMP LOSES ITS POSITION
    
    Adjust test case to trunk: move to the binlog_gtid suite and add
    mysqlpump coverage.
    
    Disabled the test binlog_gtid_mysqldump because of Bug#26116415

commit 94e88e1fd6b88f8f788999c43ebc41714342a022
Merge: ed5311d 9108d8e
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon May 22 17:42:24 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

commit ed5311d10f38a57886f83bff531646d7ed3ba083
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 22 13:51:58 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove spurious includes of log.h and log_builtins.h, those
       should only be included from ndb_log.cc
     - improve comment describing which component service the
       ndb_log.cc implementation is using
     - compilation warning about maybe uninitialized variable,
       fix by adding a default case for the case which should
       never happen and catch with a crash in debug.

commit 9108d8eb8cbb9b40d4c9a88138a6cdaf953662dd
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 9640a17e7fbd055f72395039f3c6d4707b5e092e
Merge: 4b3665e 272bc22
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon May 22 17:07:35 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 4b3665edadd1b2155321efbb6e9b55ce59fe7274
Merge: a336798 d0a749e
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Mon May 22 16:12:00 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 a33679886f471e092864bd527b37fd0a08b85418
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Sat Apr 8 11:00:27 2017 +0200

    Bug#25867454: REDUCE THE MEMORY FOOTPRINT OF JSON_ARRAY
    
    Json_array uses a Prealloced_array to store its elements. The
    preallocated space in Prealloced_array increases the size of the
    Json_array objects. Since Json_array objects are almost exclusively
    allocated on the heap, the preallocation does not reduce the amount of
    heap space used, but rather increases it.
    
    This patch makes Json_array use a std::vector instead, so that the
    Json_array objects become more compact and use less heap space.
    
    This also means that Json_array::append_alias() and friends may throw
    std::bad_alloc instead of returning true when running out of memory.
    This should not change anything for calling code, since this is
    already the case for Json_object::add_alias() and friends, so calling
    code should already be prepared to handle exceptions. All the JSON
    functions do their JSON DOM manipulation inside a try block, and catch
    and handle exceptions.
    
    Change-Id: Ib7bc8c93fcc2699a710a3e3a4edcc7e7f6dba774

commit 604a2c064e0010baee533e860f321b0662395188
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Mon Apr 10 10:19:18 2017 +0200

    Bug#25818544: Assert failure when using result from NULLIF as JSON
    
    Item_func_nullif does not have a val_json() function, which makes
    NULLIF fail with an assertion error in debug builds if the result from
    NULLIF is attempted used in a JSON context.
    
    Implement Item_func_nullif::val_json() to make it possible to use the
    result from NULLIF as a JSON value.
    
    Change-Id: I49556eb73ffd49f757ccf02979e123e52adccb21

commit f910d959668530ebdc0150ae14bbf06329c9c494
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Mon Apr 10 09:39:13 2017 +0200

    Bug#25818544: PLEASE REMOVE DBUG_ABORT() FROM THE JSON CODE
    
    On Windows, DBUG_ABORT() exits silently, which makes it more difficult
    for tests to detect that something bad has happened.
    
    Use DBUG_ASSERT(false) instead.
    
    Change-Id: I703cb73df1a770a340534350f108c22a732acb47

commit dd9eba009b488fb00add7ee42e975f271a609aff
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Mon May 22 16:20:18 2017 +0800

    Revert "Revert "Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON""
    
    This reverts commit ab238112ec9a0b8dc36b7206dfb5186dab30d878.

commit ba7b311438b463cff3c683dbe97a9a52ed906d63
Merge: 91632b0 2f5d024
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Mon May 22 16:03:28 2017 +0800

    Merge branch 'mysql-5.7' into mysql-trunk

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 768bbb264c3c45f9e211379ce7fd06ba4717c34e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 22 09:15:24 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - test copied a .frm file into the MySQL Servers datadir
     - remove checked in .frm file and remove part of test which copies
        the frm file.

commit 91632b0c175efb250eb403a9854b4945e825e672
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Apr 28 09:52:05 2017 +0200

    Bug#18513130: STRANGE INTERACTION OF SQL_MODE=ANSI AND PARTITION BY TIMESTAMP
    
    The problem was that the presence of the ANSI_QUOTES SQL mode
    influenced how partitioning expressions were stored and
    how they were parsed on table definition load.
    
    This made it possible to successfully create a partitioned table
    that would result in a parsing error on later retrieval if the
    SQL mode changed in the meantime.
    
    This patch fixes the problem by temporarily turning off
    ANSI_QUOTES when storing partitioning expressions in the
    data dictionary and when they are printed using SHOW CREATE TABLE.
    This means that partitioning expressions are no longer stored
    exactly as given by the user, but rather using Item::print()
    after the expression has been parsed. This is similar to how
    view expressions are handled.
    
    This patch also enforces that (sub-)partition expressions
    can be maximum 2048 characters long. Before this fix, the
    server would assert if a longer expression was used.

commit e04f76253a27c1c2e30c1b3407d9d89a72c85da6
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri May 19 12:20:26 2017 +0200

    Fix to stabilize main.dd_string
    
    Approved by Dyre Tjeldvoll <dyre.tjeldvoll@oracle.com>

commit 8e457d01875f898d6b90dfe2370b8a935c993ed7
Merge: 30eac26 cebd679
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Fri May 19 18:14:40 2017 +0800

    Merge branch 'mysql-5.7' into mysql-trunk

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 30eac26a2fd198870fcb920e7e8140d75c3664c3
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 19 12:03:15 2017 +0530

    BUG#25929826 : SKIP COMMAND DOES NOT EXPAND VARIABLES
    
    Issue:
    ------
    'skip' mysqltest command doesn't expand variables in the skip message.
    
    bash> cat sample.test
    --let $skip_msg= Skipping the test
    --skip $skip_msg
    
    bash> ./mtr main.sample
    ...
    ...
    worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13009
    main.temp                                [ skipped ]  $skip_msg
    
    Fix:
    ----
    Evaluate the skip message using do_eval() method to replace the
    variables within the skip message with the corresponding values.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>
    Reviewed-by: Tor Didriksen <tor.didriksen@oracle.com>
    RB: 16109

commit 60cf66f19096c14aaa4db81128e7e0adc29f5027
Merge: 09fc585 e5af4e0
Author: Aditya A <aditya.a@oracle.com>
Date:   Fri May 19 11:08:52 2017 +0530

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

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 09fc585f20c8814dfbdd792caeaef8df636116ec
Merge: ab23811 39ff9b3
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri May 19 10:30:01 2017 +0530

    Periodic up-merge of Cluster branch

commit ab238112ec9a0b8dc36b7206dfb5186dab30d878
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri May 19 06:14:04 2017 +0200

    Revert "Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON"
    
    Build break on PB2.

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

    Bug #19594845  INCIDENT LOG EVENTS SHOULD HAVE UNIQUE GTIDS WHEN GTID MODE IS ON - post fix
    
    Add const for a function.

commit f3d00a9eebd3e69d14749f3803b04bc119c5925f
Merge: b80caee 11ad3e0
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Fri May 19 09:45:01 2017 +0800

    Merge branch 'mysql-5.7' into mysql-trunk

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 b80caee1f88315ff18182b6312ed7ff7dd7febf8
Author: Dhruthi K V <dhruthi.k.v@oracle.com>
Date:   Thu May 18 17:50:07 2017 +0530

    WL#10477 Defaults: Enable Transaction Write Sets - Code Review
    
    Rationale
    
    By using Transaction Write Sets, the master has to do slightly more work to
    generate the write sets which is helpfull in conflict detection. This allows
    users to easily move into GR since transaction-write-set is a requirement for GR.
    Also, the new default will make users to easily enable binary log writeset
    parallelization on master to speed up replication.
    https://dev.mysql.com/doc/refman/8.0/en/replication-options-binary-
    log.html#sysvar_binlog_transaction_dependency_tracking
    
    Server Changes
    
    transaction-write-set-extraction = XXHASH64 : Enables the optimal method for
    generating the write set hashes.

commit aa42337090fa65b1450432fd87aca9570f11a163
Merge: 76112df d2d5888
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu May 18 17:48:41 2017 +0530

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

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 76112df08b714ac858a0c72924b04a7ccba9dfa5
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu May 18 10:56:48 2017 +0200

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Post-push fix: Fix some Clang-specific warnings.
    
    Change-Id: I281bf409594e68b0e01da67acb2bd0002a5eb72d

commit d453efd7310d6f0bb6978bec4d7ddf2c0f7b98bb
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu May 18 10:39:50 2017 +0200

    Revert "Revert "Bug #26030132: REMOVE SQL_ALLOC""
    
    Add some Clang fixes.
    
    This reverts commit c45160d8c4a3305bba53facd845f34712edb1d5f.
    
    Change-Id: I581b06adaaf3cd66e608f72df70a9211662e0fab

commit a3e4a81f8cd9b539141f5d5a0005085d9960ff92
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu May 18 14:40:45 2017 +0530

    wl# 5847: Temporarly disabling the sasl test for asan, will remove it after fixing.

commit cb6dcc0ce5c07918293040af946370b7f4044c2b
Merge: 8b3b955 8a1c8d2
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Thu May 18 14:34:54 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 8b3b9555b9c22c0e37eafa8048121b6a4a7056a4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 07:34:55 2017 +0200

    Bug#25923508 JSON FUNCTIONS TEST QUERIES RETURNS ROWS IN RANDOM ORDER
    
     - when sourcing the json_functions.inc file to run with NDB some
       queries shows that the rows are returned in undefined order. This is
       normal with a engine like NDB and can be fixed by soring the
       result.
     - fix by adding --sorted_result before the queries which show
       undefined behaviour
     - update .result file for json_function_innodb with the different order
    
    (cherry picked from commit 2af5b1ac8ff97f1417a0f0c074960933d4cc8131)

commit e839fa89555579c8103d7764655f86fafca5d567
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 3 12:41:39 2017 +0200

    Bug#25820923 SELECT ON NON INDEXED GCOL NOT USING FILESORT NEED
    SORTED_RESULT
    
     - use sorted_result for three queries which are not guaranteed to
       have determinstic outpout since they are not using filesort anymore
    
    (cherry picked from commit c5f1e1c09d1c2e385c275d42dbb775be555d32d2)

commit f2f03999dfd9a26b8c49115297242f71364c51a9
Merge: a7ddf78 e75b739
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu May 18 14:10:21 2017 +0530

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

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 a7ddf78908c87a486de166ad931f2e8242ab1430
Merge: 668d0e3 c492e2d
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Thu May 18 13:54:18 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 668d0e3e9beb2c90d2ba0bc3f8a2a447c5aebe44
Merge: f6c2254 30003da
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 18 10:16:02 2017 +0200

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

commit f6c2254ba732edd80da650485de6461fc25f3abe
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri May 12 13:08:19 2017 +0200

    BUG#11751977 MAIN.FUNC_MATH FAILS ON FREEBSD AND ALPINE LINUX
    
    Problem is that "SELECT LOG(3,9)" is giving platform specific result.
    
    LOG(3,9) = log(9) / log(3), however log(3) is not identical on all
    platforms, this fact is possible to verify by e.g. Python on different
    platforms:
    
    EL7 x86_64:
    $ python
    Python 2.7.5 (default, Sep  5 2016, 02:30:38)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-9)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from math import log
    >>> log(3)
    1.0986122886681098
    
    Alpine Linux x86_64:
    $ python
    Python 2.7.13 (default, Dec 22 2016, 09:22:15)
    [GCC 6.2.1 20160822] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from math import log
    >>> log(3)
    1.0986122886681096
    
    FreeBSD 11 amd64:
    $ python
    Python 2.7.12 (default, Oct 29 2016, 13:38:04)
    [GCC 4.2.1 Compatible FreeBSD Clang 3.8.0 (tags/RELEASE_380/final 262564)] on freebsd11
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from math import log
    >>> log(3)
    1.0986122886681096
    
    Thus it don't make sense to require all 16 digits to be identical on
    all platforms, replace_numeric_round is used relax test to compare 15
    digits only.

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 4dbb9247af8856897ee612b7965475b87fd3d13b
Author: Parveez Baig <parveez.baig@oracle.com>
Date:   Thu May 18 12:25:00 2017 +0530

    WL10476: Defaults: Enable Hash Scans In RBR
    
     This worklog sets HASH_SCAN as default algorithm, which offers the
    best possible option when applying Row Based Replication (RBR)
    events on tables that have no viable index for uniquely identifying
    rows. With the HASH_SCAN algorithm we can try and avoid doing a
    full-table scan for each event in such cases and instead search
    for the applicable row(s) using the generated hash table/map.
    
    Server Changes:
    
    slave-rows-search-algorithms = 'INDEX_SCAN,HASH_SCAN'

commit 6f0662ef5d5946ca51cf66a723e1cfbfdac6aba1
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Thu May 18 11:57:25 2017 +0530

    BUG#26090322 : MYSQLTEST CRASHES WITH 'NO-SKIP' OPTION
    
    Issue:
    ------
    When mysqltest client is invoked with '--no-skip', it also needs a
    string input containing comma separated list of file names passed
    using '--no-skip-exclude-list' option. Currently in mysqltest.cc code,
    there is no check for whether 'no-skip-exclude-list' option is set or
    not, causing it to crash when only 'no-skip' option is enabled.
    
    Fix:
    ----
    Added a check for excluded string variable, if not set, continue with
    the test run.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 16270

commit 39ff9b3d86f576d26bf12efc8e7a02a749423d14
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed May 17 13:23:02 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - the sql_print_*() functions have been removed
     - fix by switching to use the ndb_log_* functions and remove
       usage of sql_print_*() in all files but ndb_log.cc
     - change usage of sql_print_*() in Ndb_binlog_thread and
       Ndb_util_thread to use the Ndb_component log functions(which
       also use ndb_log.h behind the scenes).
     - implement support for automatically deducing the subsystem
       prefix in existing log messages to allow somewhat backward
       compatible code. The ndb_log_*() functions will auto detect
       which prefix to use from a list of allowed subsystems, currently
       only two such subsystems exist which are still not using
       Ndb_component.
     - all log messages coming from ndbcluster will now be properly
       prefixed by "NDB:" or one of the allowed subsystem prefixes.

commit 05831bc4dcdb4443b5269393e40ed9ef65fd6ee4
Author: Libing Song <libing.song@oracle.com>
Date:   Thu Apr 20 18:44:28 2017 +0800

    BUG#25813258 CRASH ON
                 SHOW SLAVE STATUS FOR CHANNEL 'GROUP_REPLICATION_RECOVERY'
    
    ANALYSIS
    ========
    SHOW SLAVE STATUS will use Relay_log_info::rli_filter if
    group_replication_recovery is initialized(master_host is not empty).
    Restarting a group member in RECOVERY status caused a situation that
    group_replication_recovery was initialized, but its Relay_log_info::rpl_filter
    is not initialized. The initialization of rpl_filter of group
    replication channels was delay to starting the channels. So
    SHOW SLAVE STATUS in this situation caused the bug.
    
    FIX
    ===
    Relay_log_info::rli_filter of group replication channels are always initialized
    when starting the server.

commit d72655b6ba42002f1a15911d34f009d5c45dba27
Merge: b9d2612 53d584f
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Wed May 17 18:30:40 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 b9d2612bb6dd58195fbc43029ea8cecc39dcaf17
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Tue May 16 11:47:22 2017 +0200

    Bug#25804386 - DUPLICATE VALUE FOR AUTOINC COLUMN
    
    Background:
    ----------
    On checkpoint, the DDTableBuffer in-memory contents are written to the
    physical DDBuffer Table.
    
    During checkpoint, the redo generated by these DDTableBuffer writes
    are written to disk.
    
    Before WL#9499:
    --------------
    The fil_name_parse() which writes MLOG_FIL_NAMEs made sure that the
    redo generated by DDBuffer Table writes are also flushed to disk
    
    So this is not so obvious dependency on fil_names_clear().
    
    After WL#9499:
    --------------
    Since MLOG_FILE_NAME is removed, there is no need to write MLOG_FILE_NAMEs
    as part of checkpoint. So fil_names_clear() is removed.
    
    This exposed the above explained dependency of DDTableBuffer writes
    on fil_names_clear(). Since the redo-writes of DDTableBuffer didn't
    make to disk on checkpoint, after a crash, a duplicate auto-inc value
    is possible and hence this bug.
    
    Fix:
    ----
    1. Change return type of dict_persist_to_dd_table_buffer() to determine if a possible
       write to DDTableBuffer happenned.
    
    2. Flush the redo upto a lsn which includes DDTableBuffer changes.
    
    Reviewed-By: Debarun Banerjee <debarun.banerjee@oracle.com>
    Reviewed-By: Bin Su <bin.x.su@oracle.com>
    RB: 16071

commit 4516f82e74f72702d83306c8970fdb7b57e62179
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed May 17 12:54:49 2017 +0530

    Bug #25999383	CREATION OF FULLTEXT INDEX CORRUPTS THE TABLE
    
    Analysis:
    ========
    - Creation of fulltext index fails with too long column error.
    It is happening because there is a check for key column length
    shouldn't exceed maximum length.
    
    Fix:
    ====
    - The column length does not matter for fulltext search indexes and remove
    the check for fulltext indexes alone.
    
    Reviewed-by: Jimmy Yang<jimmy.yang@oracle.com>

commit c9e45a1d79ef1c869e54a069de192b1afcb43034
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Tue May 16 20:14:56 2017 +0530

    Bug#25872965 MTR: IMPROPER HANDLING OF ARGUMENTS WITH METACHARACTERS
                 WHEN PASSED TO DEBUGGER
    
    Issue:
    ------
    When preparing arguments to a debugger, MTR only encloses the value
    of '--plugin-load' in quotes since they can contain ';'. This is
    currently being done only for the option's first occurrence and is
    not ideal as there are other options like '--innodb_data_file_path'
    which may contain metacharacters to be escaped before they are passed
    to a debugger.
    
    Fix:
    ----
    Enclose all option values containing metacharacters in quotes while
    preparing the command line for debuggers so that they are not mis-
    interpreted.
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    RB: 15982

commit c45160d8c4a3305bba53facd845f34712edb1d5f
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Wed May 17 04:06:52 2017 +0200

    Revert "Bug #26030132: REMOVE SQL_ALLOC"
    
    This reverts commit cdddf6d13bd246d8210fc78e408ee0261491d2a8.

commit c613ee21224c688e30cb478c307190698b3551f3
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue May 16 16:19:44 2017 +0100

    BUG#25694813 INSTRUMENTATION IS ALWAYS ENABLED FOR REPLICATION P_S
                 STATUS TABLES
    
    Post-push fix, moving a DBUG_ASSERT to the proper place and resetting
    a variable used in compare_exchange_weak properly.

commit cdddf6d13bd246d8210fc78e408ee0261491d2a8
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed May 10 14:32:38 2017 +0200

    Bug #26030132: REMOVE SQL_ALLOC
    
    Make all destruction-but-not-deletion of Sql_alloc objects explicit.
    This means that it's now possible to see (without looking at the object's
    type and finding the reference to Sql_alloc in the class hierarchy)
    that "delete" of such objects does not actually free any memory.
    
    To enforce this, we make operator delete in Sql_alloc protected
    (it can't be private, or objects could not be destructed at all),
    making every such delete call fail.
    
    Change-Id: I7fdf6dc6099f1ecfcec9131bae6b6dd2d77b3ec1

commit 46b62466e57a8fc61cf589828c233ae3b79f473d
Author: Jaideep Karande <jaideep.karande@oracle.com>
Date:   Tue May 16 13:17:42 2017 +0200

    BUG#24658431: SQLSTATE FOR ER_TRANSACTION_ROLLBACK_DURING_COMMIT SHOULD INDICATE ROLLBACK
    
    Problem:
    At present we do not have any SQLState mentioned for
    ER_TRANSACTION_ROLLBACK_DURING_COMMIT.
    This make error fall into generic SQLState HY000, which is generic and not
    suitable for rollback.
    
    Solution:
    40000 is generic SQLState in SQL Standard(SQL99) and should be used instead of
    HY000 for rollback by plugin.

commit 552431cac3f62b3f0e604967773e758ba648d716
Merge: b80b01e cf901b6
Author: Ajo Robert <ajo.robert@oracle.com>
Date:   Tue May 16 15:36:13 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 b80b01e10cbf3fb63b7c45884e3e00abe894a9d1
Merge: 152f193 a263e14
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 16 12:02:17 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 152f193eb794fdff5b5d548596871e04f3588c2b
Merge: 0cfec5c d7cca9c
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Tue May 16 12:31:07 2017 +0300

    Null-merge from 5.7.

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 0cfec5cef529d406c9f96bbbf787429ee157778d
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue May 16 10:55:21 2017 +0200

    Test suite cleanup

commit a17708d30a4402d4a0682333ccc50670920a63ca
Merge: 74a1520 7af2403
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Tue May 16 13:57:14 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 74a1520b4bf18d79783f3c9394a7cdb63932421c
Merge: a71d55b ef2c8c9
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 16 09:44:20 2017 +0200

    NULL merge from 5.7

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 a71d55b0d20f25d5a5408ef48fc3c990a9fede9c
Merge: 6c0d593 db73420
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Tue May 16 11:32:41 2017 +0530

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

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 6c0d5939b73c3463c234a14c2197cea2f33487d7
Merge: 3d0ce50 fb0cfd5
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Tue May 16 09:52:20 2017 +0530

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

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 3d0ce5031dce70c0791d551b2d033039cf3c1bd7
Merge: a56561b 19ca9ea
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue May 16 07:16:46 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 a56561be1799351a103f5c5483c8baab96da1eed
Author: Marc Alff <marc.alff@oracle.com>
Date:   Mon May 15 16:50:46 2017 +0200

    Rework after WL#7900 merge.

commit 02fc446ac4932dd7dfdf0cc5ddcfb45da20117fe
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 15 16:59:31 2017 +0200

    WL#9344: Logging services: error messages
    
    Post-push fix: broken ndbcluster build in optimized mode.
    include/mysql/components/services/log_builtins.h:1043:
    error: undefined reference to 'log_bi'
    
    Change-Id: I08356f0107db6e29c0fc9566d522c720c3603ec5
    Fix: #include log.h before log_builtins.h in ndb source files.

commit 4ea16e90b6c41d14c29f47ca582500a148563f0a
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Tue Apr 11 22:00:40 2017 +0530

    Bug#25775881 INNODB ASSERTION DURING INITIALIZE IF FAILED TO CREATE TABLESPACES.OPEN.1
    
    Problem:
    --------
    1) Initialization problem when mysqld is intialized for mysql user as root (specific paths only)
    2) file creation fopen() takes global umask value which can be changed by server. See Bug#25832856
    3) remove windows specific FILE* to fd conversion to do fsync()
    4) dangling symlink issue when background threads do open() and close() on relative paths.
    
    Fix:
    ----
    1. Change from absolute to relative paths for tablespaces.open.* files
    2. Create/open/close tablespaces.open.* files on startup instead of background thread.
    3. Use InnoDB os_file_*() APIs instead of fopen()/fwrite()/fclose()
    4. Remove windows specific logic for fsync()
    5. Solves the dangling symlink problem because background open()/close()
       is avoided (seen on MTR tests, as it creates symlink)
    6. Introduce OS_BUFFERED_FILE for buffered file writes
    
    Reviewed-By: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16012

commit 577f8c89a50e85b6966cfc20ff28a7e8d84f9ff1
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue May 9 15:01:13 2017 +0200

    Bug #26030132: REMOVE SQL_ALLOC
    
    Make all allocation on THR_ALLOC explicit. This is a no-op change;
    even nonsensical allocations on THR_ALLOC (ie., where we obviously
    have a THD as a local variable that we could use, instead of pulling it
    out of TLS) are kept. This exposes all use of the alloc stored in TLS
    to make it explicit, and removes the difference in syntax between
    Sql_alloc-derived classes and all others, increasing consistency.
    
    We remove the replacement operator new on Sql_alloc that used to use
    THR_ALLOC behind-the-scenes; this means it will be impossible to write
    new Foo() without an explicit MEM_ROOT by mistake (since overload resolution
    will fail). We'll keep it this way until 8.0 has been released, when we can
    remove Sql_alloc entirely and new Foo() will start meaning simply to allocate
    Foo() the regular way.
    
    A few select places still depend on operator delete, which is kept
    until the next patch.
    
    Change-Id: I9f1af8762eb3bee79cc0a2492f23289a1f4b78d6

commit 3c6e686ee8914f8b8e2eee176cc3464e6f33a534
Merge: 71f1bc7 8daf83a
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Mon May 15 18:32:34 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 71f1bc74600a9e0310914eb31690e428660300a3
Merge: c168007 e9f9ef1
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon May 15 18:02:43 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 c1680074961187c66a58057e55758a264bf02bf1
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Mon May 15 13:01:29 2017 +0100

    BUG#25694813 INSTRUMENTATION IS ALWAYS ENABLED FOR REPLICATION P_S
                 STATUS TABLES
    
    Post-push fix, making also GR PFS tables perpetual.

commit 0934ba451f5ce8d0d6ccf427b15ea328de0e4ed4
Author: Dmitry Shulga <dmitry.shulga@oracle.com>
Date:   Mon May 15 19:04:09 2017 +0700

    Follow-up for WL#7900 -- New DD: Support flexible creation and versioning of virtual P_S tables
    
    This patch sets the option --secure-file-priv="" when the option
    --no-defaults is specified. This is done in order to run the test
    init_pfs_from_dd successfully for packaged version of mysql,
    that is for packages .deb, .rpm and .pkg (for Solaris).

commit 51a837e4f452ae3c9ff675e8c1b5e5a3eefdb87e
Merge: be1b445 2e11c90
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Mon May 15 13:36:06 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 be1b445bdb96ee428810dabac9cb299b0dc0bc8d
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 15 12:36:31 2017 +0200

    Bug #25959028: REPLACE MY_ATOMIC WITH C++11 STD::ATOMIC
    
    Post-push fix: broken build on Windows.
    
    Change-Id: I23cf67b7c783be98230a21427f75bed21255fd3a

commit 459d9cd23c7fe2895286869e4d934f88a1ac44ab
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Mon May 15 09:13:08 2017 +0100

    Bug#26074251 WL#10493 BREAKS BUILD ON RPM PLATFORMS
    
    Problem
    -------
    
    A counter variable and a function defined as "size_t" are being printed
    in a debug message using "%lu" format, but this is breaking 32 bits
    builds.
    
    Fix
    ---
    
    Used "static_cast<ulong>" when debug-printing.

commit 53774caded0277e7940e031bd4f09785f20c9eec
Merge: 9b7e4f8 b265990
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon May 15 11:02:59 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 9b7e4f838361587623258455002541eb21fd004b
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Apr 26 10:40:49 2017 +0200

    Bug #25959028: REPLACE MY_ATOMIC WITH C++11 STD::ATOMIC
    
    Replace all use of my_atomic_* with C++11 std::atomic, and remove the old
    my_atomic files.
    
    Change-Id: Ib5b560b770b22dcd0a68caebefcc6647907c5d68

commit af815b222a7855f7a2ec812f5b22cf15a55b09a6
Author: Roy Lyseng <roy.lyseng@oracle.com>
Date:   Mon May 15 08:45:51 2017 +0200

    Bug#25811775 Eliminate TABLE::grant object
    
    We have recently done significant refactoring to ensure that the
    objects TABLE_LIST::grant and TABLE::grant are kept synchronized for
    a specific use of a table. This patch goes one step further by removing
    the TABLE::grant object and relying solely on TABLE_LIST::grant.
    
    The obvious benefits are less work, and less complexity to keep the
    two objects synchronized.
    
    Implementation is straightforward, except for the HANDLER interface
    which uses two TABLE_LIST objects to manage a table. Solution here is
    the simplest possible (keep the two GRANT objects synchronized), since
    cleanup of HANDLER is not prioritized. Notice also that columns specified
    in HANDLER READ statements cannot be privilege checked due to bug no.
    25987758, however this is not critical as all columns are nevertheless
    checked by insert_fields().
    
    Pay attention to the big if statement in insert_fields() that
    proved to be far too complex and pretty misleading.

commit 2e0e1c179fd87acc81fae2b60bce0d8801129f6d
Merge: 7743a4c 825808a
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Mon May 15 08:57:28 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 7743a4c40f7ee14cfea45df3e64e24ff33416fcc
Author: Dmitry Shulga <dmitry.shulga@oracle.com>
Date:   Sat May 13 17:16:41 2017 +0700

    Follow-up for WL#7900 -- New DD: Support flexible creation and versioning of virtual P_S tables

commit e181795f85a983bb3fcf1f4863aa23ecee046017
Author: Dmitry Shulga <dmitry.shulga@oracle.com>
Date:   Sat May 13 16:52:15 2017 +0700

    WL#7900 -- New DD: Support flexible creation and versioning of virtual P_S tables
    
    This worklog provides support for:
      * retrieving P_S table definitions from performance schema engine
        and
      * for versioning of P_S table definitions.
    
    To implement it the following modifications are done within the worklog:
    
      * A version of performance schema supported by server is stored in the table
        mysql.dd_properties as a value of property with the name "PS_version";
    
      * For every created P_S table a boolean property with the name
        "server_p_s_table" and the value "true" is stored in the column "options" of
        the table mysql.tables;
    
      * The P_S tables are recreated only in case a value of the property PS_version
        stored in Data Dictionary is different from the version of performance schema
        supported by server;
    
      * To recreate P_S tables, the "old" P_S tables are dropped and new ones
        are created;
    
      * To drop "old" P_S tables the metadata about all P_S tables stored in DD are
        fetched and those tables that contains the property with name
        "server_p_s_table" are dropped;
    
      * New P_S tables to be created are supplied by performance schema storage
        engine;
    
      * Every P_S table is defined in terms of instance of the class Plugin_table
        and embedded into server code;
    
      * The class Plugin_table is used to produce SQL statements for creation of
        P_S tables;
    
      * The classes Plugin_table, Plugin_table_impl were modified to allow optional
        setting of tablespace name for a table being created;
    
      * DDL SQL-statements for creation of server P_S tables were removed from
        the file mysql_system_tables.sql.

commit d904c51461b9609f2340c1f3df48ecf7e6849729
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Sat May 13 12:20:30 2017 +0530

    BUG#26049012 : MTR DOC: FIX MTR DOXYGEN DOCUMENTATION ISSUES
    
    Description:
    ============
    Couple of places in MTR doc, a page is not referenced correctly i.e
    @ref command is missing. For example, "see PAGE_ERROR_HANDLING"
    should be "see @ref PAGE_ERROR_HANDLING"
    
    Fix:
    ====
    Added @ref command to refer to the correct page.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>

commit 30207d7bf4a6e072ce3167d8f3304148ff6e4852
Merge: 30cbcb3 d7d95e6
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Sat May 13 10:27:42 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 30cbcb36634807a0466d49353e586246d3b4328d
Merge: 838d43f a1f69c2
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Sat May 13 07:29:23 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 838d43fab4809f6f282f073df316aee60c3c7650
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri Mar 10 15:49:37 2017 +0000

    BUG#25694813 INSTRUMENTATION IS ALWAYS ENABLED FOR REPLICATION P_S
                 STATUS TABLES
    
    Problem
    -------
    
    New fields were added by WL#7374 to following PS replication tables:
    - replication_connection_status;
    - replication_applier_status_by_coordinator;
    - replication_applier_status_by_worker.
    
    The fields are related to GTID monitoring. They have information about
    when a GTID was committed on the original master and on the immediate
    master, when a GTID transaction started being processed by the I/O
    thread (connection_status), by the MTS coordinator and by the worker
    threads. There is also the timing information about the last processed
    transaction of the three replication thread types.
    
    For performance reasons, if this new information is not needed, users
    should be able to disable the instrumentation that populates the new
    table fields. However, in the current implementation, this
    instrumentation is always enabled.
    
    Fix
    ---
    
    The replication monitoring introduced by WL#7374 now depends on
    performance schema being enabled on the server.
    
    When performance schema is not enabled in the server, the replication
    status tables will not collect local timing information. All
    START_*_TIMESTAMP and END_*_TIMESTAMP will be zero for the new queued,
    buffered and applied transactions.
    
    We replaced all extra Relay_log_info locking just for ensuring GTID
    information atomicity by a new atomic locking mechanism just for the
    GTID information.
    
    Note: this fix made also some performance schema tables as "perpetual":
    - replication_applier_configuration;
    - replication_applier_status;
    - replication_applier_status_by_coordinator;
    - replication_applier_status_by_worker;
    - replication_connection_configuration;
    - replication_connection_status;
    
    Those tables should be able to present content even when performance
    schema is disabled on server.

commit 5cdbcbf330375ff705f827c194a711d02195c2ea
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri May 12 16:33:48 2017 +0100

    WL#9344: Improved error logging in 8.0: error messages
    WL#9323: Improved error logging in 8.0: "log TNG"
    WL#9342: Improved error logging in 8.0: log filters
    WL#9343: Improved error logging in 8.0: log writers
    
    - post merge fixes

commit 5b7718063ae41f20145edfdd041a9dfa0583fc2b
Merge: 5b66a0d 7a06b13
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri May 12 15:45:35 2017 +0100

    Merge branch 'mysql-trunk-wl9344m3' into mysql-trunk
    
    WL#9344: Improved error logging in 8.0: error messages
    WL#9323: Improved error logging in 8.0: "log TNG"
    WL#9342: Improved error logging in 8.0: log filters
    WL#9343: Improved error logging in 8.0: log writers
    
    - allot more stack so Solaris tests will pass
    - unconfuse doxygen, and add some missing doxygen comments
    - align doxygen comments between .cc and .h

commit 7a06b13ee2a3382271d33356000a32fa34d4e643
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri May 12 15:45:11 2017 +0100

    WL#9344: Improved error logging in 8.0: error messages
    WL#9323: Improved error logging in 8.0: "log TNG"
    WL#9342: Improved error logging in 8.0: log filters
    WL#9343: Improved error logging in 8.0: log writers
    
    - allot more stack so Solaris tests will pass
    - unconfuse doxygen, and add some missing doxygen comments
    - align doxygen comments between .cc and .h

commit 5b66a0dcc15058ebc9fffea81e1aea628b320e67
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Fri May 12 18:45:51 2017 +0530

    WL#10418: Change memcached tests to run with new default charset
    
    Description:
    ============
    WL#7554 changed the default character set from latin1 to utf8mb4.
    Some tests were rewritten to use latin1 temporarily, so now
    they have been changed to use utf8mb4.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    Reviewed-by: Horst Hunger <horst.hunger@oracle.com>
    RB: 16144

commit 03aebc75fa12648de0fe9c43fc3f7cf75f4afc07
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Fri May 12 18:28:00 2017 +0530

    WL#10298: Change runtime tests to run with new default charset
    
    Post push fix: Fixing the tests which were missed earlier.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    Reviewed-by: Thayumanavar S <thayumanavar.x.sachithanantha@oracle.com>
    RB: 16069

commit 3c8dd5593d078d74c414f8fb5d471af6f3a8f9da
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri May 12 13:12:29 2017 +0200

    BUG#25654425: GR_APPLIER_EARLY_FAILURE HAS OCCASIONAL TIMEOUT ON PB2
    
    Update unstable tests on Group Replication.

commit 83c06c23084533d0eab5232d55af1b880ff8646e
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri Mar 24 14:16:32 2017 +0000

    WL#10493 Add transaction length to gtid_log_event
    
    This patch added transaction length information to the Gtid_log_event in the
    binary log.
    
    The new information is calculated before writing the Gtid_log_event to
    the binary log, by consulting the binary log cache length, the amount of
    events present the cache, the Gtid_log_event length and checksumming
    flag on the cache.
    
    trx_length = cache_length + gtid_length +
                 cache_checksum_active * (cache_events + 1 ) * CRC32_payload
    
    Where cache_checksum_active is 1 when binary log checksumming is ON and
    0 otherwise.
    
    Code changes
    ------------
    
    @libbinlogevents/*/control_events.{h|cpp}:
    
    Introduced the transaction_length parameter into Gtid_event.
    
    @rapid/plugin/group_replication/src/handlers/certification_handler.cc:
    
    Set the transaction_length for a copy of a Gtid_log_event.
    
    @rapid/plugin/group_replication/src/observer_trans.cc:
    
    Set the transaction_length for a transaction to be certified.
    
    @sql/binlog.cc:
    
    Introduced the infrastructure to count the amount of events present in a
    binary log cache.
    
    Introduced a function to state if checksum is enable for the binary log
    cache.
    
    MYSQL_BIN_LOG::write_gtid() now calculates and store the transaction
    length before writing the Gtid_log_event into the binary log.
    
    @sql/log_event.{h|cc}:
    
    Updated Gtid_log_event functions to dump event information (used by
    mysqlbinlog client program) and to write the transaction_length in
    Gtid_log_event::write_body_to_memory().
    
    Created Gtid_log_event::set_trx_length_by_cache_size() function to
    calculate and set the transaction length based on binlog cache info.
    
    The mysqlbinlog client program will print "transaction_length=" followed
    by the transaction length information on the Gtid_log_event or 0 when
    the information is not available.
    
    Updated Gtid_log_event::get_data_size() to take into account the
    transaction_length field.
    
    Introduced Gtid_log_event::get_event_length() to answer with the
    Gtid_log_event length (including event header, but not CRC32).
    
    MTR include changes
    -------------------
    
    @include/assert_transaction_length.inc:
    
    Assert all transaction lengths for a given binary/relay log file.
    
    @include/assert_transaction_length_all_logs.inc:
    
    Assert all transaction lengths for all server binary and relay log
    files.
    
    @include/mysqlbinlog.inc:
    
    Mask the transaction length output.
    
    @include/rpl_end.inc:
    
    Now supporting the optional '$rpl_assert_transaction_length' parameter.
    When set to 1, the include will call, without displaying output,
    assert_transaction_length_all_logs.inc for all servers on the test case.
    
    New test case
    -------------
    
    @rpl.rpl_transaction_size
    
    Generate some random workload and assert all transactions length.
    
    Test cases changed or needed to be recorded again
    -------------------------------------------------
    
    The test cases below source "include/mysqlbinlog.inc" or dump
    mysqlbinlog output that required masking the transaction length field:
    
    @binlog_gtid.binlog_gtid_mysqlbinlog_row
    @binlog_gtid.binlog_gtid_mysqlbinlog_row_innodb
    @binlog_gtid.binlog_gtid_mysqlbinlog_row_myisam
    @binlog_nogtid.binlog_mysqlbinlog_row
    @binlog_nogtid.binlog_mysqlbinlog_row_innodb
    @binlog_nogtid.binlog_mysqlbinlog_row_myisam
    @binlog_nogtid.binlog_mysqlbinlog_row_trans
    @rpl.rpl_multi_source_corrupt_repository
    @rpl_nogtid.rpl_binlog_json
    @rpl_nogtid.rpl_row_ignorable_event
    @group_replication.gr_foreign_key_on_unique_key
    @group_replication.gr_parallel_applier_indexes
    @group_replication.gr_parallel_applier_sequential_indexes

commit 65930f9987151bfc0209d86aca691222034426d2
Merge: 8089c80 0dcc766
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Fri May 12 15:18:22 2017 +0530

    Null Merge (Merge branch 'mysql-5.7' into mysql-trunk)

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 8089c80e92a54c67775471cc736e003bbdbe3ee7
Merge: a6de211 b58cd64
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Fri May 12 11:16:40 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 a6de211c736f49a74ad433f7651b629552c9115d
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Fri May 12 09:45:31 2017 +0200

    Bug#25858461: FAILURE TO DROP DATAFILE FROM TABLESPACES WITH MULTIPLE DATAFILES
    
    Problem: It was not possible to drop a tablespace file from a general
    tablespace which had more than one tablespace file.
    
    Root cause was that when a tablespace file is dropped, all tablespace
    files with a higher ordinal position will have their ordinal position
    decremented by one. Since the ordinal position is part of the PK of
    TABLESPACE_FILES, the store following the drop would result in an
    pk-update of the files which had their ordinal position decremented.
    
    But pk-updates are not supported by the store-implementation in
    dd::Weak_object_impl as it searches for the new key and only performs
    an update if this key is found. When the key itself is being updated
    searching for the new key is wrong and could cause the wrong tuple to
    be updated, or as in this case, a new tuple to be inserted without
    deleting the tuple with the old key. In this case such an insert was
    rejected because both the old and the new tuple had the same value for
    TABLESPACE_FILES.file_name, and there is a unique constraint on this
    column.
    
    Solution: When dropping a tablespace file, all the files must be
    dropped from TABLESPACE_FILES first, and then the remaining files (that
    were not supposed to be dropped) must be re-insterted with the correct
    PK and file_name, so that duplicates are avoided.

commit a226f7becdb099f8da589e93c62ac51f92f210bc
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri May 12 10:13:11 2017 +0200

    Bug#26005645 DYNAMIC PRIVILEGES NOT LOADED ON BOOTSTRAP
    
    Follow-up fix to main.mysqld--help-notwin and funcs_1.processlist_priv_ps
    
    Approved by Kristofer Pettersson <kristofer.pettersson@oracle.com> over IM.

commit c5bfe081e5591984644ccac0f3064d53861dc59c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri May 12 12:18:26 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Change default.push-ndbcluster to run the standard 'all-default'
      tests to match the other builds
    - Add --debug-server and --skip-combination options and remove the
      unnecessary --binlog-format=mixed option on vanilla build

commit de44cd97263289ccaa95ba43e5121fb3c1e44570
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 12 12:34:07 2017 +0530

    BUG#25996981 : MTR: DOES NOT HONOR CUSTOMIZED MY.CNF FILE, GIVEN FROM COMMAND LINE
    
    Description:
    ============
    MTR does not honor the server parameter variables which were given in
    a cnf file using '--defaults-file' option.
    
    For example,
    
      cat sample.cnf
      !include include/default_my.cnf
      [mysqld]
      innodb_rollback_segments=1
    
      ./mtr --defaults-file=./sample.cnf  --start
    
      Type 'help;' or '\h' for help. Type '\c' to clear the current input
      statement.
    
      mysql> select @@innodb_rollback_segments;
      +----------------------------+
      | @@innodb_rollback_segments |
      +----------------------------+
      |                        128 |
      +----------------------------+
    
    Fix:
    ====
    Remove the unnecessary check added in mysql-test-run.pl which was
    causing MTR to pick default configuration file "include/default_my.cnf"
    instead of the configuration file specified using '--defaults-file'
    option.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 16192

commit 7fcdea89eeddecf732361b2bea252dadc3bab405
Merge: ae22917 42b81e0
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri May 12 10:01:36 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ae229174ddcb2cb69cb4af100bb49717f27915d0
Merge: 8b53979 61badeb
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Thu May 11 17:59:21 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 8b53979159a416fb033dd9ff526abe9845bf859b
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 11 14:33:48 2017 +0200

    Bug #25965593: REPLACE MY_QSORT WITH STD::SORT
    WL#8117 Compact In-Memory Temporary Tables
    
    Post-push fix for clang warnings:
    storage/myisam/myisampack.cc:1253:42: warning: array subscript is of type 'char'
    Fix: cast ' ' to int.
    
    unittest/gunit/dynarray-t.cc:44:20: warning: unused function 'operator<' [-Wunused-function]
    Fix: remove dead code.
    
    storage/innmem/src/table.cc:195:12: warning: moving a temporary object prevents copy elision
    Fix: do not use std::move here
    
    main.innmem gives valgrind warnings
    Fix: do not enable debug = "+d,innmem_api" if mtr has set VALGRIND_TEST
    
    Change-Id: Ic1d869d451cc70fada7a15314947914bf9b83030

commit 411cc44368c08db948d033edad940e5ba652ccd0
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed May 10 17:27:34 2017 +0200

    Bug#26040934 REMOVE OBSOLETE INCLUDE_DIRECTORIES IN CMAKE FILES
    
    This is a followup to the patch for
    Bug #25436469 BUILDS ARE NOT REPRODUCIBLE
    
    perl will sometimes report
    Use of uninitialized value $dir1 in pattern match (m//) at
    scripts/invoke-with-relative-paths.pl line 62.
    
    This turns out to be obsolete/wrong cmake INCLUDE_DIRECTORIES directives.
    
    Change-Id: I9d63ff273720ddc150880f9d4f251473b7f9e1df
    Fix: print a warning in the perl script if an unknown path is detected.
    Also: remove all obsolete INCLUDE_DIRECTORIES from .cmake files.

commit 71bfab6aee96abdeda9e82d7ebb6b380de79cf9f
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 11 09:25:05 2017 +0200

    Bug#26036648 PREFER TO USE NULL AS ARG TO REALPATH(), FIXES TEST FAILURE ON ALPINE
    
    From 'man 3 realpath'
    char *realpath(const char *path, char *resolved_path);
    The POSIX.1-2001 standard version of this function is broken by design
    
    The resolved_path == NULL feature, not standardized in POSIX.1-2001,
    but standardized in POSIX.1-2008, allows this design problem to be avoided.
    
    Change-Id: I890abae35f0026dda0621eb4083f2a134ed3345c
    Fix: use nullptr for 'resolved_path'

commit ca2d4d24159b3f50adbc5265b25cf0dfe9737294
Merge: dff4568 65b37c8
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Thu May 11 14:58:52 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 5773aeec3d5f4d2d572fe2ad3c1b35026479b5da
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu May 11 11:43:45 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - change ndb_sdi_serialize() to take table_def as pointer, this was
       written before table_def* was passed to most handler functions. Thus
       only converting to reference at the very last time before calling
       dd::serialize()

commit 06a2c2f609d67d02e854b8b194922d376e06d8aa
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu May 11 11:31:53 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - move workaround for BUG#25657041 into ndb_dd in order to
       locate all DD related code in one place. Rewrite workaround
       to just do it as we assume the table_def during inplace alter
       to always be hidden and have tempporary name.
     - cleanup comments, add DBUG_PRINT's and DBUG_ASSERT

commit 10fa3f786b61f38901c541fb4b1dd9bd188e1e51
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu May 11 11:06:48 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - remove hack for bug25487493 which showed a problem with the table
       definition during rename table, problem has been fixed upstream
     - add DBUG_ASSERT in ndb_dd_serialize_table() making sure that
       table definition is either not hidden or have a temporary name

commit dff456845117274d4cacab033e5ba1fdf43efe05
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Mon May 8 14:45:58 2017 +0200

    Bug#26005645 DYNAMIC PRIVILEGES NOT LOADED ON BOOTSTRAP
    
    If --initialize was used to start the server, the dynamic
    privileges failed to initialized.

commit 7687c186bda11714d16ccb553e90e58392fe2bef
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Wed May 10 15:22:29 2017 +0200

    Bug#26036406 MYSQLTEST LOWERCASE_RESULT CAUSES SEGV.
    
    my_tolower() refers to an empty pointer for multibyte character sets.
    Use my_casedn_str instead.
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
                 RB: 16199

commit b7e35522bb4a473ced6be15cd91132b752b2aa04
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 11 12:06:00 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP
    
    Post-push fix for perfschema.memory_aggregate_32bit
    
    Change-Id: I9f28e81f48c8f3106d5d22ff3e58bcf89cb52c56

commit df52db1933352f61696648e69470a911911560d8
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu May 11 15:17:52 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Fix comment to reflect the change to all-default-debug

commit ae83de33ce113cceb84affd89c573a3700bc04b4
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Thu Mar 9 13:22:17 2017 +0000

    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 f546379c3a07adc6a28943a870c58708ffa17c95
Author: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
Date:   Thu May 11 11:23:57 2017 +0200

    Bug #25877222: X PLUGIN REGEXPS ARE NOT FUTURE PROOF
    
    Description:
    The X plugin uses the built-in RLIKE function to recognize table
    definitions. These plugins use some niche features called collation
    classes that are probably only supported by the Henry Spencer regexp
    library, which we are moving away from.
    
    Fix:
    The regular expressions have been rewritten to use only POSIX features.
    
    Reviewed-by: Lukasz Kotula <lukasz.kotula@oracle.com>
    Reviewed-by: Martin Hansson <martin.hansson@oracle.com>
    RB: 16027

commit ac41b833dc8cf994943be5613bc5b5f6dcd1c37a
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu May 11 14:40:45 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Change default-push.vanilla to use all-default-debug rather than
      n_mix-debug such that it matches all other builds

commit 57de13808ab47d92a93294e914c2787f8d3316ed
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 11 10:49:06 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP
    
    Post-push fix for show_check_ci.result
    
    Change-Id: I1db6b9370f09167669c271fec4ca6a55d183f4cf

commit 8120a3cf7d03f383b026eea5becfae918c39b275
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 9 16:24:32 2017 +0200

    WL#8117 Compact In-Memory Temporary Tables
    
    Post-push fix: disable DBUG_ASSERT which assumed that we always build with
    -DHAVE_VALGRIND=1 when running valgrind.
    
    Change-Id: I9e777bad9da646280830d4ed8740a79818d29a39

commit 8a8db2e91ff500c66374cb74c316e3e337163a6f
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu May 11 10:28:01 2017 +0200

    WL#9323 Logging services: Improved error logging in 8.0
    
    Remove file pushed by mistake.

commit 9026f937f81e48820141d08b8ceba0a28db0cf36
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed May 10 11:25:18 2017 +0200

    WL#9323 Logging services: Improved error logging in 8.0
    
    Increase thread stack size for some tests to make them pass on Solaris x86.
    
    Approved by Tor Didriksen <tor.didriksen@oracle.com>

commit 333d4cc04fe3ac0c958fc4cfe1b190fcf7735a83
Author: Parakh Agarwal <parakh.agarwal@oracle.com>
Date:   Wed May 10 12:28:10 2017 +0530

       BUG#26023350 TEST: INNODB_STATS_DEL_MARK - SPELLING FIX (CONTRIBUTION)
    
       - fixed spelling error, uncommmited -> uncommitted, uncommited -> uncommitted
    
       Patch contributed by: Daniel Black

commit 86c934d2ee283bc688853dda019db14356eaf312
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu May 4 12:54:46 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP
    
    Migrate more HASH instances to std::unordered_map. In particular, the hash used
    for DISTINCT deduplication in some cases has been converted, finally giving us
    true variable-length keys in DISTINCT. This means that DISTINCT using hashing
    (not filesort) will use less memory, although the choice whether to use a hash or
    not is still made using a worst-case estimate.
    
    Change-Id: Ie2e10f5d959c43333a3a6418eca30cc5d23c8b13

commit 9ff14e07a97615cefdd51fd44e25d3470a26628e
Author: Ivo Roylev <ivo.roylev@oracle.com>
Date:   Wed May 3 19:30:52 2017 +0300

    Bug #25448205: One Definition Rule fix for SSL libs.
    http://rb.no.oracle.com/rb/r/16023/
    There is ongoing development about linking OpenSSL in dynamic library.
    WL#10524
    All the plugin symbols should be hidden.

commit cf0078d22cad372c30545837c4237ba4a3f0750f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu May 11 08:56:37 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - fix spelling errors, improve comments and rename some
       data type to improve code clarity

commit f3c74ababe07989bc8eeba7b11dfb04bbe16539f
Author: Parakh Agarwal <parakh.agarwal@oracle.com>
Date:   Thu May 11 12:26:02 2017 +0530

    WL#9490: Migrate main suite to run with innodb (part 15)
    
    Description:
    This is a continuation of WL#6923 Migrate main suite to run with innodb storage
    engine. Several tests were migrated in previous WLs. This one will migrate
    tests that need some functional changes to work with Innodb
    
    Solution:
    Tests have been migrated to use default storage engine Innodb
    
    Reviewed by:
    Anitha Gopi <anitha.gopi@oracle.com>,
    Amit Bhattacharya <amit.bhattacharya@oracle.com,
    Parveez Baig <parveez.baig@oracle.com>
    RB: 16087 , 16145

commit e23a1447ffc5a73470dc4a499547d2ca7ab991f8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed May 10 11:05:17 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result file due to change to utf8
     - fix comments

commit 91e68bea590beb5595142a688608daf21baa76fb
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed May 10 10:42:38 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - problem with DBUG_ASSERT detecting that same xid
       is used in subsequent queries when schema distribution
       participant run queries to perform the same DDL queries
       as on the schema dist client/coordinator.
     - fix by setting a new query_id before calling
         Ed_connection::execute_query()
     - remove old setting of query_id to 0

commit 6592a6c2828eb932065e975ea9547c1ed5a18319
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed May 10 10:32:32 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove unused include

commit 8c91cf2198d04b49bc0ad4ac0400ff68b3643655
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 15:41:59 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - syntax error thrown from query in the util scripts
       which wait for slave error. The channel name parameter now
       needs to be quoted, add quotes to fix.

commit 548cfa065769e022e500a1d51a646a82e4c01482
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 15:37:56 2017 +0200

    Bug #21074209 SLAVE STOPS, ERROR_CODE: 1296; HANDLER ERROR
    HA_ERR_ROWS_EVENT_APPLY
    
     - remove parts of test which has no effect
    
    (cherry picked from commit 5b779084da6673df096a003802056faecd1ed8ae)

commit d486126de22abbe8171898886c52cf0181b4b1e3
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 11:01:14 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable ndb_index_unique referencing another bug
       with inplace alter table

commit 7d11aa964c2ad14aee58ab37ce48e4cca2353a7c
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 10:33:17 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problems caused by utf8 as default character set
     - change the COLLATE test to use utf8mb4_general_ci instead
       of latin1_general_ci which has same effect
     - change one table to continue be created with latin1 to overcome
       max row size 14000 limitation.
     - accept new output from explains

commit 58153a08275798392eaf3754e89b143c2ba89453
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 10:06:26 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - accept new and improved error message saying that storage engine
       can't drop table, that is better than unknown table.

commit b053c06b2f1346e69a0c6150af4663951ae19574
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 09:59:27 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable ndb_restore_schema_partitions referencing wl

commit ed7686aebe9cda1f0ea450bc98a7eab7158732cb
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 09:47:27 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable ndb_import1 referencing bug

commit 84edbafd545d31c06694907367f48ec13b7b3acb
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 09:38:01 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable clusterj* referencing bug

commit 5fa5e140e15a8d04c00a5c7929b9848becb9668f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 09:22:22 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result for Innodb fk metadata change, RESTRICT -> NO ACTION is
       now same as NDB

commit 5c4399f64dbc259a7ea5bb126679ebc52558e831
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 09:10:47 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix test since fk name now must be unique in the database, rename
       fk* -> c2_fk*

commit 1ab3f2834bacf467c2282b71b66b5691c83dad2d
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 9 08:46:25 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problems caused by change to utf8 as default charset
     - set the mysql.ndb_binlog_index table to continue using latin1 charset
     - change test ndb_binlog_index to create some utility tables
       using latin1 in order to avoid exceeding max key length

commit b229e4c6c75c752828ff1f8fa0ae818e5c9b746b
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 13:02:27 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - change ndbinfo install scripts to use latin1 when creating
       the ndbinfo tables.
     - fix ndbinfo.test
     - to show the columns of a hidden ndbinfo table you now need to
       turn ndbinfo_show_hidden on, since before accesing DD the
       ndbinfo_find_files is asked wheter to allow it or not.
     - change to uppercase column names in information_schema.views query
     - fix minor merge failure after embedded is removed

commit 5a0b32499684cbec40fb04c577a6a02d7e539523
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 12:39:20 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problems caused by change to utf8 as default charset
     - update .result files for change from latin1 -> utf8
     - create table with character set latin1 in order to
       avoid hitting max limit for row size or key size
     - create table or columns with character set latin1
       to avoid diffs in explain and checks for column
       lengths

commit 51ed340cfb7831d083f7708108699c9f3ba0e0d4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 11:39:41 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove usage of include/not_embedded.inc which does not exists
       anylonger since embedded is removed

commit 73eae917d48e61f6df0926567e1ad0d06d84a9b8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 10:57:51 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problem caused by change to utf8 as default charset where the
       explain output new shows a 4 times larger key, looking at test case
       that seems ok

commit 3fe6279b0be5b4721905e1ff4fa28fc5b0aafcdb
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 10:51:40 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problem caused by change to utf8 as default charset
     - change to create some tables using latin1 as charset in
       order to avoid that they exceed the 14000 bytes row size limit
     - fix result files due to change to utf8 in other cases

commit 039b8cb930106c2c4aeeeff1204add252b06672d
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 10:19:56 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problem caused by change to utf8 as default charset
     - change to create the mysql.ndb_apply_status on the slave using
       latin1 as charset, this is the same way as ha_ndbcluster creates the
       table and they should be identical
     - fix result files due to change to utf8 in other cases

commit afbf4c35ad25d8879636c65d42c008d0aaa3cce8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 09:49:34 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problem caused by change to utf8 as default charset
     - change ndb_binlog_size_based_rotate.test to create the test
       table using latin1 charset to avoid exceeding the 14000
       bytes row size limit

commit e1ce236a658afd06eaad44afca49489f25790c30
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 09:43:07 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files of ndb_binlog tests which fails after switch to
       utf8 as default charset

commit 95d4b9fdeed2a2e0f3fa6c9e976bbd781f1a8dcf
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 09:19:49 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files of ndb_binlog tests which fails after switch to
       utf8 as default charset

commit ebc5c26142e4e97c14a8e9374a36c7d84a9e5c66
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 09:05:45 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result file of rpl_ndb_extra_col_slave.result which sources
       upstream include file which got an additional printout as part of
       "WL#8971: Deprecate and remove partitioning storage engine"

commit fd9f8d902a28b9c18d39191f1076177ad2977785
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 09:03:22 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files of ndb_rpl tests which fails after switch to
       utf8 as default charset

commit 97409d8764089d450e1063ae16f54bcbb595d399
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 08:54:34 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable three tests of ndb_ddl suite due to problem
       with rename table where the table is not properly renamed
       on participant

commit b7130a843df5d5cabca3d8869019ffaf359d5c46
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 08:51:27 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files of ndb_ddl tests which fails after switch to
       utf8 as default charset

commit 223bad762c14abe083bb4ee199018c0fc8436308
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 08:41:15 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files of gcol_ndb tests which fails after switch to
       utf8 as default charset
     - Some tables are changed to continue to be created with
       latin1 charset
     - most "show create table" queries now show ut8mb4 as charset
       instead of latin1

commit 35bf48388f76bf79ffd6dc7c69c2237bc26fcca9
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon May 8 08:34:30 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files for ndb tests in the json suite which
       now fails due to spellling error fixes in provoked error messages
       as well as new testcases added to sourced include files.

commit 55bc30e30ecb173141c758e4a7684dbc9c4c81fc
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri May 5 16:11:20 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - implement ndb_dd_drop_table() and ndb_dd_rename_table() which will
       drop and rename table definition from MySQL DD.
     - the previously used functions has been removed from DD API

commit cc6e4d0f452ab34a171ec7c850505fad15bbacd5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu May 4 11:32:43 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - improve verify_mysql_dd.inc to also check that
       content of the DD matches on all the connected mysqld(s)
     - also improve verify_mysql_dd.inc to verify that the
       physical data directory on disk is now always empty(for NDB tables)
     - this fix shows problem in ndb_ddl.alter_rename_copying,
       ndb_ddl.rename_single and ndb_ddl.alter_rename_simple since the
       renamed table is not properly renamed on participants.

commit 81f7a96abc9b18a187a924692de66c7217dd3bf4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 26 11:19:12 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable tests referencing WL# or BUG#

commit 678ffcbf77de765eea31637e69e76ac22439a5f4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 26 10:46:12 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix ndb_rpl_circular_2ch_rep_status.result, variable names
       from performance_schema are no longer in upper case

commit bef85a6711b42bbc569e4b7a9dd761981b5c045e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 26 09:24:38 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable gcol_ndb.gcol_non_stored_columns_ndb referencing bug#

commit e8bd1fad994de53eec226bfcff6b59c5b3a408b9
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 25 12:35:49 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable tests referencing WL#

commit 6e5ae1c3a1103eb50edbe180e3a178346de4a077
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 25 12:35:10 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix one EXPLAIN which no longer contains "filesort" but looks
       the same otherwise

commit 7fc7595bcbb5ab120d5ad94add89008ff561f6f8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 25 10:31:22 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - expected error code changed from 3014 to ER_UNSUPPORTED_EXTENSION,
       the meaning is however still the same, accept new error code.
     - add SHOW WARNINGS after expected failure to check that a sensible
       human readable message is available as warning
     - shorten the warning message as it exceeded the size available
     - improve comments where warning is generated, remove redundant code
       to set logging which was already set to exact same value also without
       any condition.

commit 8980e5d30c10d00358a02ebe4c17abc340c30ffe
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 25 08:32:14 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - when mtr.pl is run with the --mysqld=--log-bin option all tests
       will run with binlog enabled. This causes the mysqld(s) to print
       incident events to the binlog when they loose connection to cluster.
       They will also print a warning to the log files which is detected by
       mtr.pl and causes the test to be reported as failed.
     - fix by adding suppressions for this expected error message to
       the affected tests

commit 7034015264d962c71215bede558173201e4c736d
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 24 15:50:34 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable tests referencing WL#

commit 6010878d63afde17ca16a99cb5c1a3bb2d72eb94
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 24 15:43:39 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - remove DBUG_ASSERT(false) from error path which is triggered
       by ndb_global_schema_lock_error
     - fix result of ndb_global_schema_lock_error to contain one
       error message less
     - disable ndb_global_schema_lock due to problem with alter
       leaving table name behind

commit aae20e73e3805715491bd03a81e1e57e5e9d4c42
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 24 15:24:22 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - some information_schema tables and columns are now cached, tests
       which want to read the absolute latest value need to turn the
       caching off or repopulate using ANALYZE TABLE
     - fix problem with ndb_optimize_table which read
       information_schema.tables.data_length before and after OPTIMIZE TABLE
       to determine if optimize was succesful by turning caching off
     - remove unnecessary DROP TABLE IF EXISTS, FLUSH TABLES, use of
       sever variables and restore of session variables.
     - improve comments

commit e6ba1dc59bc143107b4baaa9da03f69febf107c3
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 24 08:27:56 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable tests referencing WL#

commit ecac3044497dc9cb6d9e803724d06b32718e0abd
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 24 08:27:15 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable test referencing WL#

commit 9b672a054d35d046f00ec830bf76c0f18b14da54
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 15:39:04 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable testcases referencing filed bugs

commit a7afe813e32f0fb6ce0155a717f8efd54a156c9f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 15:16:53 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix problem with test which runs although it has a skip. This is
       due to --no-skip being used in PB. Instead disable test in
       disabled.def

commit 6280cd408488555237c4de4b010d7bc1bc987ba4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 15:15:57 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable three ndb_binlog tests due to problem with altering
      back and forth betwen engines

commit 75bdd485038e6d206e75195b088b72eafb8e1be5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 09:30:08 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result file for ndb_statistics1 due to EXPLAIN change which looks
       reasonable
     - remove useless "drop table if exists" and "end of 5.1 test"

commit dae9dd785f9dee0e3dc760a039f1fb2f4c03e9f4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 07:37:01 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result files for json tests for ndb, compared with the same
       changes which have been done to the result files for innodb.
     - also restore the result file for json_group_concat_ndb which seem
       to have been lost in merge.
     - depends on patch for BUG25923508 that add --sorted_result to
       the sourced include files.

commit 2af5b1ac8ff97f1417a0f0c074960933d4cc8131
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 21 07:34:55 2017 +0200

    Bug#25923508 JSON FUNCTIONS TEST QUERIES RETURNS ROWS IN RANDOM ORDER
    
     - when sourcing the json_functions.inc file to run with NDB some
       queries shows that the rows are returned in undefined order. This is
       normal with a engine like NDB and can be fixed by soring the
       result.
     - fix by adding --sorted_result before the queries which show
       undefined behaviour
     - update .result file for json_function_innodb with the different order

commit b8faf42f116fcd075594cf8bae5af4d6b5f91fb2
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 20 10:53:47 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result of ndb_index to accept new explain output
       from group by query, optimizer have changed
     - fix result of ndb_index_unique to accept new explain
       output, the "Using where" clause is gone.
     - fix result of ndb_index_unique to mixed case when querying
       performance_schema.session_status

commit 0a2a5b598d6f58666716031b23309f0ef9169896
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 20 10:36:05 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - hardcode protection against dropping the performance_schema database
       on participant mysqld(s). This has originally been protected by the
       check for "local tables" but until this has been reimplemented
       it can be hardcoded.

commit ada3e42067c59e263186ea17bb34c197d12e226e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 20 10:13:11 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix ndbinfo.test
     - to show the columns of a hidden ndbinfo table you now need to
       turn ndbinfo_show_hidden on, since before accesing DD the
       ndbinfo_find_files is asked wheter to allow it or not.
     - change to uppercase column names in information_schema.views query
     - slightly different counter values, seems reasonable and most
       likely changed because of optimizer
     - remove unused argument varnings and fix spelling error in
       ndbinfo_find_files()

commit b90f230fbcf79b14d79a0bdeae309b84a43c0af8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 20 09:13:54 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable ndb_wl946_main since it uses ndb_restore

commit 8c7dac108d6fe7c10e4e76f6c2c467e5c2bf47fa
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 19 10:59:44 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable test which fail becuase of problem with inplace alter table
       and foreign keys

commit 2de3e954bba2e4a310c7e77cb1b874055c32532f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 19 10:33:15 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - prefix inplace alter table related functions in ha_ndbcluster
       with inplace__ or prepare_inplace__ to know what they are used for.

commit 93e19151fdcaf09b8ddec20a52adb8fb9241f8d7
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 12 10:14:19 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix test since fk name now must be unique in the database, rename
       fk1 -> emp_fk1
     - update result file with the warnings which occur when trying to
       create table with pk using HASH in InnoDB

commit f298634ec69750304e02e333c0f23d3c7e659777
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 11 11:17:08 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - cleanup ps_7ndb, put skip include files at top, improve comments,
       remove outdated include directives.
     - disable test ps_7ndb after having filed bug

commit aa220aad16d6a18bfdb7b034226417d82ae59414
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 10 13:59:24 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable tests after having filed bugs

commit 2bebf5ca9c997657275806dd4b856db0d180ba49
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 10 13:52:48 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix ndb_join_pushdown_*.result
     - different explain outputs caused by WL#s implementing
       descending indexes, causing "Using filesort" to be removed for
       some queries and "asc" to be appended to explain output
     - different explain outputs caused by WL#s implementing
       optimizer cost model adjustments causing cost estimates to change
     - variable names from performance_schema are no longer in upper case

commit 3eac7f7ee5872648d32c4eeb11e9d7b75ae2f41f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 10 13:08:35 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - apply uniform name pattern to the status variables and status
       functions of the ndbcluster plugin
     - improve comments
     - move index stat related status variables into its implementation
       file using same logic as ndb_conflict
     - remove unused "number_of_replicas" variable and related commented
       out code
     - fix unused arguments

commit 1e948b9966ed668fb757534dc2e3a8a696043b9f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 10 12:09:24 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - add testcase for checking output from performance_schema status
       variables.
     - add testcase for checking output from performance_schema variables.

commit eedadb6eb8a3c65db5f4df48f685b1f4b23b9d34
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 7 16:00:58 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable testcases after having filed bugs

commit 20431299d21a6de98589a4a2c0953f8f5a56ef14
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 5 10:22:51 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable few more tests which fails due to new DD and need to be fixed
       by WL#9185 and WL#10167

commit f36469949110f0b83eda76d3aed05d3452d4a2dd
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 5 09:36:34 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - when mtr.pl is run with the --mysqld=--log-bin option all tests
       will run with binlog enabled. This causes the mysqld(s) to print
       incident events to the binlog when they loose connection to cluster.
       They will also print a warning to the log files which is detected by
       mtr.pl and causes the test to be reported as failed.
     - fix by adding suppressions for this expected error message to
       the affected tests
     - improve comments of ndb_disconnect.test and remove unnecessary
       drop table if exists

commit a06c2aef447c7718138a501286314fa2366a41cb
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 5 08:37:14 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result file for ndb_temporary, column names from
       information_schema queries has changed to uppercase

commit cb50974c8cedc661ff7ce1604b9dbb9de097c017
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 14:06:34 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - factor out the code which checks if an incident should
       be written when the binlog starts up.
     - add verbose messages describing the phases of the logic which
       detect when incident should not be written
     - mark ndb_component log functions as being const so they can be
       used by const functions

commit 40d3b9cfe8e4d896e842edc80d466b65503ce233
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 12:05:38 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable tests which fail when they can't discover tables created
       by NdbApi tools

commit 2133492839b88413b15eac47b41170b6cefffb78
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 11:53:49 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable tests waiting for WL#10665 Extend size of extra table metadata

commit de35c8961c1cf4d5ea802c157844e375dd4ad003
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 11:25:24 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - disable also ndb_restore_compat_compression waiting for on the fly frm

commit 666b2cf6872c4ac88230be0be599d0d79c3c7a4c
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 11:16:35 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix result for ndb_condition_pushdown, query has changed explain output
       to use index scan instead of range

commit e6ead73523f50a6b5938ea151fac5be78f6010a7
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 10:59:16 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable ndb_rpl_gcol due to bug 25827408
     - remove unnecessary DROP TABLE IF EXISTS and disable_warnings
     - fix .result file to add _latin1 in SHOW CREATE output and add the
        two warnings that always occur when setting up replication

commit 160ebfe701d2a9a19429c025bcaa6d17545ce309
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 4 10:33:07 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - wrong result since tests depends on number of rows in mysql.user
       which may have varying number of rows.
     - fix by rewriting test to simply load the rows table with 1000
       ordinary inserts

commit 92a9e201487e5f045882fabcdc0a28240fc1d0d5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 3 12:45:11 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - update .result files for gcol_ndb tests which sources upstream
       include files.
     - fixing diffs caused by "WL#1074: Add descending indexes support"
       which turn off filesort.
     - fixing diffs caused by "WL#8737 IO aware defaults for optimizer
       cost constants" which changes the optimizer const constant
     - siumilar fixes has been done to upstream .result files
     - this patch requires fixes to gcol_keys.inc and gcol_select.inc
       done by bug25820923

commit c5f1e1c09d1c2e385c275d42dbb775be555d32d2
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Apr 3 12:41:39 2017 +0200

    Bug#25820923 SELECT ON NON INDEXED GCOL NOT USING FILESORT NEED
    SORTED_RESULT
    
     - use sorted_result for three queries which are not guaranteed to
       have determinstic outpout since they are not using filesort anymore

commit b2a2e2965114aec867b11a3d56aa74ea7732ccf9
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Mar 31 11:49:46 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - tests for replication between NDB and other engines
       failed since MyISAM no nlonger supports native partitioning.
     - fix by detecting if slave or master is using MyISAM and skip
       testcases using native partitioning
     - remove commands which removed .frm and .ndb files
     - remove useless "disable_query_log"
     - remove dubious IF EXISTS in DROP TABLE, if the table din't exist
       the preceeding commands would have failed.
     - remove "disable_warnings" for rpl_ndb_2other which disabled all
       warnings in the entire test, instead record the warnings
     - adapt .result files to new printout from SHOW CREATE TABLE
       for table with PARTITION BY HASH which is now missing
       one space.
     - remove usage of force_myisam_default.inc from these tests

commit 566aa1376699ec989b31b95f3e0aa90a597ad58a
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Mar 30 10:14:24 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - missing mdl read lock when serializing a table with tablespace
     - acquire mdl lock on tablespace name before serializing tabledef
       unless mdl lock on tablespace name is already held
     - NOTE! this is quite a common path since normally handler::open() are
       called without mdl lock on tablespace name.

commit 89feb1b8f06f069182c00d676ca202963c7be891
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Mar 29 09:30:12 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix after "WL#9711 : Remove *.require files" which accidentally
       removed code to drop help_debug table and enable_query_log
       in have_ndb_debug.inc
     - fix comments, add comments and cleanup have_ndb_debug.inc

commit 8d4e2425630e123efb098d4330ea29ea427fde39
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Mar 17 11:36:32 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - Fix after "WL#9073: Add an MTR option --no-skip to force all
       the tests to run on PB2"
     - Add skip no skip list entries of the exclude file
       that is deductible from the build and or host system
     - Fix the run_ndbapitest.inc to properly skip test also when
       mtr is running with --no-skip and the ndb test binaris have
       not been comnpiled(this is quite common and not an error).
     - Change name of the file generated by run_ndbapitest.inc which
       is then sourced to end in .inc and registered the generated
       file in excludenoskip.list

commit c9ad08d7bde97fd5b2cce06347f778367b45a25a
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Mar 28 11:59:15 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - change tests which verify table properties by looking at
       information_schema.tables.CREATE_OPTIONS since those now are
       returned in lower case.

commit 086d4517dced85a0850b30e5c0d1450216051e55
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 12:38:51 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - problem with "drop table" not being distributed to
       participants when share didn't exist on client
     - fix by taking the db and table name from arguments instead
       of share->

commit e63e7073b7edf2dbc76bf0c291d20a46d82b2e07
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 11:23:43 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - change drop_table_impl() and drop_table_and_related() to be static
       functions only in ha_ndbcluster.cc

commit b7fa5ce6db2a8deeb9f3c8aeb65c694768b18bd8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 11:13:42 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - remove unused code path, the handler is never open when
       delete_table() is called

commit 516e1a9c631af6b421a9498ebbdeec9bd6706db8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 10:50:47 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - remove duplicate check for "schema dist ready"

commit fe21b03f02d3adcd69f389a09066c57bcd949973
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 10:43:00 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - remove call to handler::delete_table() when dropping table, there is
       no longer any files to be removed
     - improve comments

commit bc35886fb12cc0f3436895bc7bb8a277e0051d56
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 10:28:22 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - split delete_table_drop_share() into two functions, the two arguments
       "path" and "share" used two different code paths.
     - NOTE! the share pointer may be NULL

commit 75a6a2b8433016bed83331b9acd43737be678e28
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 27 10:07:41 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - remove do_drop goto from delete_table_drop_share() by factoring out
       common sub function

commit fd06fdac5f7d2f7a9738b57bd450cd5de23465e4
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Mar 16 10:56:54 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - improve comments for ndbcluster_alter_tablespace()

commit 5c520a8eea5d5a8b31eddb701c07242f3c49677f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Mar 14 09:22:38 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - fix faulty comment

commit 9a3ce3c2fa1348ba163ec09ba25d7fea62dfd2ef
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Mar 14 08:50:47 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
      - improve comments and ndbcluster_discover() explaining how it's
        not possible to return an error from the function, only table
        exist or not can be returned

commit 394e031c1231790214ce58a4126c503da1c5448c
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Mar 9 10:34:04 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - change ndbcluster_discover() to magically detect when it's called
       from ha_table_exists_in_engine() and return a "dummy table exists"
       since caller is really only interested in if the table exists or not.
     - change ndbcluster_discover() to verify the version of the
       extra metadata since currently only version 2 is supported. Tests
       hitting this path should be disabled until WL#10167.
     - change ndbcluster_discover() to crash the mysqld since the returned
       error is ignored by the caller and thus would lead to infinite hang.
     - disable tests hitting the unsupported path, most of them by restoring
       a backup from older versions

commit 7db1370ba97e59e55634a26fb21e004d52952fa6
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Mar 7 12:00:21 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove usage of my_errno() and set_my_errno()

commit 738c56bc1c0306a1d9ace7df4eb6f548b997468b
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Mar 7 11:55:51 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove check if database directory exist in ndbcluster_discover()
     - remove check for "local tables" from ndbcluster_dicover(), not
       relevant
     - move all code for "create from engine" together in
       ha_ndbcluster::create() and add a comment describing what happened
     - remove usage of my_errno after call to
       ndbcluster_create_binlog_setup() which never set my_errno, instead
       use return value.

commit 3e5ac81eb5637882d69504556246437aeeb14881
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 6 20:31:17 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove testcase for Bug16890703 which no longer is relevant
       since it removed files and directories from mysql datadir
     - also remove redundant "drop database if exists", the database will
       never exist when test starts

commit b9fed099fbd65fcaf403858e4fbdecb70b1e1dea
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 6 15:41:47 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - allow the schema distribution setup to overwrite
       table definition of mysql.ndb_schema and mysql.ndb_apply_status
       if they already exists in DD
     - remove too verbose printout for "schema distribution setup failure"
       which happens "all the time" if NDB restarts

commit 9ef914774af606be926dcabc33ce7932972809b8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 6 11:53:41 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - Install dummy callbacks to avoid writing <tablename>_<id>.SDI files
       in the data directory, those are redundant since the ndbinfo tables
       are hardcoded(some in NDB and some in ha_ndbinfo)

commit e17f293d0db5cb1e32ee2658fd2bca102fb030ed
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 6 11:49:37 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove unused ndbinfo_hton pointer

commit b7e42871d4820b771af71ea4b6b740557c2a69f9
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 6 11:39:05 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove duplicate function mysqld_close_cached_table() and
       use ndb_tdc_close_cached_table() direct

commit cac34b63e80ea4b9df4c264d02e7a41e40d7b02f
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 27 10:55:30 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
    - allow truncate table to overwrite table already in DD
      on remote mysqld.
    - add test for TRUNCATE to suite ndb_ddl

commit 4a84eab3a326fdc5a9fe648d8ee91e1b55f9c216
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 23 11:07:31 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - change participant code for inplace alter to install table into DD
     - remove old code mysqld_write_frm_from_ndb() and the readfrm() plus
       writefrm() stubs.

commit 403434d6fe43a131762023f183a63ac9953b238e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 23 08:06:13 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove temporary printouts of sdi

commit d2fe3c76834fd156b9590aee2a3daf0c63204aca
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 22 11:06:33 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - mark check_implicit_column_format_change() as const

commit b022973292b8e96cb94b5be82c8fe8f16c00ac26
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Feb 21 12:12:12 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove printout of my_errno() from ha_ndbcluster_binlog.cc as none
       of the functions called will set it when they fail.

commit 2cb6f4924423b8219791acd19b72ca11fb90bfd5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Feb 21 12:06:24 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - implement support for installing table from NDB when the table
       already exists in the local DD. This is acheiveed by dropping
       the existing table from local DD before storing the NDB table

commit 606df2cb26438fc9e5ca6531925147d8c30a8dcc
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 17 10:19:49 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - add note in verify_mysql_dd.inc to make it clear
       that it nowadays don't check the actual DD but rather
       only the data dir of mysqld. Also describe potential
       improvement of the script to properly check DD as well.

commit a33134d0a8cb1e9c88e4d90a0a360565b11d6ab7
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 17 10:18:20 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - fix alter_rename.inc to not look for existence or non existence for
       .ndb or .frm files in the data dir of mysqld. There should never be
       any such files nowadays, of course that could be tested but the
       purpose of the test is rather to check that things have been properly
       altered or renamed which is being checked separately using SQL
       statements.

commit 659442af1d5de5f0e9cecf7511a64463fa2361fa
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 17 10:12:58 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - the old way of renaming a table in MySQL's "dictionary"
       by renaming some files does not work anymore
     - fix by renaming the table in DD instead
     - acquire more mdl locks since the rename requires that
       exclusive mdl lock is held on the new name

commit e27b0781130ad37c794c912a04ac0e920fdf3434
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 16 08:30:00 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove temporary buffers for db and table_name since
       drop_all_triggers now takes the expected "const char*"

commit 23dd4f224a9f50aab80059a1ef258540016d8c96
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 11:57:20 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - Install dummy callbacks to avoid writing <tablename>_<id>.SDI files
       in the data directory, those are just cumbersome having to delete
       and or rename on the other MySQL server

commit 9f266c95c252194f75bdbc7fa633f95ca399a27e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 11:17:42 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - fix spelling errors in comments

commit adc9876d39138aab6f1ac59a987e2f0667ee59ac
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 10:26:23 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     -remove ha_ndbcluster::extra_opt() which is identical to default
      implementation of handler. The extra_opt() function is only
      called with HA_EXTRA_CACHE which ha_ndbcluster has no interest of

commit 134dd4559f05024fedbc1851b277f901a00ddc86
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 10:18:48 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove unnecessary "using std::min"
     - remove unused "using std::max"

commit af366f2c719167132d281588a1063344a2103479
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 10:15:01 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove ha_ndb_ext variable
     - hardcode ".ndb" in ndbcluster_check_if_local_table() and
       add comment describing that function need to be rewritten

commit 966b5039a4656f9dc3da9e572562ed85ada32705
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 09:31:54 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove ndbcluster_drop_database_leftovers() which simply can't
       happen anymore now when there are no "local" files for a NDB table

commit c01d26aa351b0b821d6df10a315fcbc7cf3a2c10
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 09:29:03 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove ha_ndbcluster's list of file extensions, it has none now.

commit ce5d223754e40ffc333e1aad71002ea60d6e8961
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 15 08:54:12 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove writing of <tablename>.ndb file
       in the database directory

commit 9d4e9c15b277f627fea9b4c52a6df7f0794a049e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Feb 14 11:26:50 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove usage of Disable_autocommit_guard and instead flip the
       bits directly. This is since the Disable_autocommit_guard
       class detects how the "ndb binlog injector thread loop" is holding a
       transaction open. It's not a good idea to flip these bits while
       transaction is open, but that is another problem.

commit c8a03f47219752266a4f34d35344f029389b02b5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:56:56 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - move ndb_create_table_from_engine() verbatim
       into ha_ndbcluster_binlog.cc which is the only
       place where it's now used.

commit 22d14d6a6489d55fd436625170f609823fd6dc8e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:53:21 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove clean_away_stray_files which is a noop
       now when ndbcluster_find_files() does nothing

commit b5a987b3a25396a877c8dd64ef3049b6d15b1a5c
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:38:01 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove last parts of code in ndbcluster_find_files()
       which fiddled with local dictionary or the list of files.
       Now, it's only functionalty is to hide the mysql.ndb_schema
       table. However it seems like with new DD it should be possible
       to mark that table as hidden and skip this code.

commit fc96ab828e93ec799224f4547793be8e0128d610
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:30:16 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove code from ndbcluster_find_files() which
       takes the global schema lock, it's not necessary
       anymore since the function does not modify the
       local dictionary

commit f1a6d1d48b32be2c56a674fadb86de4aff61f86a
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:25:02 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove code from ndbcluster_find_files() which
       created those tables (in local dictionary) that
       existed only in NDB

commit 7932045e8dd6a5f9bdabca609eb41abfc465e56d
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:14:42 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove code from ndbcluster_find_files() which
       call ndbcluster_create_binlog_setup(). This was done
       regardless of if the table is already "open".

commit fdbe24fc3d7549e888e4e46906ef0af254a7c60b
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:08:55 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove code from ndbcluster_find_files() which
       delete tables (from local dictionary) which does not
       exist in NDB

commit c67da59eec6108dcf1562720e8522d8a41139697
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 13 11:01:08 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove code from ndbcluster_find_files() which
       add tables(to the local dictionary) reported to
       exist in NDB

commit e2e931e16928c2d5416246d31cc53b0d351f973a
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 10 09:17:27 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - move function tables_get_key to just above the function where
       it's used, add comment
     - add verbose log printouts in ndbcluster_find_files()
     - move some variables in ndbcluster_find_files() into local scope where
       they are used

commit 4f6866713ff1f049a3fb48049210338ff2612e01
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 10 08:47:07 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
    - fix ndbcluster_find_files, remove extra curly brace
      for outdated gcc, move variable declarations to
      where they are used

commit 1753801d7223b18cc2ed7f7c2bcb920b025a855d
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 9 15:47:47 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - fix indentation of
         Ndb_binlog_setup::clean_away_stray_files(),
         Ndb_binlog_setup::find_all_databases() and
         Ndb_binlog_setup::find_all_files
     - change all log printouts in those functions
       to use ndb_log_ functions

commit 33a997fecdee8aa50fae2290c1269d44c5e13ea6
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 9 15:28:46 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - fix indentation of Ndb_binlog_setup::setup()
     - change all log printouts to use ndb_log_ functions

commit ff60fc56a6b539fe0dc4a3c0a0cd1b26a4da7e30
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 9 14:07:03 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - use Disable_autocommit_guard to turn the autocommit flags
       off and on while accesing the DD

commit 40984542a7ed0575b3e47648865a243e9e97286e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 9 10:08:23 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - skip tables with unsupported extra metadata version in order
       to silence error log printout about failure to install
       table from NDB

commit f570cc39ec9acffee93c984c1e8d120cba6c4964
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 8 13:22:29 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - the old way of removing a table from MySQL's "dictionary"
       by removing some files does not work anymore
     - fix by removing the table from DD instead

commit ac690053ef063ee9d9ca7c30b2245ae13bb929e1
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Feb 6 16:49:02 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - rewrite ndb_create_table_from_engine() to fetch
       the sdi from NDB, deserializes it and store it in DD
       using ndb_dd_install_table()
     - add function ndb_dd_serialize_table() which fetches
       table def from DD and serialize it

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

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

commit 24da39b3a053e07fc55f609fbd7488066a8166a8
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 10 18:29:01 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Suppress warnings for undefined identifiers in bison output in
      ndb_import
    
    (cherry picked from commit 405dcc81f7edea2f7ffe49feab19268f8b79159a)

commit 2b1be795c09470afeed034b375d3523ea9f05d9a
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Apr 27 23:58:31 2017 +0200

    Use {UINT,INT}32_{MIN,MAX} from cstdint.
    
    Bug#25974560 COMPILER WARNINGS ON WINDOWS: WARNING C4005: 'INT32_MAX' : MACRO REDEFINITION
    
    Remove the definitions for the above from ndb_constants.h.
    
    This should get rid of build warnings on Windows.
    
    Replace use of int32_t with Int32, and include stdint.h with ndb_types.h
    in CharsetMap.hpp

commit fa0b34d759db0d4e9919ad00002972c8d32a2b8a
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Tue May 9 22:18:49 2017 +0300

    Make return codes consistent wrt out-of-mem and disk-full
    
    InnMEM handler methods should return HA_ERR_RECORD_FILE_FULL when
    the disk is full and HA_ERR_OUT_OF_MEM when memory cannot be allocated
    from RAM (e.g. malloc() fails).
    
    Also, minimize the usage of try/catch constructs which we cannot avoid
    because our std-compliant Allocator must throw an exception instead of
    returning nullptr when allocation fails (expected by std:: containers).
    So we limit our try/catch to e.g. try { vector.insert(); } catch { ...
    
    WL#8117 Compact In-Memory Temporary Tables
    
    RB: 16193
    Reviewed by: Marcin Babij <marcin.babij@oracle.com>

commit 934cf05e6bb7af56b25b6867463423d8630ca65b
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue May 2 10:41:39 2017 +0200

    Bug #25997748: MIGRATE FROM HASH TO STD::UNORDERED_MAP
    
    First of many patches needed to migrate from HASH to std::unordered_map;
    add some useful helpers and convert the first few instances over.
    
    Change-Id: Ie83e8b5ba6b1ab2037d082c3c66479f0f64671dd

commit 2ea7f09fed70039660729fe98733b9a3cbcac82d
Merge: 324a65b b6d6b7ba
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed May 10 14:17:36 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 324a65bec658e9769bab1a9882cbfa528cc0930c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 9 16:43:31 2017 +0200

    WL#9344: Logging services: error messages
    
    Post-push fix: do not set MY_BASENAME on compiler command line, it
    serializes the build on windows, thus more than doubling the compile time.
    
    Instead: implement it with a constexpr function examining __FILE__
    
    Also: silcence a warning for name shadowing.

commit 1eba550dc883dd55f420af598a1eeafcb124268f
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 4 16:34:27 2017 +0200

    Bug#19442959 DO NOT CALL EXIT() FROM INNODB
    
    Rewrite tests to handle 42 as exit status from mysqld.
    Remove entries from disabled-asan.list

commit fa8bc9fa0383216c4282fd7d351b55339f8c5359
Merge: e4bcb58 f2d9e31
Author: Jens Even Berg Blomsøy <jens.even.blomsoy@oracle.com>
Date:   Wed May 10 09:37:55 2017 +0200

    Null-merge from 5.7.

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 e4bcb585df39be75822c3aed54ebbd54dab120f5
Merge: e430f56 3d7a7ea
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed May 10 09:26:23 2017 +0200

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

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 e430f5626e05bec4243e0936e98218ea73abc154
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Wed May 10 08:42:58 2017 +0300

    Avoid calling memcmp() with NULL arguments even if length == 0
    
    memcmp(ptr1, ptr2, length) produces an UBSAN warning that the pointers
    are NULL even if length is 0. Avoid this call and proceed as if the
    strings are equal if length == 0 (memcmp() with length 0 returns 0
    anyway, so this is a non-functional change).
    
    WL#8117 Compact In-Memory Temporary Tables

commit 59436e6c5f8f37990c64d54fc0a19db9a74de309
Merge: 1e6057a c347aec
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Tue May 9 17:45:06 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 1e6057a18f9e8fea02f2eae8c87f4e2af0a15a0a
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Tue May 9 18:29:37 2017 +0300

    Fix compilation error when PFS is disabled
    
    WL#8117 Compact In-Memory Temporary Tables

commit b4a28cc8c4d7d942cc6a2c5b295d69ee97106a38
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Tue May 9 18:17:26 2017 +0300

    Simplify constructs in storage/innmem/src/test.cc
    
    Use H h(...) instead of std::unique_ptr<H> h(new H(...)); and then
    h.foo() instead of h->foo().
    
    WL#8117 Compact In-Memory Temporary Tables

commit 14c6a87b9373337252b94e3f696ce2cd9e3f21cc
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon May 8 15:51:57 2017 +0200

    Bug #26023259: REMOVE RADIXSORT
    
    We have special-purpose radixsort code for sorting very short keys, but in
    practical testing, std::stable_sort is now faster. Thus, we can just remove the
    radixsort.
    
    Verified by sorting 50000 short records on an int field, which is supposed to
    be the poster child for radxisort; removing the code was 10–20% faster in
    single-threaded testing, and there should be yet more in multithreaded, due to
    less cache pressure.
    
    Change-Id: I4f17344e7a744ee56df42cabd9423d9ccd93ba9c

commit 7f4aecbd93e28670378519a0c3f581fc6c53c87c
Author: Vitor Oliveira <vitor.s.p.oliveira@oracle.com>
Date:   Tue May 9 15:57:39 2017 +0200

    Revert "WL#9838"
    
    This reverts commit 7b5b6717357777b5559713b516284912b43030a4.

commit 7b5b6717357777b5559713b516284912b43030a4
Author: Vitor Oliveira <vitor.s.p.oliveira@oracle.com>
Date:   Tue May 9 15:49:10 2017 +0200

    WL#9838

commit 381e232b47454237bf430f32f92b1e8720170c2c
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Tue May 9 11:28:48 2017 +0100

    BUG#24411680 SET BINLOG_FORMAT DOES NOT GENERATE ERROR WHEN THERE ARE TEMPORARY TABLES
    
    Problem:
    The statement 'SET @@binlog_format=statement' when binlog_format was row
    or mixed succeeds without causing an error when there are open temporary
    tables.
    
    Analysis:
    Even though the default scope of binlog_format is session, the condition
    that checks whether the error should be issued only considered
    OPT_SESSION, which in this particular statement (@@binlog_format) is
    zero while OPT_DEFAULT is 1. So, the binlog format change would always
    succeed.
    
    Fix:
    Changed the condition that checked if the binlog format could be changed
    because of temporary tables so that setting the variable using the
    format '@@binlog_format' or '@@SESSION.binlog_format' will have the same
    behaviour. The check for the scope of the variable can be skipped since
    OPT_GLOBAL and OPT_PERSIST have already been dealt with.

commit f6dc4bf6109dc5d3f50a19208e4a08148a123f32
Author: Martin Hansson <martin.hansson@oracle.com>
Date:   Fri Apr 28 10:56:05 2017 +0200

    Bug#25972285: UNCLEAR ERROR MESSAGE FOR NOWAIT
    
    The error message was unclear and has been rephrased.

commit da24b609323ab2185077d3bdfc65fc96f62b885d
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Tue May 9 14:29:30 2017 +0300

    Use malloc()/free() on Linux if numa_available() returns -1
    
    WL#8117 Compact In-Memory Temporary Tables

commit 3b29444d13a9479a249f29fe35ff1744fd12be39
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue May 9 16:51:03 2017 +0530

    BUG#23574853: MYSQLTEST COMPLAINS OF MERGE MISMATCH WARNINGS IN GCOV
    
    This patch reverts commit cd6bca0d3bb13b962df5131bdaaa6832e5652d61
    and commit de656602e65b560ccc9d2fe44713935a7ea11e1d.

commit ae31242b26d7c0938d4fd37dc0a0c6e7e9e9ed68
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon May 8 14:03:08 2017 +0200

    Bug #26022667: ADD A DESTRUCTOR TO MEM_ROOT
    
    Now that we are seeing increasing use of MEM_ROOT on the stack, make it
    destructable to facilitate easier RAII use, so that we don't need to put it in
    a scope outside all MEM_ROOT-allocated objects (otherwise free_root will be
    called before the destructors of such objects, causing use-after-free).
    Also add a constructor and global operator new, both also relevant to simpler
    usage.
    
    Longer-term, we should make the MEM_ROOT internals available from C++ only.
    
    Change-Id: I370101cfad79da6028c84758080951bda80fe698

commit 3e5de773cdbd57cf2f409dbe3b75ea612c27d68f
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Tue May 9 14:02:25 2017 +0300

    Skip part of an unit test that depends on DBUG_SET() in non-debug builds
    
    WL#8117 Compact In-Memory Temporary Tables

commit ca122e784205a9b3426e0f2d8ae0de5e6bbfbe4f
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 45230e6473bea7974927cb829945af99431cecbe
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 9 11:55:11 2017 +0200

    WL#9344: Logging services: error messages
    
    Filter out performance-schema-error-size in --help tests.
    
    Change-Id: Ic90fe93ec5f9652c33ea373062406cd71d0556af

commit 5857a4be73ee7db38d8057dfcb82284419cd8c5a
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Fri May 5 18:12:14 2017 +0200

    BUG #24488234 BLANK RULE GENERATED FOR INSTALLING MYSQLX PLUGIN COMMAD IN FIREWALL WHITE LIST
    
    Problem:
    ========
    m_statement_psi is initialized in  net_after_header_psi which is called
    after reading from socket but service api does not get the commands this
    way so the statement is uninitialized.
    
    Solution:
    =======
    initialize m_statement_psi in Srv_session::execute_command before
    calling dispatch_command
    
    RB: 16089
    Reviewed by: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
    Reviewed by: Lukasz Kotula <lukasz.kotula@oracle.com>

commit 1497fa93acfdbc087467c6c6eb9f23726c37996b
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue May 9 10:41:45 2017 +0200

    Applied clang-format (4.0.0)

commit 1935cfc595ba458102f64e30fcfd588972d5aa0f
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue May 9 10:29:10 2017 +0200

    Removed dead code.

commit 1ae99055133a2e9d74f970d08371f14c2b967600
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 9 09:41:50 2017 +0200

    WL#9344: Logging services: error messages
    
    Post-push fix: broken UBSAN build.
    Use a legal enum value for log_item.type to trigger LOG_ITEM_TYPE_NOT_FOUND
    
    Change-Id: I5051d246022885f5a0894c979a828e272132309a

commit f64d40890e5246050b3fcc07ff923c602b004f48
Author: Vasil Dimov <vasil.dimov@oracle.com>
Date:   Tue May 9 10:36:11 2017 +0300

    WL#8117 Compact In-Memory Temporary Tables
    
    Squashed commit of the following (merge from mysql-trunk-wl8117):
    
    commit 6b4996707d40351688e7b7a70f8eeb88a6d93dc6
    Merge: 4ad98ba8db7 2be83d49e1d
    Author: Vasil Dimov <vasil.dimov@oracle.com>
    Date:   Tue May 9 10:32:06 2017 +0300
    
        Merge remote-tracking branch 'myrepo/mysql-trunk' into mysql-trunk-wl8117
    
        * myrepo/mysql-trunk:
          WL#9344: Logging services: error messages
          Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#3
    
    ... 11483 lines, 903 commits removed ...
    
    commit 51dc6ecd5a83c1d412ddc3ed1127141d9a361ba5
    Merge: 63ac5621728 50b53025f5d
    Author: Krunal Bauskar krunal.bauskar@oracle.com <>
    Date:   Mon Nov 3 08:16:20 2014 +0530
    
        - WL#8117: merge from mysql-trunk

commit 2be83d49e1dace66686daaafedeeafa3b736c035
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 9 09:16:53 2017 +0200

    WL#9344: Logging services: error messages
    
    Post-push fix: fix broken ndbcluster build.
    
    Change-Id: I81db0e3e27ee35f34d858e5f42fc893b34b2166c

commit 12bdd3a1d5cef33f2f8c047716b81b2fb6f24f2c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue May 9 08:02:06 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#3
    
    Followup patch: test was failing with --mysqld=--innodb-page-size=4k
    
    Change-Id: I454f095bcd247b231f9cd33c91a13fafaf2b432a

commit 03ac1c0d8c8e4c4015f7a69707487637c64b6d3a
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue May 9 05:36:16 2017 +0200

    WL#9323 Logging services: Improved error logging in 8.0
    
    Rerecord test results for main.mysqld--help-notwin/win
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com>

commit 26f0e8448f01623bb31afc7576130bf194f2abd7
Merge: 1c53d6a 30c678a
Author: Daniel Horecki <daniel.horecki@oracle.com>
Date:   Mon May 8 17:16:51 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 1c53d6ac59b725e89fdabee097cb4b3f9bbbafff
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 27 15:05:55 2017 +0200

    Bug #25965593: REPLACE MY_QSORT WITH STD::SORT
    
    Make an iterator/reference class combination that allows std::sort
    to sort objects whose length is not known at compile time, and convert
    all remaining uses of my_qsort() to it.
    
    Change-Id: I9fdfebf4368b8dee15e3945169eb5731746c7666

commit d1a8be2ab6273764100c60884071bd4ad28c273e
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon May 8 14:30:42 2017 +0200

    Bug #25965593: REPLACE MY_QSORT WITH STD::SORT
    
    Post-push fix: Make the String move constructor and move assignment
    noexcept, so that standard library containers prefer them over copying.
    
    Change-Id: I47c27b5b024405a7b4c842863ff359bfcbf6f481

commit 24c23870c079d564cfa01b48bf4a6abfe544eabe
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Mon May 8 17:31:22 2017 +0530

    WL#10319: Change X Plugin tests to run with new default charset
    
    Description:
    ============
    WL#7554 changed the default character set from latin1 to utf8mb4.
    Some tests were rewritten to use latin1 temporarily, so now
    they have been changed to use utf8mb4.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    RB: 16146

commit a1be159a69e5ed26ef97ce2a30d02269645c4fde
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon May 8 17:23:05 2017 +0530

    BUG#26020806 - MOVE NEW LOG_SINK COMPONENTS IN RPMS
    - Move log_sink components from test to server package

commit c0ebb7f92b1dbea8e3999aafe0fc6a28489e6850
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 8 12:30:38 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#4
    
    Followup fix: test failed with --mysqld=--innodb-page-size=4k
    
    Change-Id: I5976adab0c739745dadc32df892c32b603692170

commit 2a770f98630e4d1b834908c09b31525ef9cfd0ae
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon May 8 10:56:23 2017 +0200

    Bug#26020930 -DWITH_TEST_TRACE_PLUGIN=1 SEEMS TO BE BROKEN
    
    Change-Id: If44af9f87b7ced8b8de37ecbecf2abbd3496a16b
    Problem: several warnings due to [-Werror=unused-parameter]
    Fix: remove names of unused function arguments.

commit 9746c5f3a511545dace0fcc2a831659351e6bedc
Author: Luis Soares <luis.soares@oracle.com>
Date:   Mon May 8 10:45:32 2017 +0100

    WL#10412: GR: notify listener services on relevant group events
    
    This worklog implements a notification framework in the group
    replication plugin. On view changes, recovery state updates, network
    partitioning and primary election, the plugin will call out to
    listeners registered in the service registry and notify listeners that
    an event has ocurred. X plugin (or other listeners) can then take
    action/react.

commit 424a98348c298c8921fa4215108e8532e1aef5a6
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Mon May 8 10:44:04 2017 +0200

    Bug#25967926: FEW KEYRING_OKV TESTS ARE FAILING ON HUDSON
    
    Description: WL#9531 introduced additional error message
                 related to encrypted tablespaces. keyring_okv
                 tests failed because new message was not
                 suppressed using mtr.add_suppression.
    
    Solution: Added required suppression and rerecorded
              results.
    
    Reviewed-By: Zheng Lai <zheng.lai@oracle.com>

commit 9a25862af9b97c21d064823d187da7113d035f8c
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon May 8 09:30:35 2017 +0200

    Bug#26021015	MOVE NEW LOG_SINK COMPONENTS IN DEBS
    
    * Plugins were listed in CMakeLists, meaning they were only included in commercial packages.
    * Moved test plugin to test package, others to server

commit 24ef61c771ca8617604f5f608c072947c2ec52c9
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Mon May 8 12:24:00 2017 +0530

    Post fix- Corrected the Regex.
    
    Bug#25124836 PB2 INNODB.MONITOR FAILS SPORADICALLY WITH RESULT MISMATCH FROM 2016-05-19
    
    Approved by:
    Darshan M.N <darshan.m.n@oracle.com>

commit 94e259cdd4e2153e186d925325d1a35f952aa889
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Mon May 8 12:23:32 2017 +0530

    BUG#25821838 : --ERROR IS NOT PROPERLY WORKING IF IT IS USED INSIDE WHILE LOOP
    
    Description:
    ============
    "--error" mysqltest command is used to specify expected error(s) for
    the next query in a MTR test script. It is not working properly if it
    is used inside a while loop with if condition. It is getting evaluated
    every time irrespective of the if condition.
    
    E.g:
    
    --let $p=0
    while ($p <= 1 )
    {
      if ($p == 0)
      {
        --error 1051
      }
      DROP TABLE t1;
      CREATE TABLE t1(i int);
      --inc $p
    }
    
    DROP TABLE query should fail with "error 1051" in the first iteration,
    but in the second iteration it should not throw any error. But the
    above test script fails with an error in the second iteration saying
    that "DROP TABLE t1 succeeded - should have failed with errno 1051".
    
    Issue:
    ======
    "--error" command gets evaluated in false context also and expects the
    next query to fail with the errno provided in the command.
    
    Fix:
    ====
    Don't evaluate the "error" command if the condition evaluates to false.
    
    Reviewed-by: Bjorn Munch <bjorn.munch@oracle.com>
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>
    RB: 16083

commit de715a805809bbf33d4025f715755465318d8d6f
Merge: f463783 478d388
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon May 8 10:30:06 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 f463783109b320642638b1c054dfecce2537ec14
Merge: 0f4cef5 9812b53
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri May 5 21:09:46 2017 +0100

    Merge branch 'mysql-trunk-wl9323m1' into mysql-trunk
    
    WL#9323: Improved error logging: structured logging - "log TNG"
    WL#9342: Improved error logging: built-in log filter component
    WL#9343: Improved error logging: log writer components

commit d9bd0e659ee530d9035fc3e12ce06aa0fa37c4f7
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri May 5 16:02:23 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - mtr.pl no longer allows # in test file names:
        'Invalid test file name 'ndb.bug#24926009'. Test file
         name should consist of only alpha-numeric characters,
         dash (-) or underscore (_), but should not start with
         dash or underscore.'
    
     - fix by renamong bug#24926009 test case -> bug24926009
       '

commit 0f4cef5b1e3c8dbcf948f261c22420f9dc8a306b
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 5 18:59:34 2017 +0530

    BUG#23699215 : MTR TESTS FAILING ON WINDOWS IF VAR DIR HAS '\' INSTEAD OF ' /' PATH SEPARATOR
    
    Post push fix, fixed a perl warning on windows.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>

commit 9812b532cd9b4662e932fb0d6867933581465a48
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri May 5 13:27:25 2017 +0100

    WL#9323: Improved error logging: "log TNG"
    WL#9342: Improved error logging: log filters
    WL#9343: Improved error logging: log writers
    
    - more coverage

commit dceeaba4933a4eaa39574ebaace2ef4d37d64843
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri May 5 14:02:59 2017 +0530

    BUG#17084918 : MTR TESTS RUN WITH --SSL FAILS IF TEST HAS OWN CERTIFICATES IN *MASTER.OPT
    
    Description:
    ============
    When a test run is started started, MTR starts the server with some
    default set of SSL certificates mentioned in my.cnf file and by
    default --ssl-mode=DISABLED is enabled at client side. When --ssl
    options is provided to MTR when running a test, it enforces the client
    also with ssl by passing --ssl-mode=REQUIRED option.
    
    MTR has some default set of client certificates also which matches
    with default server certificates while making connection and hence
    connection succeeds.
    
    Issue:
    ======
    If other than default server certificates are provided in
    testname-master.opt file, then server starts with those certificates.
    To make a connection enable, client also need to pass the certificate
    information using --ssl-ca option along with other connection
    parameters in order to make the connection successful. But currently
    there is no way to pass test specific client options other than
    passing those options in command line, making it difficult to to run a
    test which has its own set of server and client certificates.
    
    Fix:
    ====
    1. Option --ssl-mode=DISABLED is always passed to mysqltest client
       (both with and without --ssl option) in my.cnf file. No other
       client SSL options are provided in my.cnf file.
    
    2. When --ssl option is enabled, MTR passes --ssl-mode=REQUIRED on
       command line to mysqltest client
    
    3. This bug fix also introduces a new functionality to MTR. Like
       testname-master.opt file, one can create testname-client.opt file
       and can provide test specific client options in that file.
    
    Reviewed-by: Bjorn Munch <bjorn.munch@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    Reviewed-by: Prabeen Pradhan <prabeen.pradhan@oracle.com>
    RB: 13751

commit a2e4e80e1edb771483fb18351ba5702b4e20adb5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 2 15:14:10 2017 +0200

    WL#9185 MySQL Cluster support for new DD
    
     - change update_comment_info() to take THD* as
       first argument

commit ce1788f3208fed0f59eb9c023ecb585b4bd14f66
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri May 5 03:40:15 2017 +0100

    WL#9323: Improved error logging: "log TNG"
    WL#9342: Improved error logging: log filters
    WL#9343: Improved error logging: log writers
    
    - portability fixes
    - valgrind fixes

commit 6c56ce9a12052fa5507aee75a252c242b4a2695e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 11 12:21:24 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable testcase ndbcluster.group_by_order after having
       filed bug

commit fc8d23cf2151cbc447179a59438e35521db06308
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 2 13:42:14 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove old defines NDB_WIN and NDB_WIN32 and
       use _WIN32 everywhere
     - remove hack for conflict with Windows #define NO_ERROR
       and rename the defines used in ndb code base
     - remove old unused NdbSchemaOp::createTable function
     - move unused NDB_RAND_MAX to ndb_rand.c
     - move define for using srandom() to only place it's used in NDBT_Test.cpp

commit 294672bae1238dae2a4d89a3ee18b25aa11cccc5
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 11 12:21:24 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable testcase ndbcluster.group_by_order after having
       filed bug

commit 2a3011df0cfc03a6a5ab5d67a59230a9f002610f
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 4 15:31:15 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#4
    
    Followup fix: tests failed with --mysqld=--innodb-page-size=4k
    
    Change-Id: Iab85022e192edb70f6893b5664110d3b75e1cfce

commit 906494efd86363cb3b06eee8291c5fc74e7f3c54
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu May 4 13:54:37 2017 +0200

    Bug #25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
    Followup patch: innodb_zip.wl5522_debug_zip fails on windows.
    
    fil_tablespace_iterate() does:
    
    file = os_file_create_simple_no_error_handling(... &success)
    DBUG_EXECUTE_IF(....)
    if (!success) {
       /* The following call prints an error message */
       os_file_get_last_error(true);
    }
    
    Before the patch:
    os_file_get_last_error_low() does GetLastError() which returns zero,
    because there are intervening system calls (in the implementation of
    DBUG_EXECUTE_IF) which do not fail.
    
    After the patch:
    os_file_get_last_error_low() does GetLastError() which returns 32,
    since there are no more intervening system calls. So we get a couple
    of more warnings.
    
    Fix: add suppressions for new warnings.
    
    Also: remove unused function ut_rnd_set_seed()

commit 85cff1baf3d19fed7f16a47cfd6cee4cfe6cbdd3
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 2 12:10:24 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove global include of process.h on Windows
     - replace usage if getpid() in favor of the portlib function
       NdbHost_GetProcessId(), which is used in test programs
       to initialize random seed

commit 9d2b541bd3bd2c545e3915057c88bc01cc4b8d96
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 2 11:15:56 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - remove DONT_DEFINE_VOID which is now unused

commit 28d8424fa9e58a938a2d83a8a63de107e2899e32
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 2 10:59:11 2017 +0200

    Bug#25511280 FLEXASYNCH RAND_R IDENTIFIER NOT FOUND
    
     - use rand() on Windows assuming it is threadsafe, seed with same number as rand_r()
       would have used
     - fix Windows specific compilation warnings

commit 619d0443df9484531784ad1921fd2f40962448f3
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue May 2 10:05:00 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - fix compiler warnings in NdbThread.cpp which show up in debug
       compile.
    
       ndbthread.cpp(433): warning C4311: 'type cast': pointer truncation
          from 'NdbThread *' to 'long'
       ndbthread.cpp(433): warning C4302: 'type cast': truncation
          from 'NdbThread *' to 'long'

commit 4b60c859b0a8499c6be4ce0bb24d25cfaea01b9a
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Wed May 3 14:59:09 2017 +0200

    Revert earlier fix for Bug#22916982 without reverting testcase

commit 125391610a32727251819a8ad6dfd22b75c185cc
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Wed May 3 13:40:15 2017 +0200

    Revert "Bug#22916982 - ASSERT 0 IN FSP_SDI_GET_ROOT_PAGE_NUM(), FLUSH TABLES FOR EXPORT"
    
    This reverts commit 63d424a5fb1b6ba792d59c82b8e58e5c53080a4b.

commit c4499dc718b65bae914fc8a0e5c4e3d8b1ab1e78
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu May 4 12:11:02 2017 +0200

    Bug #25750527: STRNXFRMLEN IS TOO CONSERVATIVE FOR UNICODE 9.0.0 COLLATIONS
    
    Post-push fix: Fix a warning on 32-bit platforms.
    
    Change-Id: Ibb8fdfc763d713ffb51da9ea5ca67601c990342e

commit 9db335a385b9fc46c7a5a0ee1ab8e163ef3b4e64
Merge: e025a33 af9f332
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu May 4 17:37:22 2017 +0530

    Periodic up-merge of Cluster branch

commit e025a331c7889c0554fcc5c4926a542e2a63bebd
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 27 11:17:35 2017 +0200

    Bug #25965593: REPLACE MY_QSORT WITH STD::SORT
    
    Convert all the simple my_qsort and my_qsort2 cases to std::sort.
    
    Change-Id: I28f98415da992fe56ac93ae89c87b480506a4c7b

commit 4d8b5217cfc423107f3b28dd90924e2f23a032fe
Merge: 63e860d 9d03e75
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Thu May 4 17:20:58 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 63e860dc6aae28feaf7793fc776e040114ecda3a
Merge: 12c4c74 a8340ab
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu May 4 16:18:18 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 af9f332b82462eead06a81439b06b22259267d87
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu May 4 15:09:23 2017 +0530

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

commit 12c4c743dcfe5c77cde6b0d4d0f5b48c123482c4
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Thu May 4 11:22:08 2017 +0200

    Disabling the test until we fix Bug#25997291

commit 5d0be0ec35b19ec78d1c69fc80c5562c37126e1f
Merge: cb820d4 c7a5d8f
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu May 4 13:07:30 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 cb820d40ec122378a361e34008977525d38d270e
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu May 4 10:11:41 2017 +0530

    Bug #16833464: Presence of ORDER BY changes data type of
                   column in CREATE TABLE SELECT
    
    Issue:
    ------
    A fake_select_lex for a query of the form
    (SELECT ... ORDER BY ....) ORDER BY ... . This is despite
    the absence of a UNION in the query. In such cases the
    correct type of the result is not arrived at because
    Item_type_holder::join_types is never called.
    
    In release build, this makes the result's column type as a
    generic VARCHAR.
    
    In debug build, it can result in incorrect behavior.
    
    Solution:
    ---------
    In this case, Item_type_holder's data_type should be set to
    the SELECT's item_list types.

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 96e16036a4eca486fb11eba263f96356b795fae3
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Apr 27 14:50:00 2017 +0200

    Bug#25972576 ADDRESSSANITIZER: STACK-BUFFER-OVERFLOW HEAP-BUFFER-OVERFLOW FOR MEMCACHED SUITE
    
    AddressSanitizer: stack-buffer-overflow
    memcached.memc292_ibd2sdi_system_tablespace
    
    Fix: call buf_page_is_zeroes for the buffer we have actually just
    filled: full_page, rather than some other buffer.
    
    AddressSanitizer: heap-buffer-overflow
    memcached.memc250_container
    
    Fix: use 'val_buf' for printing, 'value' is not null-terminated.
    
    Change-Id: Ia14da2b109fa36def1c5ced5b9a08451bcd05a48

commit 82e824ce57edba22a5fb11185d124b0442ec7a73
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Apr 27 16:41:06 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#8
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I88273684fa948428100e74399643b62f8ad2d82f

commit 68e67b84a93ed3423ce53ed372efe4fec8b3a166
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Mar 20 15:33:33 2017 +0100

    Bug #25750527: STRNXFRMLEN IS TOO CONSERVATIVE FOR UNICODE 9.0.0 COLLATIONS
    
    Under utf8mb4_0900_ai_ci, strnxfrmlen() for a VARCHAR(1) (taking four bytes)
    returns 32. The rationale for this choice (strnxfrm_multiply=8) is not
    documented. However, there is no character with more than eight weights,
    giving 16 bytes, so we are creating twice as long sort keys as we need to.
    
    For as_cs, this is more complicated; we again have a 2x bloat factor, but we
    need four static bytes for the weight separators. Thankfully, these two
    effects go against each other, so the bloat absorbs the weight separators in
    all cases. Similarly, for utf8mb4_ja_0900_as_cs, we add extra weights for
    some characters on the primary level, but again, the extra bloat happens to
    save us.
    
    We make the bounds tighter by changing the Unicode 9.0.0 collations from
    using strnxfrmlen_simple to a custom-built function that takes into account
    weight separators, reordering and the likes, and set tight bounds for these
    collations. We document the implicit assumptions in strnxfrmlen() about what
    the input parameter actually means, and add a unit test to run every character
    (by itself) through every collation to verify that the property holds.
    
    Change-Id: I8f37a890bff146e4b1db39050b6cc274ecae0c59

commit f4dee0a1598bfe1b2a6aca004b62a5bcb2b08480
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed May 3 14:30:13 2017 +0200

    Bug#25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
    Make a Valgrind suppression pattern more general.
    
    Approved by Steinar Gunderson <steinar.gunderson@oracle.com>

commit 46c37d99aad8497772b4ba0ac1565b48a01823e1
Merge: 85706cb 5b9b646
Author: Aditya A <aditya.a@oracle.com>
Date:   Wed May 3 17:44:38 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 b777f8e499d9c9166aff75599a95bad1e6673d59
Merge: 85706cb 10f55b1
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Wed May 3 12:46:25 2017 +0100

    Merge branch 'mysql-trunk-wl9344m3' into mysql-trunk-wl9323m1
    
    WL#9323: Improved error logging in 8.0: "log TNG"
    WL#9342: Improved error logging in 8.0: log filters
    WL#9343: Improved error logging in 8.0: log writers
    WL#9344: Logging services: error messages

commit 10f55b11ea9973bd143c0051f42f95e389edf3d2
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Wed May 3 12:39:56 2017 +0100

    WL#9344: Logging services: error messages

commit 85706cbdd25ff4a2b0cf56a952abd7ccae9c2994
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed May 3 12:20:14 2017 +0200

    WL#9834: Follow up patch that fixes some failures on Windows, test case
    gcs_xcom_group_member_information-t, due to nodes getting the same UUID
    (i.e. timestamp) value when they were supposed to be different.
    
    Fix: Add SetUpTestCase functions to do My_xp_util::init_time,
    otherwise all timestamps are zero.

commit 940e828bb8213624aea163d45ada65871c15ea12
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

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

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Fix windows build
    - Replace popen and pclose with _popen and _pclose respectively
      on windows platforms

commit dce7662122ebe9bca902fc28b9403683cb5b3e38
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 15:47:11 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Fix windows build error
    - The <netdb.h> header is available only on Unix platforms

commit cf7dfc5ddc894514c44cb8767424a582a9a29ba9
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed May 3 10:58:57 2017 +0200

    WL #9554: Varlen keys for sorting multibyte String values
    
    Post-push fix: Work around a bogus null_value flag.
    
    Change-Id: I45b5650f9b6cf447eec9e2abd5bb0ffd02e5bf7c

commit e3910a45861586255a17a42c5013a4b729e7cad8
Merge: c4b6db5 0314d62
Author: Anushree Prakash B <anushree.prakash.b@oracle.com>
Date:   Wed May 3 15:24:22 2017 +0000

    Merge branch 'mysql-5.7' into mysql-trunk

commit c4b6db55f5f82c57db781d01d44e67e5b596a4c3
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed May 3 11:11:58 2017 +0200

    Bug#25873029 HEAP-USE-AFTER-FREE IN RPL.RPL_JSON
    
    Disable the test in ASAN until a fix is available.
    
    Approved by Maria Couceiro <maria.couceiro@oracle.com> over IM.

commit 67a73cf5f9f9a623723301d153f03fb27b4a2e6f
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 12:08:28 2017 +0530

    WL#7614 ndb_import internals
    
    - Fix a couple of mismatches in format specifiers

commit 6cbccaa8e86584da0e33f9b875582d5cd1af3f1c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 12:03:24 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Fix warnings detected by -Werror=suggest-attribute=format
      by adding format specifier attribute

commit 059bac6cde92784792f11782d08cf004adfc5108
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 12:00:33 2017 +0530

    Bug#24444878 MYSQLD CRASH DURING UNIQUE KEY CREATION
    
    - Minor refactoring to make the fix work in trunk-cluster

commit a91a21030692c463dd2aaf14427e21a5a8438fc4
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 11:57:01 2017 +0530

    Bug#25437227: REMOVE #IFDEF HAVE_NDB_BINLOG
    
    - Remove ifdef HAVE_NDB_BINLOG which can be always on after
      embedded was removed

commit 30a957f93851b398a0ce3a57343a9ecf6ab690c2
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed May 3 11:48:58 2017 +0530

    WL#7569 Split ha_ndbcluster_glue.h into the appropriate ndb_*.h files
    
    - Add missing includes now required after ha_ndbcluster_glue.h was
      removed

commit 3e2c566265ecc6233a2d3b74c26f4fa6a45d4cd4
Merge: 21e42e7 21093af
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Wed May 3 11:29:34 2017 +0530

    Null-merge from 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 e80b5d7fe626f83dace4a9f73487ce271007f85c
Merge: f67e5c5 fc7d8cb
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue May 2 15:21:48 2017 +0530

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

commit 21e42e76380037a7acef1140e175db929170f106
Merge: 18ef256 858f0a8
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Tue May 2 19:13:09 2017 +0200

    Upmerge of the 5.5.56 build

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 18ef2564d3206a1dca59327c352060d53d2ec410
Merge: f16a022 9672ff8
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 2 19:57:24 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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

    wl 5847:  Windows fixed.

commit f16a022c8c527c1342aa094f934b00a5bba3bb75
Merge: 9a85587 5a2eacc
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Tue May 2 18:58:05 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 9a85587645a2a2cf52f0a7a88383a76f24bebca6
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue May 2 16:52:48 2017 +0530

    Bug#25574200 : SECONDARIES ALLOWS TRANSACTIONS THROUGH ASYNC SETUP INTO THE GROUP
    
    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.

commit 9cf6bdf4b96f0b63e107c62c460eb0befad22d50
Merge: b7a17ff a462ce1
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Tue May 2 12:46:10 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 b7a17ff268af4309b26f1b059353296fdaf5f453
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue May 2 15:42:38 2017 +0530

    Revert "Bug#25574200 : SECONDARIES ALLOWS TRANSACTIONS THROUGH ASYNC SETUP INTO THE GROUP"
    
    This reverts commit f3f7edd09d1c911ca0e989cbf20a9f7075c1b2c1.

commit f3f7edd09d1c911ca0e989cbf20a9f7075c1b2c1
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue May 2 14:52:03 2017 +0530

    Bug#25574200 : SECONDARIES ALLOWS TRANSACTIONS THROUGH ASYNC SETUP INTO THE GROUP
    
    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.

commit 62ad95c3d2a9b3cb109296432fc6e5ddde9c47c4
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 2 14:29:44 2017 +0530

    wl 5847: enable asan for LDAP non TLS tests.

commit 917e0976e07e516cb91b7a09f8a83b8296894da4
Merge: 56daa20 d22f9da
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue May 2 14:25:13 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 f67e5c52f690fa39d8b5c5df7af155efb8a8e054
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue May 2 12:09:05 2017 +0530

    Bug #24748843 : SYNC PRINTS TO STDOUT CAUSING MAIN THREAD TO SLEEP DURING HIGH IO WAIT
    
    Post-push fix.
    Fix compiler warning due to zero length format string in LogBuffer.cpp.
    
    (cherry picked from commit fc7d8cb354198a4cb5d61981fc5f8bd9e53d5fd3)

commit 4413661d00896ec11cfb7e92dbbad416c71ebef6
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Apr 28 17:58:23 2017 +0530

    WL#7569 Split ha_ndbcluster_glue.h into the appropriate ndb_*.h files
    
    - Replace usage of NdbSleep_MilliSleep() with ndb_milli_sleep()
    - NdbSleep_MilliSleep() is from NdbSleep.h which is no longer used
      in ha_ndbcluster_binlog.cc

commit fc7d8cb354198a4cb5d61981fc5f8bd9e53d5fd3
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue May 2 12:09:05 2017 +0530

    Bug #24748843 : SYNC PRINTS TO STDOUT CAUSING MAIN THREAD TO SLEEP DURING HIGH IO WAIT
    
    Post-push fix.
    Fix compiler warning due to zero length format string in LogBuffer.cpp.

commit 56daa2003cdcd2dfe5d373bae602855a025e1dd7
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Apr 28 15:49:39 2017 +0200

    Bug#25957991 ADD EXPLICIT DEPENDENCY ON LIBSTATOMIC.SO ON SOLARIS
    
    Post-push fix: disable INSTALL of g++ runtime libraries on Solaris.

commit 53e2b056b55081c452a5724d4e13cb79137eacd1
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Apr 28 15:12:22 2017 +0200

    Fix recently introduced Clang build warnings.
    (inconsistent override usage, unused static function)

commit acd89bbffbc41ab8c6dae3900fcdfe63f9fcb8fb
Author: Tatiana Azundris Nuernberg <tatjana.nuernberg@oracle.com>
Date:   Fri Apr 28 14:21:29 2017 +0100

    WL#9323: Improved error logging in 8.0: "log TNG"
    WL#9342: Improved error logging in 8.0: log filters
    WL#9343: Improved error logging in 8.0: log writers

commit 2e3d262d5b764a3b4eb887f9a159d2420a82b256
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Fri Apr 28 18:51:03 2017 +0530

    WL#10298: Change runtime tests to run with new default charset
    
    Description:
    ============
    WL#7554 changed the default character set from latin1 to utf8mb4.
    Some tests were rewritten to use latin1 temporarily, so now
    they have been changed to use utf8mb4.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    Reviewed-by: Thayumanavar S <thayumanavar.x.sachithanantha@oracle.com>
    RB: 16069

commit 67300ad1eee08891a8333f96d9f35fcdff97f092
Merge: 34ef040 9966f26
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 14:55:42 2017 +0200

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

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

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

commit 0dcdcc8e23a7d6edf2d99474cc2ed6e794859131
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Apr 28 18:05:53 2017 +0530

    WL#7569 Split ha_ndbcluster_glue.h into the appropriate ndb_*.h files
    
    - Add missing include for build_table_filename which was previously
      in ha_ndbcluster_glue.h

commit 395c94ccb07f3555b81dc3333d5939304cee7ecc
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Apr 28 17:31:21 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Fix warnings detected by -Werror=suggest-attribute=format
      by adding format specifier attribute

commit 588b6832c101601e84ebbebb509ace2af0855bea
Merge: 9131b11 52f712e
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Apr 28 17:24:18 2017 +0530

    Merge commit '52f712e2279dbd87e6f4da24cdb0baaf6baf0868' into mysql-trunk-cluster

commit 492527b861f29b523b133a75e9119ca848f9d52f
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Apr 28 13:44:33 2017 +0200

    WL #9554: Varlen keys for sorting multibyte String values
    
    Post-push fix: Remove an unused function argument.
    
    Change-Id: Ia0cda0330bbf1dcbc01dc8ddfaab7e913aded374

commit 34ef0402d1a699fbb696c6fa89bf28c5b8c5541f
Merge: b88f155 b7f90ea
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Fri Apr 28 13:41:56 2017 +0200

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    Conflicts:
    	storage/ndb/test/ndbapi/testRedo.cpp

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

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

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

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

commit e166560471dcbef887451762c563d58940891001
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 6 13:26:54 2017 +0200

    WL #9554: Varlen keys for sorting multibyte String values
    
    Unicode collations are sorted by means of variable-length weight strings.
    In the worst case, these weight strings can become very long; for instance, for
    utf8mb4_0900_as_cs, we have a strnxfrm_multiply of 24, which is interpreted as
    every byte in the input string becoming potentially 24 bytes. In other words, a
    VARCHAR(100), which can be up to 400 bytes, gets 9600 bytes allocated for
    filesort, even if it just contains a simple 'a' (which is six bytes of weight
    plus some level separators). The default set max_sort_length=1024 masks this
    problem somewhat by truncating the weight strings, at the cost of incorrect and
    unpredictable sorting when sorting strings that actually need long weight
    strings.
    
    This worklog aims to introduce variable-length keys when sorting NO PAD collations.
    (PAD collations still need to be fixed length, because they are conceptually
    extended to infinity.) It builds on the existing semantics for sorting JSON using
    variable-length keys; it doesn't try to replace strnxfrm with strnncollsp,
    which would also be an interesting avenue, but can happen in a later worklog.
    
    Benchmark results are good: For the distinct_ranges sysbench test
    (using varchar keys), we win about 12% on a single core of Skylake 3.4 GHz.
    For a test of sorting 300000 first names in a VARCHAR(100) COLLATE utf8mb4_0900_as_cs,
    setting max_sort_length=65536 (so that both sides actually sort based on all
    their data, as opposed to truncating the key and sacrificing correctness),
    it is about five times as fast, due to vastly less spilling to external storage
    (77 versus 11075 chunks). This is even though external storage in this case is
    RAM, not disk -- if it would be actually hitting the SSD, the difference would
    be even more dramatic.
    
    Change-Id: I4704ffe04e2b35db47e5c1b98160f6a4731157ad

commit a40d22675a9dfff293cef3d0b213e6cf810bb195
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Apr 11 11:13:17 2017 +0200

    WL #9554: Varlen keys for sorting multibyte String values (DISTINCT fix)
    
    Pre-bugfix: Fix DISTINCT handling with variable-length sort keys.
    (The main.distinct test doesn't catch this, because it doesn't
    try to do distinct on JSON, which is currently the only thing
    that has such sort keys.)
    
    Change-Id: If352cbafc1f5bef8921b8aa4878ff12e697e71f8

commit 86fe9df43a05b25620e80df84ab2cf31220ff664
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 28 08:55:52 2017 +0200

    Bug#25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
     - follow up patch to fix compilation failures on Windows and Solaris
       in storage/ndb/ code base
     - the switch from C to C++ for compiling NdbThread.cpp uncovered some
        missing casts.

commit b88f15581f62d224bac17000a437a33e99370446
Merge: e72ca94 0c66236
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:53:43 2017 +0200

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

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

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

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

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

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

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

commit bb830d13644638383ff71e89d56c26c747a2a9d0
Author: Marc Alff <marc.alff@oracle.com>
Date:   Fri Apr 28 10:25:01 2017 +0200

    Applied clang-format 4.0.0 (git)

commit e72ca949de0d924f4ea9c5fc9b4287d43d64d268
Merge: b29073f c484046
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 10:07:09 2017 +0200

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

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

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

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

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

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

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

commit b29073f43b5b12b3de4580d9df01f4f724d40885
Merge: 6f8e398 a418ab3
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Fri Apr 28 09:27:48 2017 +0200

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

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

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

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

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

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

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

commit 9131b11ec8cf17c3f3e1eb5a6793a21ed8e0eb12
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 28 08:55:52 2017 +0200

    Bug#25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
     - follow up patch to fix compilation failures on Windows and Solaris
       in storage/ndb/ code base
     - the switch from C to C++ for compiling NdbThread.cpp uncovered some
        missing casts.

commit e0bfc8861e81e656725b54e27de03cc2a7318ede
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri Apr 28 08:06:42 2017 +0200

    Bug#25960132 TEST ISSUES RELATED TO ALPINE LINUX
    
    Avoid to create executable scripts in MTR var directory, when using
    --mem, /dev/shm will used, which might be mounted with noexec flag.
    
    Convert test using GNU touch to pure perl, making test more portable.
    
    Some platforms output Filename (not File name) in error message, add
    regex to handle this difference.
    
    Not executing srv_session_deinit_thread() in test_sql_errors.cc ends
    in crash, add call.

commit 4cbf461923d19938bc06976f602b33e06a8025c2
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Fri Apr 28 10:56:19 2017 +0530

    Bug#25894101 - Core file generated is getting truncated
    on ASAN builds. Disabling the test until this is fixed.

commit 6f8e39848889dc4859d25b2607d41820d7624af7
Merge: bab81cf d031d08
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Thu Apr 27 20:57:09 2017 +0200

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

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

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

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

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

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

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

commit 7aee245a5a88c9585e495deba5821179dc587588
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Apr 24 15:47:32 2017 +0200

    Bug #25945762: REMOVE MY_TEST MACRO
    
    Remove the first, simplest-to-remove cases of MY_TEST.
    
    Change-Id: If1262c8b87acb3b210735c8908e59971688a830b

commit 99dfcc0e1f8529fa0525433287fde37d6a83aa14
Merge: 4b633c9 90cae25
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 27 19:02:42 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 4b633c995f0f63e4e78739fbdaacfcb1424abde1
Merge: 737bc37 910f892
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 27 16:26:42 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 e09fc3587bfdcbad9d83ace10e0abfacdb51726c
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Apr 27 15:54:05 2017 +0530

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - Previously, the hidden status of a table was indicated by a boolean
      value. This has been extended to use an enumeration type which now
      indicates whether the table is hidden, and if so further classifies
      the hidden table into different types
    - Fix involves updating the hidden() and set_hidden() calls to use
      this new enumeration

commit bab81cf62cf32d14463b9ff40f817e1b0f797deb
Merge: 63c2fe0 bb660ce
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 27 12:14:57 2017 +0200

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

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

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

commit 63c2fe066ae6e473247c853347b05d10b8fb6bf4
Merge: 390c17d e5d7c5e
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Apr 27 15:39:43 2017 +0530

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

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

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

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

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

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

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

commit 390c17d8e031ee166def676237e73091114b43b6
Merge: 7cb5d16 b4d5be6
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Thu Apr 27 10:47:44 2017 +0200

    Upmerge of the 7.2.29 build

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

    Upmerge of the 7.2.29 build

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

    Upmerge of the 7.2.29 build

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

    Null merge of the 7.2.29 build

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

    Raise version number after cloning 7.2.29

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

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

commit 737bc37e696c177d56e5c40b3786ce0b81ac0aed
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Apr 26 16:13:15 2017 +0200

    Bug#25957991 ADD EXPLICIT DEPENDENCY 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.
    
    The server already depends on -xatomic=studio.
    We are actively switching from my_atomic_xxx to std::atomic,
    so make the dependency explicit.

commit 8593be8f3465bc15f6751407dbf5b22523e7d957
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Apr 25 12:21:45 2017 +0200

    Bug #25951531: REMOVE MY_BOOST REIMPLEMENTATIONS OF THE STANDARD LIBRARY
    
    Remove my_boost::atomic and my_boost::this_thread, replacing them with the
    equivalent std::atomic and std::this_thread.
    
    Change-Id: I98d943b9e3a20fc49aadfda6d5f874adb9211a8b

commit 0800285536e601c4faa5f3e8f52b4ecbb101c5a9
Merge: 1884f4f 7af3fb0
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Apr 27 13:40:42 2017 +0530

    Merge branch 'mysql-trunk' into mysql-trunk-cluster

commit 153d56cc055e2173f93f9137f9cb57d899be14ad
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Apr 27 10:01:00 2017 +0200

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Post-push fix: Update engines/funcs.tc_rename_error with
    the changed error message (unknown table => unknown schema).

commit 7af3fb01ead5ccfbbb9f954345f03195068cb33c
Merge: 9144eb1 7096ec5
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Thu Apr 27 12:36:14 2017 +0530

    Empty version change upmerge

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 9144eb1161b1a14cd14006e802ff64565238c005
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 27 12:00:34 2017 +0530

    WL 5847: Removed LDAP from disabled asan list and added bug number.

commit 00d5443cc4fcfb9202316bb8a44bb4a7a4f40637
Merge: a3e8e62 54e73e5
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Thu Apr 27 07:45:44 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 a3e8e62d8b30f545fbe242cd8a8c19df24e4d22b
Author: Xing Zhang <xing.z.zhang@oracle.com>
Date:   Thu Apr 27 11:00:40 2017 +0800

    WL#10480: Add Japanese kana sensitive collation to utf8mb4
    
    Post-push fix: fix one unittest failure on Windows.
    
    Change-Id: Iac877f963a73a81ca5f8bef8b4cdd4029ebe1c0c

commit 5b5ccdc19548f294b614b2e048ce83c9c7ae613b
Author: Bin Su <bin.x.su@oracle.com>
Date:   Wed Apr 26 18:39:19 2017 +0800

    BUG#25833228 - DEADLOCK WITH DICT_PERSIST->LOCK
    
    The deadlock is between dict_persist->lock and index->lock.
    The incorrect order is that dict_persist->lock is held before index->lock
    acquisition. So the solution is to make sure dict_persist->lock is
    acquired right after index->lock during insertion.
    
    Reviewed by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16088

commit 7cb5d16827dcb769e2050b8875ef90a244fb8f3d
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Apr 26 21:30:47 2017 +0300

    wl#7614 disconnect1.diff
    
    disconnect from NDB on error also

commit d310df8497a2dc4cbb155adb633977578d09018a
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Apr 26 21:29:22 2017 +0300

    wl#7614 keep-state.diff
    
    option --keep-state

commit bb0748390fa03e5ba174c3d79890df0e55c8261d
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Apr 26 21:22:14 2017 +0300

    wl#7614 imp-misc1.diff
    
    clarify ndb_import.pl options

commit 8c8064503664eebe05e33aaa3b7cef406e83f9b3
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Wed Apr 26 21:20:36 2017 +0300

    wl#7614 un-inited2.diff
    
    un-inited members

commit 63d424a5fb1b6ba792d59c82b8e58e5c53080a4b
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Wed Apr 26 11:25:02 2017 +0200

    Bug#22916982 - ASSERT 0 IN FSP_SDI_GET_ROOT_PAGE_NUM(), FLUSH TABLES FOR EXPORT
    
    Problem:
    -------
    In a tablespace, SDI Index root page numbers are stored in page 1 & 2 at
    offset FIL_PAGE_FIL_FLUSH_LSN.
    
    The same offset is also used for Page IO compression meta data or Encyrption
    metadata and so it conflicts.
    
    Fix:
    ----
    Disable Page IO compression and Encryption for pages 1 & 2. For page 0, it is already
    disabled.
    
    Reviewed-By: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 14188

commit 532f37bea5faa93e8bb541b48e35c2806340cded
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Apr 26 16:34:21 2017 +0200

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Post-push fix: Fix Werror build.

commit a78523c86a080a9e7e78304a269fa9326be3625f
Merge: d5499f7 6301617
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Wed Apr 26 15:07:22 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 d5499f7c52ff1a208918cf58c6f383d95f858628
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Apr 24 10:09:06 2017 +0200

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Move acquire() calls higher in call hierarchy to reduce
    number of acquire() calls. Pass const dd object references or
    pointers instead of object name strings.
    
    Part 6: Finish table changes.

commit c1b3fd79b8ed548e8c3e32c2b230a3e8a219f506
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Apr 26 14:47:35 2017 +0200

    Bug#25943754: FIX GCC 7 COMPILE WARNINGS
    
    Followup patch: developerstudio12.5 incorrectly complains about
    line 325: Error: Overloading ambiguity between
    "built-in operator==(int, float)" and "built-in operator==(int, double)".
    
    Fix: explicit cast to int

commit 0838fcef8d64a13a82b21ebd78fde27b123c5840
Merge: 321721c df88bf2
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Apr 26 17:45:14 2017 +0530

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

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

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

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

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

commit 2e01d139af9e51b605880697c4ad2f7e665d7bd4
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Apr 25 14:46:28 2017 +0200

    Bug #25952493: MOVE LOCK-FREE DATA STRUCTURES TO STD::ATOMIC
    
    Move all of our lock-free data structures std::atomic. This gives greatly
    increased type safety, as well as being one part on the step towards removing
    our own my_atomic system.
    
    Change-Id: Ic8dccd14cd85caf6fdb787d52335668188895644

commit bc0f687893c6e7e5a312a11becbda883ccb06173
Author: Hans H Melby <hans.h.melby@oracle.com>
Date:   Wed Mar 8 13:13:19 2017 +0100

    Bug #23023817 ST_SIMPLIFY: INVALID READS IN PROTOCOL_CLASSIC::NET_STORE_DATA
    
    The query:
    
    CREATE TABLE t(a INT)ENGINE=innodb;
    INSERT INTO t VALUES(1),(2),(3),(4);
    SELECT DISTINCT SQL_BIG_RESULT ST_SIMPLIFY(POINT((a is null),1),1) FROM t;
    
    Fails with ASAN builds. This happens because the Item_func_simplify::val_str()
    function attempts to use memory that has already been freed.
    
    Solution: Remove  condition in the if-statement in Item_copy_string::copy()
    to ensure that str_value will own its own memory in the rare case that res
    and str_value are equal, but neither initially owns their own memory. A similar
    change is done in Item_cache_str::cache_value() in case a similar situation
    occurs there as well.
    
    Change-Id: I50ba2ce1579095807bc4979a7680c8d18843ca7c

commit 50d222ca6c44a8e4f5db1bac0e0c05a91269e599
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 20 13:19:45 2017 +0200

    Bug #25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
    Use C++11 thread_local for Performance Schema instead of the MySQL-specific TLS
    system, and delete the old system.
    
    Change-Id: I1266aeed29a9bcbebef5e566bd41fdc8eec17ca6

commit eaea79dc3605f241130f4a12bd0a621793634cc1
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 20 12:48:05 2017 +0200

    Bug #25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
    Use C++11 thread_local for NDB instead of the MySQL-specific TLS system.
    
    Change-Id: Ibf2dab376a01acadf89cfd32639f139ce4a268be

commit dce329dcadde9d2305c9cab53383c35ece5b84ea
Merge: f596a15 febba40
Author: Jens Even Berg Blomsøy <jens.even.blomsoy@oracle.com>
Date:   Wed Apr 26 11:07:25 2017 +0200

    Null-merge from 5.7.

commit f596a1502f9897f3a8875d7977b67144bb91eddf
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Apr 26 10:51:38 2017 +0200

    WL#8150: Dictionary object cache
    
    Remove Dictionary_client::get_tables_max_se_private_id() as it
    us unused.
    Remove Dictionary_client::release() and inline its contents
    in the single place it is used internally. This function should
    not be part of a public API.

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 f146dc54bdf199c389496dfa395a7eebd3a71966
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Apr 26 10:58:13 2017 +0200

    Bug#25943754: FIX GCC 7 COMPILE WARNINGS
    
    Fix new compilation warnings reported by GCC 7.

commit f63c1bc2efa74f1aa91a8c49c3ab3f31e27a696d
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Wed Apr 26 14:04:56 2017 +0530

    BUG#23699215 : MTR TESTS FAILING ON WINDOWS IF VAR DIR HAS '\' INSTEAD OF ' /' PATH SEPARATOR
    
    Issue:
    =======
    On windows, backslashes in the file name argument to "load data
    infile" statement should be specified either as forward slashes or
    doubled backslashes. If vardir path contains backslashes,
    "check-warnings.test" will fail with parallel > 1, because the
    path to the error log file is calcualted using vardir path and this
    path is used with "load data infile" statement in that test.
    
    Fix:
    ====
    Replace path seperator '\' with '/' on windows.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>
    RB: 16067

commit aaeb88f6de2a117a25b39f4601684e2f70a07c44
Author: Horst Hunger <horst.hunger@oracle.com>
Date:   Wed Apr 26 09:22:14 2017 +0200

    Bug #25957463: Replaced <suite> <test> by <suite>.<test> and run the list successfully.

commit 5021b5b9ef350df723b5e1d4f3e9bd17d37cf303
Merge: e428d75 06f60d2
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Apr 26 11:25:23 2017 +0530

    Bug #25793677   INNODB: FAILING ASSERTION: CLUST_TEMPL_FOR_SEC || LEN
    
    Merge branch 'mysql-5.7' into mysql-trunk

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 e428d75a9764972002636c3132c11f89fc364a26
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Wed Apr 26 10:58:14 2017 +0530

    BUG#25943592 : MTR DOC: MISSING DOCUMENTATION FOR 'DEFAULT-CHARACTER-SET' MYSQLTEST OPTION
    
    Description:
    ============
    Behavior of mysqltest client option 'default-character-set' is not
    documented in MTR manual.
    
    Fix:
    ====
    Documented the behavior of 'default-character-set' option.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 16066

commit c548582c8f3787d9b8c7dda8b6fb996e84665204
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Apr 25 10:26:17 2017 +0200

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Patch #22: As a final step, remove disabling of
    the -Wunused-parameter GCC/Clang compiler warning option.

commit cb8ec4c59e8a3116cf7d362dd3477f18b691137d
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Apr 25 10:04:25 2017 +0200

    Bug #25950778: REMOVE POINTER ARITHMETIC MACROS
    
    Remove the unneeded macros ADD_TO_PTR and PTR_BYTE_DIFF.
    
    Change-Id: I2a49542de36c62f19bdaf232651293cc60c4c394

commit fd1ba3d82709503c5bad2372635d6a38e457032b
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Apr 25 12:56:44 2017 +0200

    WL#10480: Add Japanese kana sensitive collation to utf8mb4
    
    Post-push fix: Update innodb-2byte-collation.result

commit f5cc27a5ccca4c41759031d5095a0b0a1847965b
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Fri Apr 21 12:59:23 2017 +0200

    Bug#25873398 MTR error_log temporary table column line must accept all
    possible encodings. We do that by using latin1 which will allow all
    possible bytes.
    
    Reviewed by tor.didriksen@oracle.com

commit 3fb9d31e7d92155d7bb2f56ec46182d0c6ceb10b
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Apr 24 16:00:11 2017 +0200

    Bug#25945568: MYSQL 5.7 FAILS TO BUILD WITH MUSL LIBC
                  DUE TO NOT FINDING SIGEV_THREAD_ID
    
    The problem was that posix_timers relied on non-posix standard
    features which made the code not compile on Alpine Linux.
    This patch rewrites the code to use standard posix. This means
    that the ~same code can also be used on Solaris.
    
    Also fix various minor other issues for compiling on Alpine.

commit 321721c48cc8d1e8883bdf4c437480f78e51789a
Merge: ed9ab66 2d1051d
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Apr 25 15:53:30 2017 +0530

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

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

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

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

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

commit e779904cfb8dae052ead6be883b19fef17790d50
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Apr 25 15:46:12 2017 +0530

    BUG#11766444 : MTR PRINTS WRONG FILE AND LINE NUMBER WHEN TESTS FAIL
    
    Description :
    =============
    When a test case fails, MTR sometimes prints the wrong line number.
    This happens if a test case fails inside a while loop and it is not
    the first iteration of the loop.
    
    E.g:
    ----
    --let $i = 2
    while ($i)
    {
      dec $i;
      if (!$i)
      {
        execute this invalid query;
      }
    }
    
    When executing the above test case, MTR fails with the following
    message:
    
    mysqltest: At line 9: query 'execute this invalid query' failed: 1064:
    You have an error in your SQL syntax; check the manual that
    corresponds to your MySQL server version for the right syntax to use
    near 'invalid query' at line 1
    
    Note that the error was on line 7 but the test reports line 9.
    
    Issue :
    =======
    The variable 'start_lineno' keeping track of the current line number
    in a test is not updated after the first iteration and hence printing
    the line number of the last line of the loop.
    
    Fix :
    =====
    Introduced a new variable 'lineno' in 'st_command' structure to keep
    track of the the line number for each command. During the iteration
    after the first one, use this variable to update the 'start_lineno'
    variable to the current line number.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>
    RB: 16015

commit 6e3eb25d76a25053e97708fe073b8a2f3ba6d22c
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Apr 25 10:28:44 2017 +0200

    Bug #25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
    Post-push fix: Update Valgrind suppressions for changed TLS use.
    
    Change-Id: I0d8dbab8db89b03f5f80c912d88127ac2f3c737d

commit 9ec0e2258621bbe17db8ca9abced4be9f89dc8d0
Author: Xing Zhang <xing.z.zhang@oracle.com>
Date:   Tue Apr 25 16:23:35 2017 +0800

    WL#10480: Add Japanese kana sensitive collation to utf8mb4
    
    Add collation utf8mb4_ja_0900_as_cs_ks to provide kana-sensitive collation
    for Japanese.
    
    Kana-sensitive collation needs to distinguish Katakana character from
    Hiragana character on quaternary level.
    
    We assign quaternary weight only to katakana and hiragana, but not to
    others like latin, kanji. This is because those characters can already be
    distinguished by three levels of weight. This makes katakana and hiragana
    equal on first three levels and Katakana greater than Hiragana on
    quaternary level.
    
    For iteration mark and length mark which usually follows other katakana /
    hiragana character, we also assign it quaternary weight just same as the
    kana character it follows.
    
    Add _ks collation to japanese collation test
    
    BM_JapaneseUTF8MB4             507 ns/iter   473.81 MB/sec
    BM_Japanese_AS_CS             3825 ns/iter    80.77 MB/sec
    BM_Japanese_AS_CS_KS          5008 ns/iter    61.69 MB/sec
    
    Change-Id: Ic211e95454d8da21a836c41087470029ae9f856c

commit 66f21ef4543dd5d3b8b1ded260fa5a251830a91b
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Tue Apr 25 09:42:24 2017 +0200

    Bug#25950453: MAYBE-UNINITIALIZED WARNING IN SQL_PLUGIN.CC
    
    Initialize the variable to silence the warning.
    
    Change-Id: I7776e3dab98b58a2d410e94251444065feeeb87f

commit e3ced5bf4093d976694267b8e76774d7189f0b50
Merge: e61f73d f85408e
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Tue Apr 25 13:21:54 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 e61f73dbdcedcde3a4815a7cd8dfe67090ae63d2
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Wed Mar 22 23:19:53 2017 +0100

    Bug#25769774: JSON_PATH CLEANUP
    
    This patch makes the following changes in order to simplify the
    Json_path code:
    
    In Json_path_leg, replace the get_member_name() and
    get_member_name_length() functions, which return a character array and
    the length of the array, with a single function that returns a
    constant reference to the std::string member. Since many of the
    callers need to convert the result back to a std::string, returning a
    std::string directly is more convenient and avoids allocation of
    temporary std::string objects.
    
    Inline some very simple (one-line) member functions in the header file
    instead of having separate definitions in the .cc file.
    
    Remove the explicit destructors for Json_path and Json_path_clone. The
    destructors manually cleared an array right before it would be
    automatically destroyed, so they did unnecessary work.
    
    Mark derived classes with the final keyword, and overridden functions
    with the override keyword.
    
    Remove the function Json_path::initialize(). It's just an alias for
    Json_path::clear(), and its single caller is changed to call clear()
    instead.
    
    Change-Id: Ifdfc300d160213a842a66dc2aacb6fb41d1afffa

commit 042b71f9738ff161c7cafbc68145690f5a2ed135
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Sat Apr 22 12:25:46 2017 +0530

    Bug#25349924 MTR: FIXES AND ENHANCEMENTS TO THE --XML-REPORT OPTION
    
    Added documentation for the '--xml-report' MTR option.
    
    Reviewed-by: Pavan Naik  <pavan.naik@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15016

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

    Bug#24473420: NEED A WAY TO SKIP FLAKY TESTS
    
    An option named '--report-unstable-tests' has been added to MTR
    which does the following when specified :-
    
    - Report 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 caused due to unstable tests, MTR will
      print a warning and exit with a zero status code(success)
    - Adds a new xml tag to report unstable tests when the option
      '--xml-report' is used
    
    Reviewed-by: Pavan Naik  <pavan.naik@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 14307

commit a9e275b379589e8a0577adef2ac911bc9d8f560a
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Apr 25 11:41:31 2017 +0530

    BUG#25840940 : MYSQLTEST WRITE_FILE IN NON-EXECUTED IF BLOCK BREAKS PARSING
    
    Description:
    ============
    If there is append_file/perl/write_file command in an if or while
    block,  which is not executed, mysqltest will fail to find the end of
    that block.
    
    Issue:
    ======
    When if or while condition evaluates to false, mysqltest doesn't parse
    append_file/write_file/perl mysqltest commands and which causes
    parsing error when end of block is encountered.
    
    Fix:
    ====
    Parse these commands even if the condition evaluates to false, but
    don't  execute them.
    
    Reviewed-by: Bjorn Munch <bjorn.munch@oracle.com>
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>
    RB:

commit 8ef11bd72d9236aaf87390925cbac1dbd30e1876
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Apr 21 17:04:13 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#7
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I81ec6721ee5334f1782f30da242ba776e82f2b00

commit 9025f2016570b091bad1cbbea28fdd12cfaa1345
Merge: 0588d3b 7df008c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Apr 24 14:06:56 2017 +0200

    Null-merge from 5.7

commit 0588d3b71f8a28480f8c195a5058bb1539bce1d1
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Apr 24 13:16:22 2017 +0200

    WL#9495 Update schema tables of dynamic plugins into data dictionary.
    
    Post-push fix:
    - Fix main.dd_bootstrap_debug test failure.
    - Remove two leftover files.

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 157fc87bf21908270be3f54105d95439c5f6f0a4
Merge: 2bbcfa4 766bdcd
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Apr 24 15:43:02 2017 +0530

    Merge branch 'mysql-5.7' into mysql-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 2bbcfa46b036377851c9bc39e74df34546fdfe57
Merge: 45fc9d6 1e81a9f
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Mon Apr 24 15:19:08 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 45fc9d6443dbe8784408fdde393e08ed7597afca
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Tue Apr 18 19:38:15 2017 +0200

    v3-Bug#25911239 - UPGRADE FROM 5.6 TO 5.7 TO 8.0.2 FAILS
    
    Problem:
    -------
    1. InnoDB SYSTEM TABLES are assumed to be contiguous. This is not true.
    
    2. FTS AUX table index names are assumed to be names from 5.7, i.e they are
    always assumed to be "FTS_INDEX_TABLE_IND" or "FTS_COMMON_TABLE_IND"
    
    Fix:
    ----
    1. Do not assume consecutive table ids of SYSTEM tables.
       Build SYSTEM table_id array and rely on that instead of INNODB_SYS_TABLE_ID_MAX
    
    2. Parse table names during upgrade and use "FTS_INDEX_TABLE_IND" for AUX index tables
       and "FTS_COMMON_TABLE_IND" for AUX common tables.
    
    Reviewed-By: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16030

commit 1b068280fa7cbb49ccc5c5a923b33557848d8bee
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Mon Apr 24 09:58:36 2017 +0200

    Bug #25772329 UPGRADE TO BOOST 1.64.0
    
    Upgrade dependency to 1.64.0 and remove those patches for Boost 1.63.0
    that are already included in 1.64.0. Add patches to fix bugs in Boost
    1.64.0.
    
    Change-Id: I49e43b96cf1fff5f6cb227a198f7035cd42ceaf7

commit d5a54e3e3eb31e500b8d960497989ba003629ba8
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Apr 24 09:34:17 2017 +0200

    WL#9834: Post-push fix. Fix Clang build warning:
    rapid/unittest/gunit/libmysqlgcs/xcom/gcs_xcom_group_member_information-t.cc:490:36: error:
          unused variable 'ret' [-Werror,-Wunused-variable]

commit 76bb1e6d4d7734ce11ff8d027ebb7e68ea0792ce
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Mon Apr 24 14:25:50 2017 +0800

    wl#9534 InnoDB_New_DD: Instantiate InnoDB in-memory metadata with  newDD objects
    
    Followup patch for fixing a race issue in online alter table.
    We need to acquire mdl lock on the tmp table name in online alter table. Otherwise,
    purge thread could hold the old table, and prevent the table to be dropped.
    
    Approved by: Jimmy Yang <jimmy.yang@oracle.com>

commit 41f35c37f9b97ec8fb1eff436bcd7d8a58e58c30
Merge: 8c5f0d7 42b84aa
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Mon Apr 24 01:08:45 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ed9ab6608f34862d385879b1bb35768a7723f288
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Sun Apr 23 14:51:11 2017 +0200

    Bug#25703113 A TOO HIGH 'BATCHBYTESIZE' ARGUMENT SENT IN THE SCANREQ
    
    The max 'BatchByteSize' sent in SCANREQ signals were not always
    set correctly to reflect a limited 'byte' size available in the
    client side result buffers.
    
    This patch refactor parts of the result buffer size calculation,
    such that also the 'BatchByteSize' is modified to correctly
    reflect the max batch 'byte' size the data nodes may return

commit 8c5f0d77552ae3e2ae7492c5e32a7367d82e0400
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Sun Apr 23 11:27:10 2017 +0100

    WL#9834: Follow up patch that fixes some failures on Windows, test case
    gcs_xcom_group_member_information-t, due to nodes getting the same UUID
    (i.e. timestamp) value when they were supposed to be different.
    
    Introduced a delay between the calls that define the timestamp so they
    will be different.

commit 8cee33ffaf844aea2f6dfaad101b72fd8f89d678
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Sat Apr 22 09:42:40 2017 +0200

    Bug#25793429 CAN'T RETURN INFORMATION_SCHEMA.TABLES.CREATE_OPTION IN UPPERCASE
    
    The problem was that the string type UDF's introduced by
    WL#6599 were using the arguments collation for the resulting
    string too. The argument for GET_DD_CREATE_OPTIONS() is
    mysql.tables.options, which is a blob and then the UDF
    returned string with collation 'binary'. This is not
    desirable.  As a effect, an attempt to do
    UPPER(CREATE_OPTIONS) would not convert the result of
    GET_DD_CREATE_OPTIONS() to upper as it returns a binary
    string.
    
    The fix is to set the default_collation() for UDF's item
    during item resolution. The problem is fixed for following
    UDF's,
      GET_DD_CREATE_OPTIONS,
      INTERNAL_GET_COMMENT_OR_ERROR,
      GET_DD_COLUMN_PRIVILEGES
    
    A test case is added.

commit 244ed0e00305df3f79463038737650fca976bd86
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Sat Apr 22 03:50:01 2017 +0200

    WL#9495 Update schema tables of dynamic plugins into data dictionary.
    
    This WL focuses to present INFORMATION_SCHEMA (I_S) tables
    metadata to be visible through I_S.TABLES. Following are the
    three areas where we can find I_S tables in MySQL server.
    
       1. Server I_S table.
       2. Builtin plugin's I_S table.
       3. Dynamic plugin's I_S table.
    
    Writes metadata of above I_S tables to data dictionary (DD)
    tables, so that the system view I_S.TABLES picks it. Major
    changes involve,
    
    * Update DD tables when a plugin is loaded or unloaded.
      This can happen when server is started by command line
      options or by INSTALL/UNINSTALL commands.
    
    * Store plugin I_S table metadata in DD on server restart.
      Discard old plugin I_S table metadata based on plugin
      version number.
    
    * Upgrade system views by introducing 'IS_version' number.
    
    * Update server I_S table metadata into DD upon server
      initial start. And also update the same based a
      'IS_version' upon server restart.
    
    * Move creation of system views from mysql_system_tables.sql
      script to server initial start similar to the way the
      DD tables are created.
    
    * Hide I_S.*_DYNAMIC and I_S.SHOW_* internal system view
      from user to be visible from INFORMATION_SCHEMA.TABLES.
    
    * Restrict use of I_S.SHOW_* and I_S.*_DYNAMIC I_S table
      names in a SQL statement by user, similar to the way we
      restrict use of DD table names.
    
    The patch also does following,
    
    - Keep all the related I_S metadata related code in
      sql/dd/info_schema namespace.
    
    - Rename table mysql.version to mysql.dd_properties. Due to
      the new definition and name of the version table the new
      binaries cannot run on old data directories.
    
    - Store 'IS_version' property in mysql.dd_properties. Update
      IS metadata in DD upon server restart if this version
      changes.
    
    - Force optimizer to use InnoDB engine (during bootstrap) to
      instantiate temporary table while processing UNION clause
      when creating I_S system system.
    
    - Add SELECT_LEX flag call OPTION_SELECT_FOR_SHOW which
      enables server to block any use of server internal system
      views by the users in user SQL statements.
    
    - I_S column property is_nullable and is_unsigned are also
      stored in DD now, this was ignored earlier.
    
    - The st_field_info has no option to specify a default value,
      numeric precision and scale, and hence these values would
      differ when compared to new values. This is something we
      can work on to match the behavior, but it seems like these
      values are of less important to users.
    
    - Added test to thread_pool.thread_pool_i_s_restart with
      scenarios specific to loading I_S plugin using --plugin_load
      option.
    
    - Added test case in main.information_schema and other
      scenarios are being tested by existing test cases.

commit e426bf6629173341f64286da49c690e4738a600f
Merge: 1d495ba 84eebed
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Fri Apr 21 15:36:18 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

commit 1d495ba0b7433382e42e2a654cd6f07fca2746f9
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Apr 21 16:13:52 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#5
    
    Post-push fix: the test should be disabled for --log-bin
    
    Change-Id: I4c937bd04ff28bddd0e0f985f0b93311dd7efcf0

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 b7b9fe3d40555d02f04c26c9f5283bdf10b8784f
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 13 12:43:38 2017 +0100

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Move acquire() calls higher in call hierarchy to reduce
    number of acquire() calls. Pass const dd object references or
    pointers instead of object name strings.
    
    Part 5: More changes regarding tables.
    
    This patch also improved the crash-safeness of triggers wrt.
    ALTER TABLE. This is a partial fix for
    Bug#25732832: TRIGGERS ON MYISAM TABLES MAY BE DROPPED DURING DDL LOAD
    For INPLACE ALTER we copy the triggers from the old table to
    the new table just before the old table is deleted but without
    making the new definition persistent until right afterwards.
    For COPY ALTER, triggers are moved from the old to the new
    table just before the old table is deleted.
    A complete fix for Bug#25732832 requires improvements in InnoDB
    gap locking to avoid InnoDB deadlocks during table renames.

commit 1a1552df8050116008f59af04d9ee12a2139f928
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Apr 20 13:18:27 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#6
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Update tests to pass with --mysqld=--innodb-page-size=4k
    
    Change-Id: Ia6ee0a9539136b823e6d6d3454cba400c00b879d

commit 6e26b43ead0cbfd31949f5158f1ea6fb6a72f48c
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Fri Apr 21 10:48:26 2017 +0200

    Bug#25914296: OUT-OF-BOUNDS READ IN MYSQLD.CC FIX_PATHS
    
    Problem: Using --basedir= would result in an out-of-bounds read ASAN
    error. Root cause was a failure to check if mysql_home is empty when
    checking if mysql_home ends with FN_LIBCHAR. The test used,
    strend(mysql_home)[-1]==FN_LIBCHAR, leads to out-of-bounds read when
    mysql_home is empty and strend(mysql_home)==mysql_home.
    
    Solution: Add a separate check for strend(mysql_home)==mysql_home.

commit 441ae457f79c5a2427bb41be81e20c4ca6fa4102
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Fri Apr 21 16:12:12 2017 +0530

    Bug#25252679 : ENABLE MAIN.MYSQL_UPGRADE.TEST
    
    mysql.ndb_binlog_index table is created in mysql schema
    when server is built with NDB cluster. This result in an extra
    entry in output of mysql_upgrade. Hence, tests that execute
    with both and without ndbcluster, fails with 'result content
    mismatch' when mysql_upgrade is executed.
    
    Update the tests to filter out results related to the
    ndb_binlog_index table.

commit 53bd030b165ecce715d3ec4d8c2fbf859937fd09
Author: Sivert Sorumgard <sivert.sorumgaard@oracle.com>
Date:   Thu Apr 20 08:59:24 2017 +0200

    WL#6394: Fix two leftover TODOs.

commit 5499b4a85590f94aa87bf0525b7fd02afaa4d6dc
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Fri Apr 21 12:38:00 2017 +0300

    Follow-up to pre-requisite patch for WL#6049 "Meta-data locking for FOREIGN KEY tables".
    
    Fixed "conversion from 'size_t' to 'uint16', possible loss of data"
    on Windows.

commit 6aa762d6e1a801c5c1dcc54d7e12bafc2acdeabd
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Fri Apr 21 09:52:09 2017 +0300

    Removed old partitioning DDL implementation which is no longer in use.
    
    After WL#8971 "Deprecate and remove partition engine" and WL#9559
    "InnoDB_New_DD: Support in-place ALTER PARTITION" code implementing
    "fast" partitioning DDL (fast_alter_partition_table() and related
    functions) became unused.
    
    This patch removes this dead code (including DDL_LOG implementation
    used by it) as a follow-up to the above WLs.

commit b43c062ee4e0f70142aebdaa4c103da0360e70c1
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Fri Apr 21 13:24:47 2017 +0530

    Core file generation is now enabled for ASAN buids,
    enable the test, wait for it to generate core

commit 8f2716fd156de05a1a1b05f1cb47c82289ebdd65
Merge: c72a4ad 95ab8be
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Fri Apr 21 09:54:00 2017 +0200

    Null-merge from 5.7.

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 c72a4ad0af19f7efdd6c4e1e4fb1efdac0d9db3f
Merge: ecb71f7 e335827
Author: Sujatha Sivakumar <sujatha.sivakumar@oracle.com>
Date:   Fri Apr 21 11:59:27 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 76e921d16fc677d70bc87343caea2f90f4c10e2e
Merge: 64fa3b8 4f743da
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Fri Apr 21 10:26:00 2017 +0530

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

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

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

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

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

commit ecb71f718437580ba58dae60ccd0d1d2ee31228b
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Thu Apr 20 16:16:28 2017 +0800

    wl#9534 InnoDB_New_DD: Instantiate InnoDB in-memory metadata with  newDD objects
    wl#9530 InnoDB_New_DD: FTS index support for newDD
    
    Followup patch for fixing failures in UBSAN and noperf build.
    
    Approved by: Jimmy Yang <jimmy.yang@oracle.com>

commit aa669c17fa52da34a024542dc1d59742a769881d
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Apr 21 00:39:12 2017 +0530

    ldap: Fixed deb package issue.

commit 541de342b5b2ebeda9a61d2aff8482273e342a72
Author: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
Date:   Thu Apr 20 20:53:50 2017 +0200

    Bug#25659276 - inconsistent sub_part for show indexes
    
    Issue here is, for full text index on multi-columns, "SHOW INDEX"
    statement is showing the NULL value for sub_part column only for
    the first index column. For other columns invalid value is listed.
    
    "SHOW INDEX" statement and INFORMATION_SCHEMA.STATISTICS uses
    native method "GET_DD_INDEX_SUB_PART_LENGTH" to get the sub part
    length. The sub part length for the full text index is always
    NULL. Type of index is read from the index.options columns in the
    native method to check if index type is full text. But revno
    7aa46d0c8cf217d42be347248d7414f1fccef1e1 in WL6599 tree stopped
    storing the index type in index.options column. Hence inconsistent
    results displayed for the full text index.
    
    To fix this issue, index type is passed to the native method
    instead of index.options column value.
    
    Also GET_DD_INDEX_SUB_PART_LENGTH is implemented to return string
    value instead of integer value. As part of this patch
    GET_DD_INDEX_SUB_PART_LENGTH is implemented to return integer
    value.
    
    "SHOW INDEX" output in some of the result file is recorded
    incorrectly as part of WL6599 changes. Updated result files
    of tests to match the 5.7 results.

commit 09908c504b25e966fdf00ba269f60bd1248c7a51
Merge: b887476 af75eb5
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 20 21:55:41 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 b887476d24b7afda19a87ceb9fa1d56a4ef916a0
Merge: 994d2b0 0050b8b
Author: Tomasz Stepniak <tomasz.s.stepniak@oracle.com>
Date:   Thu Apr 20 17:00:32 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 994d2b05a262b140e9ffc06f8b033ba3686e2bca
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Thu Apr 20 16:27:28 2017 +0530

    WL#9461 : Upgrade for Innodb Internal Dictionary Migration
    
    Post push fix:
    Fix compilation error by handling return value
    from fread function call.
    
    Update sql/dd/mtr_readme.txt to remove entries for
    - main.mysql_upgrade.test   : Enabled in trunk.
    - i_main.mysql_upgrade.test : Removed in trunk.

commit cf885554bbf3d4c704a201f3e3a4d86169c783c1
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Apr 19 15:56:31 2017 +0200

    Bug #25917702: USE C++11 THREAD-LOCAL STORAGE INSTEAD OF MY_THREAD_LOCAL
    
    Remove all use of my_thread_local_*, except for in NDB and performance schema,
    which will have their own patches.
    
    Change-Id: I84a5ac687a951672107ca6f556303f4e4894db66

commit 40a4ce8dfa32f05f376dad1be3ab63558a08a2c5
Merge: 2dcde0f 4ef48ea
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Thu Apr 20 19:33:23 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk
    
    Conflicts:
    	mysql-test/suite/gis/t/spatial_analysis_functions_buffer.test
    	mysql-test/t/gis-precise.test

commit 2dcde0f4dd9dec26eeb479512702fe99e17d3ec9
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Apr 20 15:01:58 2017 +0200

    Fix doxygen formatting errors in InnoDB memcached.

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 33cbadc4490088885ed558a0b076cc3ff10df36a
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Thu Apr 20 08:48:51 2017 +0200

    Bug#25914953: ASSERTION FAILED: M_THD->GET_TRANSACTION()->IS_EMPTY(TRANSACTION_CTX::STMT)
    
    Problem: Using the IMPORT stmt with an active txn (START TRANSACTION
    WITH CONSISTENT SNAPSHOT) would trigger an assert. Root cause was that
    the sql_command_flag CF_NEEDS_AUTOCOMMIT_OFF had been set for IMPORT
    without also setting CF_IMPLICIT_COMMIT_BEGIN (which is part of
    CF_AUTO_COMMIT_TRANS). The former flag causes Disable_autocommit_guard
    to be used, and this guard assumes (asserts) that there are
    no active txns. But since CF_IMPLICIT_COMMIT_BEGIN had not been set
    for IMPORT, active transactions were not committed before the guard
    was used.
    
    Solution: Set CF_AUTO_COMMIT_TRANS and other appropriate
    sql_command_flags for SQLCOM_IMPORT.

commit 64fa3b87b2c0df6077027c6603373ca317012213
Merge: b3cb4ea 2c7b148
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Thu Apr 20 16:57:42 2017 +0530

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

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

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

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

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

commit 58b79cdfe34725ccef230a429e3e7340c792003b
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Thu Apr 20 13:28:52 2017 +0530

    Bug#25896259 : MYSQLD UNGRAMMATICAL ERROR MESSAGE
    
    Fix the error message for case when server is started on an invalid
    data directory.

commit cc95755111ec1bbeac8c07474b12f01d5374ebae
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Thu Apr 20 08:48:34 2017 +0200

    Bug#25912557 ST_LATFROMGEOHASH/ST_LONGFROMGEOHASH ODD INPUT TYPE REQUIREMENT
    
    Post-push fix: Re-record result file

commit d88561756efa2cacb45d593d14eeebac0c49cab0
Merge: 593e675 feb666b
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Thu Apr 20 12:11:27 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk
    
    Conflicts:
    	mysql-test/r/gis-precise.result
    	mysql-test/r/gis.result
    	mysql-test/r/mysqltest.result
    	mysql-test/suite/gis/r/spatial_analysis_functions_buffer.result
    	mysql-test/suite/gis/t/spatial_analysis_functions_buffer.test
    	mysql-test/t/gis-precise.test
    	mysql-test/t/mysqltest.test

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 593e675d9bcad32a4edfaef611f93bacb24d525a
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Thu Apr 20 09:27:01 2017 +0530

    Revert "Bug#25775881 - INNODB ASSERTION DURING INITIALIZE IF FAILED TO CREATE TABLESPACES.OPEN.1"
    
    This reverts commit 80a1b3f33f1eade00f1e215a6f655f03376106cb.

commit e22242f72091995e579f129d4de39a34c25d416c
Author: Jimmy Yang <jimmy.yang@oracle.com>
Date:   Thu Apr 20 10:54:12 2017 +0800

    Fix Bug#25914332 ERROR IN PARSING OPTIMIZE FTS TABLE WITH NO APPARENT REASON
    Need to open the AUX table before going into internal InnoDB SQL Parser to
    avoid releasing dict_sys mutex during table open.
    
    rb:16037
    approved-by: Allen Lai<allen.lai@oracle.com>

commit ed1eab582f1967477a4a782cd1735acd61f89edc
Merge: 26a3992 cdd9186
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 20 08:11:09 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 26a39921cd5598f593e6e50cff08611bb23f9683
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Thu Mar 30 17:39:50 2017 +0300

    Pre-requisite patch for WL#6049 "Meta-data locking for FOREIGN KEY tables".
    
    Also includes fix for bug #25807393 "IMPROPER HANDLING OF DATABASE NAMES WHEN
    LOCKING TABLES FOR TRIGGER EXECUTION".
    
    Changed Query_tables_list::sroutines set/hash to use custom key instead of
    MDL_key. This should allow addition of new entry types for this set without
    adding new artificial namespaces to MDL subsystem.
    
    New custom keys are compatible with MDL_key format, so new initializer for
    MDL_key was introduced, which allows quickly produce MDL_key from 'sroutines'
    keys when needed.
    
    New custom keys should also consume less memory, as unlike MDL_key, they are
    stored in variable-length buffer allocated along with entries for 'sroutines'
    set on memory root.
    
    Changed 'sroutines' hash to use binary comparison for the keys. This ensures
    that comparison of database component of the key is done correctly, in
    case-sensitive fashion, on case-sensitive filesystems.
    Since routine and trigger names are case-insensitive, we always lowercase
    their names when generating keys.
    
    This fixes bug #25807393, which occurred because prelocking algorithm was
    not able to differentiate triggers belonging to databases which names only
    differed in case (e.g. 'a' and 'A') and as result ignored tables and
    routines needed by one of 'duplicate' triggers.
    
    Finally, fill_dd_view_routines() code was changed to store only routines
    which were directly used by view. Indirectly used routines should not
    affect view columns/validity status in I_S.

commit 74373e05ce6c4d6839a49405c129fe172f8af4e5
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Mon Apr 17 17:28:24 2017 -0700

    Bug #25910531 INNODB: RECENT MACOS AND WINDOW COMPILE WARNINGS
    Fix warnings found in macOS and Windows builds

commit cea62e360bb86842a54f6eb734557aa22dac3afb
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Apr 19 13:53:18 2017 +0200

    USE C++11 STD::CALL_ONCE INSTEAD OF MY_THREAD_ONCE
    
    Now that we have C++11, we can replace our home-grown my_thread_once
    with std::call_once.
    
    There was some deinitialization code that assumed one could deinitialize
    my_thread_once flags by copying them, which isn't allowed with std::once_flag;
    since the deinitialization code doesn't actually free anything (all it would
    do would be to make the character set initialization run twice), this was
    simply deleted.
    
    Change-Id: Ifaf7e0c3fec71f00230e413dba297681128fa831

commit d0af0d854e1b4e7b5b4a3dbba37843ef593b1523
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Tue Apr 18 08:59:19 2017 -0700

    Code Cleanup.   Spaces to tabs, spelling grammar in comments,
    added helpful comments, etc, found while doing wl9507.

commit 40e01e88f917c152671a749131d21d312bcca843
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Apr 19 10:01:06 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#5
    
    Post-push fix:
    disable result log, rather than trying to maintain flaky replace patterns
    for restart commands with many/long arguments.
    
    Change-Id: I5859570d5776a0dffb9284514e664a87318f78a0

commit f889d18a5c1b539c885fc3b03ec2e82d3500e5df
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Wed Apr 19 14:01:48 2017 +0100

    BUG#25821918 ERROR WHILE RUNNING GCS SIMULTANEOUSLY JOIN THE GROUP TEST
    
    We suppressed an error message that was printed out when the state exchange
    didn't have any user data because the message was leading to false suspicions
    on problems in GCS. The lack of a data user means that the upper layer has
    provided a NULL pointer during the gathering phase of the state exchange
    process and this is an expected behavior.
    
    Besides, we changed the code to pass a NULL pointer in the view delivery
    callback instead of passing a pointer to a message object without any content
    as parameter thus making it report what it obtained during the gathering phase.

commit d169c0ed11fa3672bfd961ed330032a5579452e5
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Apr 19 15:35:30 2017 +0200

    Bug#25915329 MISC CODE CLEANUP, PASS ENGINE_TABLE_SHARE WHEN CREATING PFS
    TABLES
    
    Added a PFS_engine_table_share * parameter to every table ::create method.

commit 0856934374453111a2f09b895df2bbab7fff1918
Author: Daniel Blanchard <daniel.blanchard@oracle.com>
Date:   Tue Apr 11 14:48:24 2017 +0100

    Bug #24823885: PERFORMANCE REGRESSION WHEN CHANGING CHARACTER SET TO UTF8MB4
    
    Post-push fix: force inlining of store16be, my_valid_mbcharlen_utf8mb4
    and my_ismbchar_utf8mb4 on Windows.
    
    Change-Id: I1461406742ec25407d9b89951c79e568d41231ec

commit 5c872e89ad2709ef3a374ed2f370e799e30e4cac
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Wed Apr 19 16:03:32 2017 +0530

    WL#6378 : New data dictionary
    
    Remove disabled i_main.mysql_upgrade.test in mysql-8.0
    
    mysql.innodb_index_stats and mysql.innodb_table_stats tables
    were introduced in mysql-5.6. The test case was added
    to test upgrade from mysql-5.5 to mysql-5.6.
    The test case delete mysql.innodb_index_stats and
    mysql.innodb_table_stats tables. This is not a valid scenario
    in mysql-8.0.

commit a115a439105d4ff959085f1ad6eb8d1122e87cd5
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Wed Apr 19 16:21:14 2017 +0530

    Bug#25252679 : ENABLE MAIN.MYSQL_UPGRADE.TEST
    
    Post push fix:
    Update sysschema.mysqldump result file for changes in
    backup_tables_priv_and_users.inc file.

commit 090b2401b9cc0b04f6108b719330a3cafe2c7991
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Apr 18 15:26:28 2017 +0200

    Bug#25909943: CLANG BUILD WARNINGS IN LDAP AUTH PLUGIN
    
    Fix various Wnon-virtual-dtor, Wpointer-bool-conversion and
    Wmissing-field-initializers build warnings.
    
    Also make WITH_AUTHENTICATION_LDAP a proper CMake option.

commit 2bb23f792d9367aae0f09e71be52915d6aee10a9
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Wed Apr 19 13:24:21 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: I1b6b82c14e1b87df67901fce0151e6cc431b4ac7

commit f87fb8a442f27da10ef15ef4aff9cfc3ceb71927
Merge: 19087ab 86b66ec
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 19 16:21:51 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 19087abe0b257fc1d5a8581260e6704707d2de2b
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Apr 12 12:26:14 2017 +0200

    Bug #25909342: USE C++11 THREAD-LOCAL STORAGE FOR CURRENT_THD
    
    Our current implementation of current_thd uses mysys' my_thread_* API, which
    maps onto pthreads (at least for Linux/UNIX). C++11 supports native TLS,
    which means we just need two simple MOV instructions to do a TLS fetch
    instead of a full shared library call; the interface is also much simpler.
    We probably don't have a lot of performance gain, since we don't pick out
    current_thd all that often, but it's a nice cleanup to do nevertheless.
    
    There are still some uses of the my_thread_* API, particularly in PFS;
    cleaning this up is for a later patch.
    
    Change-Id: Ia16e0c1ccfa52af815882bcddd1eb3be80f77c61

commit 40e47f8f6bcb45a7215355b5d78a3385cd94a8ba
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Apr 19 08:43:44 2017 +0200

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Patch #21: Fix recently introduced -Wunused-parameter warnings.

commit 657d99d05bf9aa5445ee2040d4ed0d7d52a3a202
Merge: c1e6945 adf405d
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 19 15:27:23 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 c1e6945bfeaa8ffa5579f3b44f3801315a89bb58
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Wed Apr 19 12:33:41 2017 +0530

    Bug#25252679 : ENABLE MAIN.MYSQL_UPGRADE.TEST
    
    - Enable main.mysql_upgrade.test
    - Record result file according to latest trunk.
    - Divide main.mysql_upgrade test case into four tests
      main.mysql_upgrade.test
      main.mysql_upgrade_options.test
      main.mysql_upgrade_grant.test
      main.ps_sys_upgrade.test
    - Mark main.mysql_upgrade_options and main.ps_sys_upgrade
      as big test. Add 60 min timeout values for these tests.
    - Create on disk tables instead of temporary tables from
      backup_tables_priv_and_users.inc to handle server restarts.

commit ed4d1f4648d19286b4f064a5d2a08c3a894f157b
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Apr 19 10:17:11 2017 +0200

    Doxygen cleanup,
    add URL to google coding style.

commit 4f85199b138151e65199d1e23873a4fa3b639653
Merge: 1335597 bb138be
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Apr 19 13:23:06 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

commit 1335597280e2843fe1433294e11ca2afc9e60349
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Tue Apr 18 16:43:18 2017 +0530

    Bug#25812054:: SYS_VARS.INNODB_NUMA_INTERLEAVE_BASIC FAILING WITH 1193: UNKNOWN SYSTEM VARIABLE
    
    Problem Description:
    Currently "libnuma-dev" library is NOT mandatory for Linux. A user
    can compile MySQL on Linux without "libnuma-dev".
    
    The above test will fail wherever the libnuma-dev library is
    not installed. It was recently seen on Developer's testing machines
    (eg. rpl Hudson machines).
    
    Fix:
    A skip file is introduced which provide a means for users who do not
    want to explicitly install the libnuma-dev libraries before running
    the tests.
    
    Reviewed by:
    Joao Gramacho <joao.gramacho@oracle.com> over pidgin

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 b3cb4ea79732a1caab14d046d7642463da068a1d
Merge: 53726f1 4dbf61a
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

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

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

commit ce53669f5256852ec299e286913e3a6aa3629c50
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Wed Apr 19 11:06:53 2017 +0530

    BUG#24736713 : MTR DOC: BEHAVIOUR OF TESTCASE-TIMEOUT WITH VALGRIND IS NOT CLEAR
    
    Description:
    ============
    When running a test with testcase-timeout = 1 for example and valgrind
    enabled the test will not timeout after 1 minute.
    
    The behavior changes, as with valgrind the timeout is multiplied by
    10. This behavior is not described/documented anywhere though.
    
    Fix:
    ====
    Updated the MTR doxygen documentation.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15983

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

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

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

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

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

    Rename ndbd_redo_log_reader man page to ndb_redo_log_reader

commit 40ea7f2de73da7eaf1015fa247b3f5f6f46ca1e0
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Apr 11 13:59:47 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#5
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I6d3b381b06f1860d65495c89995ff8543d36e90f

commit 479f928338847de818011e5424765b6477d5787f
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Apr 11 10:17:49 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#4
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I507192b3966468cd1f6a255b40992f3b47f5a111

commit 8910154c06ace5ebc36dee9163bef4ee1beff230
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Apr 6 09:57:53 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#3
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: Icb1d010b6ec218eebc206697fe3294e82b12c234

commit 3cbe594bc60536f71f1576c79d4401f91cde212d
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Apr 10 15:49:58 2017 +0200

    Bug#25866743 ASSERTION FAILED: FALSE IN ITEM_FUNC_GEOMETRY_FROM_TEXT::VAL_STR
    Bug#25867000 CRASH IN ITEM_FUNC_PASSWORD::VAL_STR_ASCII
    Bug#25866143 CRASH IN ST_ASWKB STRING::COPY
    
    Regression source:
    
        Bug#25586673 : ASSERT IN DA FOR SQL_CMD_UPDATE::UPDATE_SINGLE_TABLE
        Bug#25586959 : SERVER CRASH IN SQL_CMD_DELETE::DELETE_FROM_SINGLE_TABLE
    
    Change-Id: I635b1f78b960b865a3a7a12e68fa6d60ac6d0dc5
    Fix: use error_str() to propagate null_value in case get_date() fails.

commit 80a1b3f33f1eade00f1e215a6f655f03376106cb
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Tue Apr 11 22:00:40 2017 +0530

    Bug#25775881 - INNODB ASSERTION DURING INITIALIZE IF FAILED TO CREATE TABLESPACES.OPEN.1
    
    Problem:
    --------
    The problem happens only when mysqld process is run as root user and
    creates datadir as mysql user. When InnoDB creates tablespaces.open.(1|2)
    files using absolute path to fopen(), file creation fails with permission
    denied error. Since this file cannot be opened for writing, a fatal error
    is thrown.
    
    Fix:
    ----
    When creating the tablespaces.open.(1|2) files, an absoulte path is formed.
    This is not necessary. Just create the path based on srv_log_group_home_dir
    and the tablespace.open.(1|2) file.
    
    Reviewed-By: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 16012

commit fbfb078e985e3a0dcb0a7e08729b865688f315bb
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Apr 18 08:57:42 2017 +0200

    Bug#25881783: FAILURE TO INSTALL TABLE WITH FK FROM SDI
    
    Add SDI serialization/deserialization of "referenced table catalog name"
    for foreign keys and correct typo for "referenced table schema name".
    This is required for proper SDI usage for foreign keys.
    
    No testcase added since MyISAM does not support FKs and InnoDB
    does not yet use SDIs.

commit 3fa41e5e141679574c889c05c47826d57a00b38b
Author: Parakh Agarwal <parakh.agarwal@oracle.com>
Date:   Tue Apr 18 15:02:00 2017 +0530

    WL#10185 followup fix to main.variables

commit 6bdad246feca3e93d0af6281e670d7a2e8492442
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Apr 18 11:20:17 2017 +0200

    Applied clang-format 4.0.0 (git)

commit 53726f1f8d34889b43f65d25fd346f8f3adeff94
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

commit bdbd8bd255e35206e1c810b6111d4ebb0f0e126a
Author: Parakh Agarwal <parakh.agarwal@oracle.com>
Date:   Tue Apr 18 14:45:40 2017 +0530

    WL#10185 follow up fix to main.variables

commit f87d26b9fa85c0824d08b9bf2c3fc7b607d34d35
Merge: c4b1cf9 4e99d4a
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Tue Apr 18 14:25:16 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 c4b1cf97fb7de859f289ee8e67f53cf3b8fd76c1
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Tue Apr 18 12:17:09 2017 +0530

    Due to change in default charset below keyring_okv tests were failing
    and have been fixed:
    
    1. keyring_okv.table_encrypt_2
    2. keyring_okv.keysecure_table_encrypt_2
    3. keyring_okv.keysecure_table_encrypt_3
    4. keyring_okv.table_encrypt_3
    
    Fix: The test results have been re-recorded to replace latin1 with utf8mb4
    
    Reviewed by:
    Pavan Naik <pavan.naik@oracle.com>

commit ff86ce76decce1ca32bf348eae3b7be3f86626ab
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Apr 18 08:26:28 2017 +0200

    Fix recently introduced Clang build warnings.

commit 6d4cad10d6da73d97469b5cc883fbfd02cbd14cf
Author: Parakh Agarwal <parakh.agarwal@oracle.com>
Date:   Tue Apr 18 11:25:34 2017 +0530

    Wl#10185: Remove all references to embedded server from MTR tests
    
    WL#9816 has removed ability to build embedded server. This WL should remove all
    references from MTR tests.
    
    Reviewed by:
    Anitha Gopi <anitha.gopi@oracle.com>
    Pavan Naik <pavan.naik@oracle.com>
    Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15528, 15671

commit 8948a34c2e09fedf0b5d08833e129a46699854fe
Merge: 5a90b60 f35db06
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Tue Apr 18 09:55:30 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 5a90b6011ce2f82ab39bbc019225e6000b25cee8
Merge: 62a6848 d540b9d
Author: Arun Kuruvila <arun.kuruvila@oracle.com>
Date:   Tue Apr 18 09:48:46 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ecae44ecc35ee746b856ef124be39c8afd22bb7d
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

commit 62a68488ae3718c76aefcd51873a526d2bd3a6d2
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon Apr 17 16:50:18 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 0fe47ec3ab72e4264111b5313639c56b7d41bf58
Merge: 115b980 c0f3d47
Author: Hemant Dangi <hemant.dangi@oracle.com>
Date:   Mon Apr 17 16:19:48 2017 +0530

    Null-merge from 5.7.

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 115b9801083f87cac3db379b9cbdaebcf4dba969
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Mon Apr 17 10:58:31 2017 +0100

    BUG#25316086 MYSQL 8.0 ASSUME TRX BEING APPLIED WITH 5.7- MYSQLBINLOG DUMP AS ORIGINAL
    
    Post-push fix.
    
    Problem:
    Test binlog_gtid.binlog_replay_oct_cross_version was failing because the
    master's binlog might have transactions from previous tests and there
    would be errors when the test re-applied it.
    Fix:
    Add a RESET MASTER to the begining of the test.

commit 61fd7f828670be33c12da7d1f226090e68896573
Merge: 3b329f5 c0e71ff
Author: Shishir Jaiswal <shishir.j.jaiswal@oracle.com>
Date:   Mon Apr 17 12:08:53 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 3b329f5edf730decd9ce885672110a804a18c97f
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Sat Apr 15 22:05:31 2017 +0100

    WL#9834 MySQL GCS - Minor Refactoring: Information on nodes are
            duplicated in several modules and classes
    
    Information on nodes are duplicated in several modules and classes and
    this makes it difficult to reason about the code and improve the MySQL
    GCS.
    
    For example, information on a node was stored in several member variables
    which had to be kept updated and synchronized and some of them were never
    used. Nodes' addresses were stored in more than one class which were placed
    in different modules and apparently there was no correlation between them.
    Gcs_xcom_group_member_information, Gcs_xcom_nodes and Gcs_member_identifier
    stored copies of an address, etc.
    
    In this patch, we took a small step to clean up this scenario. First,
    all objects that store information on a node or member are placed in a
    single module: gcs_xcom_group_member_information. There are currently
    two classes: Gcs_xcom_node_address and Gcs_xcom_node_information. The
    first has information on the node's hostname:port and is used during the
    configuration process. The second is used to store the node's unique
    identifier, a string identifier, which is the hostname:port, and its
    status: alive or dead. It is basically used to notify XCOM 's knowleged
    on the current group and to ask XCOM to add or remove a node from the
    group. Finally a set of nodes is stored within the Gcs_xcom_nodes class.

commit 4ffa72047fcd2663a25b22d28cc66999dc7fec85
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

commit fd0dfe81e7a31de1895025ce4671c6904599fc19
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Sat Apr 15 12:14:06 2017 +0800

    wl#9534 InnoDB_New_DD: Instantiate InnoDB in-memory metadata with  newDD objects
    wl#9530 InnoDB_New_DD: FTS index support for newDD
    
    Followup patch for fixing failures in valgrind test.
    
    Approved by: Jimmy Yang <jimmy.yang@oracle.com>

commit 534f90b6a3165ded478f9d4a9514ce6d5f964c96
Merge: 1097d97 c4a2ca5
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Apr 14 19:40:36 2017 +0530

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

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

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

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

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

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

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

commit 4ef36269b67e3922b45b6494f142b14eddcd3e8b
Merge: b8bfa94 e350d6d
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Fri Apr 14 17:01:29 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 1097d9753e6b7967097dc7ff39517bf646a46f34
Merge: de71dbc 97542af
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Fri Apr 14 13:57:51 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    Conflicts:
    	storage/ndb/src/kernel/blocks/ERROR_codes.txt

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

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

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

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

commit b8bfa94d1f0cf9a99cadd9695511a0902884cdd6
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Apr 14 12:17:28 2017 +0530

    Bug #25810945   FAILED TO INITIALIZE DD STORAGE ENGINE:: REDO LOG
                    REFERS TO A SYSTEM TABLESPACE
    
    Analysis:
    ========
    While validate the ibd file for recovery, compare the filename with the filename
    from the first node of the opened tablespace. innodb_data_file_path contains
    more than one data file specifications. So during validation, ibdata2 encounters
    and compares with ibdata1 because of same space id and it leads to error.
    
    Fix:
    ===
    System tablespace id can map to mulitple ibdata* files. It depends on the
    innodb_data_file_path configuration. Traverse all the chain from the fil_node_t.
    
    Reviewed-by: Satya Bodapati <satya.bodapati@oracle.com>
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 15976

commit 0351ba2205ba8bdfaa81f9c845f61e265737d5fa
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Fri Apr 14 13:27:35 2017 +0800

    Bug #22732184   HEAP-USE-AFTER-FREE IN BINLOG.BINLOG_CHECK_FLUSH_LOG_ASSERTION
    
    The root cause is that executing 'FLUSH LOGS' tries to write a
    Rotate_log_event into an uninitialized log_file. This happens
    if there is no binlog file before executing 'FLUSH LOGS'.
    
    To fix the problem, do not write a Rotate_log_event into an
    uninitialized log_file in any case.

commit 43021916cd5b2b048c86fce00e299e784fcea2a0
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Thu Apr 13 14:24:32 2017 +0100

    BUG#25316086 MYSQL 8.0 ASSUME TRX BEING APPLIED WITH 5.7- MYSQLBINLOG DUMP AS ORIGINAL
    
    Post-push fix.
    
    Test was failing due to missing 'mysqlbinlog_have_debug.inc' in test
    file that prevents the test from running when mysqlbinlog is not debug
    compiled.

commit de71dbcb7d289a3cd0e405d0c79a3771bdb7ff28
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

commit 017c71cacc7f508bebca4c7339658e4f29030ecc
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Thu Mar 16 17:57:53 2017 +0000

    BUG#25316086 MYSQL 8.0 ASSUME TRX BEING APPLIED WITH 5.7- MYSQLBINLOG DUMP AS ORIGINAL
    
    Problem and analysis:
    When a mysqlbinlog output generated by a server unaware of the variable
    original_commit_timestamp (5.7-) is applied in a 8.0+ server, this
    latter server will generate new original_commit_timestamps as it
    assumes the transactions are its own.
    
    Fix:
    When applying a transaction and the original_commit_timestamp is
    unknown, if the transaction was originated by the binlog applier, set
    the timestamp to zero.
    
    Note:
    If the output of mysqlbinlog is modified by the user (such as
    removing SET @@SESSION.PSEUDO_SLAVE_MODE=1 or applying directly the
    SQL statements), the server will still set the
    original_commit_timestamp as if it were the original master.

commit d6f408cd912641d0602500a663798cb08653e9a0
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Thu Apr 13 15:27:51 2017 +0800

    wl#9525 InnoDB_New_DD: update InnoDB specific metadata into new DD for  DDL
    wl#9534 InnoDB_New_DD: Instantiate InnoDB in-memory metadata with  newDD objects
    wl#9530 InnoDB_New_DD: FTS index support for newDD
    wl#9531 InnoDB_New_DD: Enable table encryption and transparent  compression
    wl#9532 InnoDB_New_DD: InnoDB_New_DD: Move data dictionary tables to a  single tablespace
    wl#9559 InnoDB_New_DD: Support in-place ALTER PARTITION
    wl#9537 InnoDB_New_DD: Support InnoDB table import/export for new DD
    wl#9357 InnoDB: Upgrade steps for new data dictionary
    wl#9570 Extend SHOW statements to list hidden  columns and index information
    wl#9461 Upgrade for Innodb Internal Dictionary Migration
    
    Followup patch for fixing some test failures.

commit 3bff56267ccf3dd14a48ed3ff8e8a3592392d2cc
Author: Allen Lai <zheng.lai@oracle.com>
Date:   Thu Apr 13 10:59:58 2017 +0800

    wl#9525 InnoDB_New_DD: update InnoDB specific metadata into new DD for  DDL
    wl#9534 InnoDB_New_DD: Instantiate InnoDB in-memory metadata with  newDD objects
    wl#9530 InnoDB_New_DD: FTS index support for newDD
    wl#9531 InnoDB_New_DD: Enable table encryption and transparent  compression
    wl#9532 InnoDB_New_DD: InnoDB_New_DD: Move data dictionary tables to a  single tablespace
    wl#9559 InnoDB_New_DD: Support in-place ALTER PARTITION
    wl#9537 InnoDB_New_DD: Support InnoDB table import/export for new DD
    wl#9357 InnoDB: Upgrade steps for new data dictionary
    wl#9570 Extend SHOW statements to list hidden  columns and index information
    wl#9461 Upgrade for Innodb Internal Dictionary Migration
    
    This is the InnoDB side of work to support an unified metadata system between MySQL server and
    Storage Engines. It removes the InnoDB dependency on InnoDB system tables, that is, all InnoDB
    metadata are now read from server objects, instead of reading from InnoDB system tables.
    
    In these wls, we replaced dict_table_open_* (on_id/on_name) with their newDD counterpart.
    It replaced metadata instantiation (dict_load_table etc.) with newDD counterpart too.
    And also, we migrated all related features, like partition, encryption, compression and
    import/export etc. Upgrade from mysql-5.7 is supported as well.

commit fa50db58582cf1f5678bb0a8dc80fb16cce58a73
Author: Kevin Lewis <kevin.lewis@oracle.com>
Date:   Tue Apr 11 07:35:49 2017 -0700

    Bug #25872368   INNODB: ASSERT IN BOOTSTRAP WHEN PAGE SIZE
    IS 64K AND 'IBDATA1:35M'
    
    InnoDB asserts in a debug build if it run's out of space
    in ibdata1 while creating the doublewrite pages.
    This is because the return path in three places
    in buf_dblwr_create() does not commit the mtr.
    In 8.0, the mtr destructor will assert in a debug build
    if it is not committed.

commit abd1dfd2f8ac53e875ba9df793a60602aad392f0
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Apr 12 11:55:56 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - problem with no rows returned from information_schema tables
       related to foreign keys in NDB
     - fix by setting the flag showing that ndbcluster plugin supports
       foreign keys.
     - add testcasse for showing output from information_schema tables
       related to foreign keys in NDB

commit 554bb4157cb4340017044c9866a35c2676cce8c3
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

commit 332ae7f70ecce2576b7ef098fe7030377ef70759
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed Apr 12 08:54:43 2017 +0200

    Bug#25880676 BINLOG.BINLOG_DATABASE DOES NOT RESET THE BINLOG
    
    Problem: binlog.binlog_database didn't reset the binlog. This created
    problems for subsequent tests that counted occurrences of 'use test'
    in the binlog.
    
    Solution: issue a 'RESET MASTER' at the end of binlog.binlog_database.
    
    Approved by Neha Kumari <neha.n.kumari@oracle.com>

commit 91b47e7f4b4f5ecf758ef35e82eb1949404ac3ef
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Apr 12 12:12:17 2017 +0530

    Bug #25651042	TRANSACTION DOES NOT POST-CRASH RECOVER IN INNODB EVEN IF PREPARED AND BINLOGGED
    
    Analysis:
    =========
     During recovery, prepared transactions rollbacked if force_recovery > 0
    
    Fix:
    ====
    In case of force recovery > 0, Keep the prepared transactions in
    the prepared state and wait for a commit or abort decision from mysql.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 15958

commit a35e1bf4f0e7d3da751c3a46368dcb62ef2abb9f
Merge: 2040098 9242b2b
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Apr 12 11:22:54 2017 +0530

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

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

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

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

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

commit 20400983275d988918a8e089bb58ee4c62067dfb
Merge: cec3287 0d1900c
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Tue Apr 11 15:45:13 2017 +0100

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

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

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

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

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

commit cf0319b0466d1dd5539381f0b62ba2d9e067da85
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Tue Apr 11 16:19:51 2017 +0530

    BUG#25805260: MYSQL 8.0.X CRASHES WHEN OLD-STYLE TRIGGER MISSES
                  THE "CREATED" LINE IN .TRG
    
    Analysis
    ========
    The server exits during inplace upgrade of triggers created
    before MySQL-5.7.2.
    
    The triggers created before 5.7.2 does not have the 'created'
    line in the trigger definition. During the upgrade of such a
    trigger definition, the computation of timestamp for 'created'
    triggers the server exit.
    
    Fix
    ===
    During the upgrade of triggers, if the 'created' value exist,
    utilize the value else use the current timestamp. Hence it
    is backward compatible.

commit cec32871ab7158046670ef676413ef42c41f4595
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.

commit dbb1dce7488353e2a8c9aaef915eb4da416994a3
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Apr 8 00:48:02 2017 +0200

    Bug#25851801 7.6.2(DMR2):: COMPLETE CLUSTER CRASHED DURING UNIQUE KEY CREATION ...
    
    Demonstration of bug.
    
    Use error injection to simulate failure of DynArr256Pool::seize() that in
    turn make Dbacc::setPagePtr fail.
    
    The later function registers the page number to an fragment.
    
    Later when fragment pages are to be released DynArr256::truncate() are
    called which assumes at least one directory page have been seized if
    set() been called.
    
    This is not the case.

commit 902e415433250aa2dd58d3f30b01988b519a69e7
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Apr 11 12:03:55 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - add test case for checking order of "group by", proving that
       it's stable in 5.7 based cluster versions

commit 91af06f0715e3e37f99f30f5091f94c26542c291
Merge: a6439db e88073f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:26:59 2017 +0530

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

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

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

commit a6439db2742cced2f1f156b3d6227fecba4290bd
Merge: 0c8b22a 260b802e
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:25:42 2017 +0530

    Null merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6

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

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

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

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

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

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

commit 0c8b22a919e7ce7d9817cf5af4cab2b197922eee
Merge: 1798b5f 4e32c7c
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Tue Apr 11 15:22:28 2017 +0530

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

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

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

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

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

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

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

commit cf92579afb8f90acc65db5e3dadcdb7ed9ee7226
Merge: 972a9f3 162b99f
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Apr 11 14:43:11 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 972a9f35d21f2806d5530079f5df28b78b0f7d21
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Apr 11 05:19:03 2017 +0200

    Bug#25792649: SDI DESERIALIZE MISSING COLUMNIMPL::M_NUMERIC_SCALE_NULL
    
    Post-push fix: stop main.import from leaving files around.
    
    Approved by Gopal Shankar <gopal.shankar@oracle.com> over IM.

commit 1798b5fa99c293e4344adee2abeb480adbbb7997
Merge: 6d24bf2 bee8af0
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Apr 11 08:53:32 2017 +0200

    Upmerge (null) of the 7.5.6 build

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

    Merge from mysql-cluster-7.5.6-release

commit 6d24bf2b25c448c8d2c2217b9e4d69698a89a3e5
Merge: d0a045d 4dc12d0
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Apr 11 08:45:18 2017 +0200

    Upmerge of the 7.5.6 build

commit 6991335e97dc6e8595d33414c0b11225d2a41940
Author: Parakh Agarwal <parakh.agarwal@oracle.com>
Date:   Tue Apr 11 12:14:11 2017 +0530

    Bug#25873398	CONSISTENT FAILURE OF WINDOWS-AUTHENTICATION-PLUGIN.NON-ASCII ON WINODOWS/PB2
    
    Disabling test due to consistent failures on PB2(Windows)

commit d0a045def441cf481a7fcea95ddceebd5e78b55a
Merge: 8606b5e 7bdfa9b
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Apr 11 11:36:53 2017 +0530

    Upmerge of the 7.2.28 build

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

    Upmerge of the 7.2.28 build

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

    Upmerge of the 7.2.28 build

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

    Upmerge of the 7.2.28 build

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

    Merge from mysql-cluster-7.2.28-release

commit 4dc12d012d54ca24400a7f3a918edf32853918f7
Merge: 8d5f19d 4f6287b
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Tue Apr 11 06:40:06 2017 +0200

    Merge from mysql-cluster-7.5.6-release

commit 5cd19dd58d09f49d1f39f778ebf9d3a6245d2e91
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Mon Apr 10 23:51:13 2017 +0200

    Bug #25593764   REMOVE PERFSCHEMA_STRESS TEST SUITE
    
    Removing a test suite that is not in use.
    Reviewed by : Tarique Saleem <tarique.saleem@oracle.com>

commit d3fd467bc21f656323e2719fc1e78ebe902809e6
Merge: ee5e2de 769803e
Author: Prashant Tekriwal <prashant.tekriwal@oracle.com>
Date:   Mon Apr 10 18:29:12 2017 +0200

    Upmerge of the 5.6.36 build

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 ee5e2deb570add0f90dbebcc4476dcb6d00b5e97
Merge: 6284c8a 9662a2c
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Mon Apr 10 17:42:16 2017 +0200

    Upmerge of the 5.7.18 build

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 8606b5e40dac92fc7da43d7f04e3e49b48000861
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

commit 6284c8aa46faaeca637af519c540b70f4798ec2e
Merge: 28f91d8 dea7749
Author: Grzegorz Szwarc <grzegorz.szwarc@oracle.com>
Date:   Mon Apr 10 15:50:14 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 28f91d806c306b9b0b1ce9e716aae774acc12c65
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Mon Apr 10 18:05:17 2017 +0530

    WL#10296: Change replication tests to run with new default charset
    
    Description:
    ============
    WL#7554 changed the default character set from latin1 to utf8mb4.
    Some tests were rewritten to use latin1 temporarily, so now
    they have been changed to use utf8mb4.
    
    Reviewed-by: Bernt Johnsen <bernt.johnsen@oracle.com>
    Reviewed-by: Joao Gramacho <joao.gramacho@oracle.com>
    RB: 15944

commit 7dac128954db58c662e3db3fab8afac600bcd4bc
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Apr 7 16:21:37 2017 +0200

    Bug #24571659: REMOVE USE OF ALL BOOST SMART POINTERS
    
    Remove the last use of Boost's smart pointers, replacing them with
    std::unique_ptr.
    
    Change-Id: Iee7aab99907379cad8d73ca944423f41fe421376

commit 7ebfffdd17584f6061d1eb36888e2c9bed570505
Merge: c4c4a9d 25d37dc
Author: Gipson Pulla <gipson.pulla@oracle.com>
Date:   Mon Apr 10 16:36:23 2017 +0530

    Upmerge of the 5.5.55 build

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 c4c4a9d5a9fdece4a4c5b3ff28547c34b9e5d03d
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Apr 10 12:58:08 2017 +0200

    Revert "Bug #25835560: SET DEFAULT SYMBOL VISIBILITY TO HIDDEN"
    
    This reverts commit 7925d81b8a2b1dadad0d02729d4d00eb7652438e.
    
    Change-Id: Ifde69156e6f16d07109ef3e4cfd9ac728a33d3ca

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 7f37089e7f6fa041b1d2e189db017bf7b58fe8e6
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Apr 10 12:57:59 2017 +0200

    Revert "Bug #25835560: SET DEFAULT SYMBOL VISIBILITY TO HIDDEN"
    
    This reverts commit d960de4b26a1b412b1ace1e6f7416ecb9a5216a0.

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 5c1050211f2d9fb2b6ebdd870304c46512d9e147
Merge: 44c6f4c 8d5f19d
Author: Nawaz Nazeer Ahamed <nawaz.nazeer.ahamed@oracle.com>
Date:   Mon Apr 10 16:18:52 2017 +0530

    Upmerge of the 7.3.17 build

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

    Upmerge of the 7.3.17 build

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

    Upmerge of the 7.3.17 build

commit a1e0f7543240249563b97ad271d35127d4ca5dcd
Merge: d413818 69ffe6a
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Mon Apr 10 12:39:11 2017 +0200

    Merge branch 'mysql-8.0.1-dmr-release' into mysql-trunk

commit 44c6f4c5bb6a0b9d02ce61bcd5dc71bed6df9f80
Merge: ac4b9b7 4ef3f37
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Mon Apr 10 16:01:19 2017 +0530

    Upmerge of the 7.4.15 build

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

    Upmerge of the 7.4.15 build

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

    Merge from mysql-cluster-7.4.15-release

commit d4138189b5daab581a62b3c2bc543b9d6452ef4c
Merge: be0951e 61b7233
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Mon Apr 10 15:57:27 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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

    Merge from mysql-cluster-7.3.17-release

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

    Merge branch 'mysql-5.6' into mysql-5.7

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

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

commit be0951ef3df38338729b1cda1cfba38f6ff6dbf1
Merge: 8ccb1f4 6fc2131
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Mon Apr 10 08:55:37 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 8ccb1f43394d876e25db07aac1bc6ea1a8421288
Author: Bin Su <bin.x.su@oracle.com>
Date:   Fri Apr 7 18:28:48 2017 +0800

    Modify the disable message a bit, mentioning exact bug/wl for them
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>

commit ac4b9b7341c7eef1cae2b7781f2e02f1210664bf
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

commit a2350e14f9e61431bdac0eef62d73ffc47da1fdd
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

commit cbbeb630475297c75df32ba194ccdccebbfb2994
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

commit fd72b8880b6eda36efd27b1638de5b327429b97e
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

commit cc448f46ad620979fcdb989f73da9c23a9f5539e
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Fri Apr 7 05:43:41 2017 +0200

    Bug#25824297  INFORMATION_SCHEMA.CHARACTER_SETS DESCRIPTION
                  COLUMN IS CASE SENSITIVE IN 8.0
    
    The problem is that the string comparision with
    I_S.CHARACTER_SETS.DESCRIPTION is case sensitive in 8.0,
    unlike 5.7.
    
    In 5.7, the fill_schema_charsets() function is used to fill
    in the temporary table with charset information for
    I_S.CHARACTER_SETS. It uses wild_case_compare() with case
    insensitive charset for comparision. Whereas, 8.0 uses case
    sensitive charset and hence behaves differently than 5.7.
    I_S.CHARACTER_SETS.DESCRIPTION is mapped to DD field
    mysql.character_sets.comment, which uses case sensitive
    charset. This patch makes mysql.character_sets.comment
    field to use a case insensitive utf8_general_ci charset.

commit d6a3f0f8666542ae3018d31c8765560afc8e2943
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Sat Apr 8 10:47:13 2017 +0530

    BUG#25828425 : CREATE TEST('T') AND RESULT('R') DIRECTORIES FOR
                   FEDERATED TEST SUITE
    
    Added separate test('t') and result('r') directories for federated
    test suite.
    
    Reviewed-by: Mohit Joshi <mohit.joshi@oracle.com>
    RB: 15954

commit d960de4b26a1b412b1ace1e6f7416ecb9a5216a0
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Apr 7 16:37:07 2017 +0200

    Bug #25835560: SET DEFAULT SYMBOL VISIBILITY TO HIDDEN
    
    Post-push fix: Deal with changes from #25685868.
    
    Change-Id: I52ae68ae55ecbe533f36f33165485c8d0631c2e4

commit 00d794acecdb1697a94222966517560b46aa6a5b
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Fri Apr 7 15:48:36 2017 +0100

    BUG#25503458 - SOME CLASS B PRIVATE ADDRESS IS NOT PERMITTED AUTOMATICALLY(Follow-up)
    
    This is a follow-up patch that introduces unit tests to BUG#25503458

commit ba9db5477fbb6928760d7fdfe513c08b5b0c33c5
Merge: 7925d81 b0c7c57
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Fri Apr 7 15:46:28 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 7925d81b8a2b1dadad0d02729d4d00eb7652438e
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 6 10:31:34 2017 +0200

    Bug #25835560: SET DEFAULT SYMBOL VISIBILITY TO HIDDEN
    
    Hide all symbols by default and export only the ones that are supposed
    to actually be visible. This primarily affects mysqld, but also plugins
    and statically linked libraries of various sorts now stop polluting the
    server's namespace. In addition, we export 297 “legacy” functions and
    classes that were already in use by existing plugins; this is not meant
    as an endorsement of the practice, and is likely to break in the future,
    but fixing them all is a longer procedure that will take time.
    
    A stripped mysqld binary (RelWithDebInfo) on Linux goes from 38 to 34 MB,
    exporting 950 instead of 20854 symbols.
    
    Windows builds can now skip the WScript step that goes through every
    symbol and exports it manually through a .def file. On a 16-core Xeon
    build server (vale31), this reduces the build time of a full debug
    build by about 40 seconds (from 9 minutes 25 seconds to 8 minutes
    45 seconds). The difference for an incremental build, ie., just touching
    sql/main.cc and rebuilding, is even bigger; it goes from 1m42s to
    just under 13 seconds, as the incrementality is significantly increased.
    
    Change-Id: I2d1c39b6822502139e3286c7473db81c876b7bbc

commit 7b501eaa81f024f3017db0f098988d8c7ca73514
Merge: a24511b d0c79b3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Apr 7 18:51:14 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 a24511bc0a29c6ed7007724926e2201cb6f86384
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Thu Apr 6 13:15:56 2017 +0200

    Bug #25582178 ASSERTION `LENGTH > 0' FAILED. IN SQL/FIELD.CC:8732
    
    Problem: Debug builds fail an assertion when trying to do ALTER TABLE on
    an ARCHIVE engine table with a GEOMETRY NOT NULL column containing empty
    strings. Release builds return an error.
    
    GEOMETRY columns should never hold empty strings as it is not a valid
    geometric object. This is enforced by
    Field_geom::store_internal(). However, in non-strict mode, it is
    possible to trick the server into storing empty strings in GEOMETRY NOT
    NULL columns by inserting NULL, which is then converted to an empty
    string.
    
    Later, when doing ALTER TABLE, these empty string values fail an
    assertion in Field_geom::store_internal().
    
    Fix: Remove the failing assertion, as such invalid values may exist, and
    strengthen the check for too short geometry values in
    Field_geom::store_internal(). Raise an error if trying to insert a NULL
    value to a GEOMETRY NOT NULL column, regardless of strict mode settings.
    
    Change-Id: Iea8e8ccc9a64f7049ece30717ccd59de8684bef5

commit 2e5c1d52ef0114a2820e7587e1655043e2dcadc1
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Fri Apr 7 14:09:45 2017 +0300

    Bug#25841895 "ALTERING A TEMPORARY TABLE IN A NON-EXISTENT SCHEMA RAISES ASSERT".
    
    The new data dictionary introduced some non-documented
    changes of behavior with regards to temporary tables
    in non-existent schemas.
    
    In 5.7, it is documented that temporary tables can be
    created, altered and queried even if they are in
    non-existent schemas.
    
    In 8.0, creation and altering of temporary tables in
    non-existent schemas is disallowed and will give ER_BAD_DB_ERROR.
    They can still be queried and dropped and DROP SCHEMA
    will not remove them.
    
    The assert was raised by ALTER TABLE if the schema
    did not exist. The patch fixes this by again reporting
    ER_BAD_DB_ERROR. The patch also adds test coverage for
    temporary tables and non-existent schemas.
    
    We consider such behavior change between 5.7 and 8.0
    acceptable, as main scenario - dropping temporary tables
    explicitly or implicitly (on connection close) after
    database was removed by some other connection still works.

commit 611c56f7f99fd980a59ebe78a2172f5db6733690
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Apr 7 12:41:54 2017 +0200

    Bug#25750355 SEND SPJ RESULTS AS 'PACKED' TRANSID_AI WHERE APPLICABLE
    
    Follow up patch fixing an assert being hit

commit 67820f98584c73b9428f7688da2b7be3dfbf4ad9
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 23 10:43:55 2017 +0100

    Bug#22588567 SCHEMA DISTRIBUTION FAILURE FOR INPLACE ALTER TABLE
    
     - problem with deadlock between schema dist client and participant
      in same node. The client were holding exclusive MDL lock and
      participant need to access the DD in order to open the table_def.
      This in turn requires a MDL lock.
    - fix by passing a pointer to the table def from client to participant
      via NDB_SHARE, this should be safe(for now) as the client thread is
      waiting for the participant. The passed table def can then by used by
      participant and thus it will avoid accessing the DD and no MDL is
      necessary.
    - enable testcase ndbcluster.inplace and ndbcluster.gis again, fix
      result file for ndbcluster.gis due to changes in the include file
      it sources and utf8

commit e36e6a6ded3714e6e53cd1fb3ac9f03867caab12
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 7 11:28:36 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable the two new testcases referencing bugs to be fixed

commit be05e63e15ec0822b13a03a0cb973f89988dc210
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 7 11:13:37 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - add testcase to --suite=ndbcluster for testing tablespace
       functionality regarding tablespaces names and datafiles
       with NDB
    
    (cherry picked from commit 8d014ab180cb19158c43cd0ec760ab90d48e84c2)

commit 8d014ab180cb19158c43cd0ec760ab90d48e84c2
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Apr 7 11:13:37 2017 +0200

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - add testcase to --suite=ndbcluster for testing tablespace
       functionality regarding tablespaces names and datafiles
       with NDB

commit ad0ceb33b3623c3285aec4118f0daed27ce4fa95
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri Apr 7 11:05:06 2017 +0200

    Bug#25124836 PB2 INNODB.MONITOR FAILS SPORADICALLY WITH RESULT MISMATCH FROM 2016-05-19
    
    Fix a regular expression pattern to stabilize the test.

commit 4095aadfb5725ae7b17290db7399dcde68428659
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Apr 6 07:39:39 2017 +0200

    WL#10354: Make Unicode 9.0.0 and newer collations NO PAD (add property)
    
    Post-push: fix license header in strings/CHARSET_INFO.txt

commit 7fdf46f3505807e1a10795edf3acd9db46fccb1e
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Tue Apr 4 17:12:37 2017 +0200

    Bug#25738491 - IBD2SDI TOOL CAN HAVE BETTER VALIDATION OF FILE FORMATS
    
    Problem:
    --------
    ibd2sdi crashes when non-ibd files are passed
    
    Fix:
    ----
    Validate page_size and space flags. Return error if page size cannot
    be determined
    
    Reviewed-By: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 15480

commit 1f646917bcc85e6149ce0ba036a401f1f79bbf3a
Merge: b61c477 158b2d9
Author: Nisha Gopalakrishnan <nisha.gopalakrishnan@oracle.com>
Date:   Fri Apr 7 13:52:11 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 b61c477b16e2c2275f78ad4ab5c76ab5c42c2f4f
Author: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
Date:   Fri Apr 7 06:59:39 2017 +0200

    Bug#25685868 -  trying to access page number innobase/fil/fil0fil.cc
    
    While preparing the data-dictionary table object, indexes of the
    table are sorted by their ordinal position. But indexes list in
    the table partition object are sorted on constant value using
    std::sort(). Accessing index element with the assumption of
    same index order in table and partition object, resulted in
    accessing data page of wrong index. Hence this issue is observed.
    
    std::sort() on the constant value in comparison is not stable
    and might produce irrelevant order in some cases.
    To avoid such scenario and to have same ordering for indexes in
    table and table partition indexes, now sorting indexes in partitions
    by actual index's ordinal position instead of constant value.
    
    Comparison function object is introduced also for the following
    data-dictionary objects to avoid constant value comparison,
    
      - Foreign Key:
          Foreign keys of same table are ordered by their names.
    
      - Triggers:
          Code to sort triggers by their action timing, event type
          and order is moved to the comparison function object
          introduced for the triggers.
    
      - Partition value:
          Partition values are ordered by their list and column
          numbers.
    
    For View_routine and View_table objects also uses the constant
    value comparision. But their order is not important so no
    changes done for these two.
    
    Without the patch ntest failed on the WL tree.

commit 33ac4007aa4adec49dbcc854ad3055873f360746
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 34ad6a456dade4ecf04a70829cc16b9bddd5e3be
Merge: 7a15578 fab62c1
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Apr 6 11:14:10 2017 -0700

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

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

    Add missing GPL to three files under jones-ndb

commit 7a15578dcb8e160279057f2504b7ab3776fd92c8
Merge: cf787fc c1db224
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 17:20:50 2017 +0100

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

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

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

commit cf787fc01e4d484367cb61c67636e17fcb2c9ec1
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 22927e96656737ab4bce1c6466b2ba22a4dbde06
Merge: c9e6238 f5870e1
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 21:42:30 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

commit c9e6238d759f1bcbb42d200b8cc26483a8d3549f
Merge: a5b34aa e1b323a
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 21:42:13 2017 +0530

    Merge branch 'mysql-trunk-wl5847' into mysql-trunk

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

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

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

    skipping.

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

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

commit 4afc0bac196556e1f9eb94d1ba6260cd97129533
Merge: 62a03bf b4afa60
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 16:46:40 2017 +0100

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

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

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

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

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

commit a5b34aabda8c2727d2b2b7b470abbdec9c718861
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Thu Apr 6 17:27:36 2017 +0200

    Add checks to find reason for memcached.memc292_ibd2sdi_system_tablespace failure

commit 765cb020f81224baf1f1a2f791287d58b09d6cf4
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Apr 5 12:07:51 2017 +0200

    Bug#25835968: SIMPLIFY DATA DICTIONARY CLASS HIERARCHY
    
    Simplify the DD class hierarchy now that we rely more on
    templates and less on inheritance than when the DD code
    was initially designed.
    
    Changes introduced:
    - Dictionary_object class removed.
    - Weak_object reduced - some unused functions removed and
      other functions pushed down to Entity_object.
    - dd::enum_sql_mode removed.
    - object_table() function is now only declared in impl classes.
    - dd::sdi_filename::sdi_filename() templatized.

commit ac819f56e02b1db418679dc168732a9f9fdecd21
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Thu Apr 6 16:18:01 2017 +0200

    Bug#22916982 - ASSERT 0 IN FSP_SDI_GET_ROOT_PAGE_NUM(), FLUSH TABLES FOR EXPORT
    
    Problem:
    -------
    In a tablespace, SDI Index root page numbers are stored in page 1 & 2 at
    offset FIL_PAGE_FIL_FLUSH_LSN.
    
    The same offset is also used for Page IO compression meta data and so
    it conflicts.
    
    Fix:
    ----
    Disable Page IO compression for pages 1 & 2. For page 0, it is already
    disabled.
    
    Reviewed-By: Jimmy Yang <jimmy.yang@oracle.com>
    RB: 14188

commit 62a03bf8cb0c1d48257fe2ccf4403ea91a67df24
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Thu Apr 6 16:56:25 2017 +0300

    wl#7614 packaging1.diff
    
    add ndb_import to deb and rpm
    
    NOTE: previously pushed to mysql-cluster-7.6.2-dmr-release
    as a separate commit.

commit 92d0f58039e6e3e9e4425f9ebb655bf463943ea3
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Thu Apr 6 08:20:53 2017 +0200

    Revert "Bug#25508568 - I_INNODB.INNODB_BUG14150372 SPORADICALLY FAILS"
    
    This reverts commit a86bf3d584d0927bdb9963c7d8c18a7a471c058c.

commit e1b323a441aea1786b2a3dbb049fd522db6094bf
Merge: 871fa22 22f5a9e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Apr 6 19:06:37 2017 +0530

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

commit a8cb0b83e89ef730186b955f4e1b1494569b46a2
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Apr 6 09:32:47 2017 +0200

    Bug#25840927: ADD WARN_UNUSED_RESULT TO DICTIONARY_CLIENT METHODS
    
    This patch adds MY_ATTRIBUTE((warn_unused_result)) to the
    declarations of Dictionary_client methods to make the API
    harder to misuse. Now any API usage that ignores return values
    will give a compilation warning (GCC, Clang).

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

    extra logs.

commit 9de1c7e340e87f7029088fbaf57e590f9a7f52eb
Merge: 61903ef 3100442
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 6 17:52:41 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 61903ef07433695a0a4e550098b092f7f482e3b3
Merge: 16cd570 22ecda9
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 6 17:43:31 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

commit 22ecda946b7b41009a9ae63602c2d996c50caae2
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Thu Apr 6 17:41:49 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 320a8dbfc5bc221eb0597e727e6f6d8468a070f8
Merge: d8543f7 9b4555d
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Apr 6 12:39:04 2017 +0100

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

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

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

commit 16cd570d49f19b3a0e39e3bbfda6b47612beec4e
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Apr 6 13:30:48 2017 +0200

    Add a .gitreview file for Gerrit defaults.
    
    This is not tracked as a bug, as it's 100% internal-only (the filter scripts
    should remove these together with the other internal-only component).
    
    Change-Id: I394feec030190c0216a4a78cfc6b8d4abec266ff

commit e03a5802cf7d14a984be9e427a7358c8b2f546a5
Author: Bin Su <bin.x.su@oracle.com>
Date:   Thu Apr 6 19:27:41 2017 +0800

    Disable innodb.innodb_wl6560_debug which is regression of WL#9499.
    
    Reviewed-by: Jimmy Yang <jimmy.yang@oracle.com>

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

    final

commit 1884f4f93f925c4868ab3b25cc95946273b3ebe8
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 6 11:24:14 2017 +0200

    Bug#25841424 REMOVE NDB_EXTRA REMNANTS
    
     - There are a few tests in the ndb test suite which are intended to run by
       passing the --ndb-extra-test paramater to mtr.pl. This means that tests are
       never run and have become outdated, binaries they reference, mysqltest
       commands used does no longer exist. Actually there are no --ndb-extra-test
       argument for mtr.pl anymore
     - Remove NDB_EXTRA_TEST, mysql-test/include/have_ndb_extra.inc and the tests
    referencing that include file.
    
    (cherry picked from commit d8543f77dc038db68e007ef2a8fc8500195e546e)

commit d8543f77dc038db68e007ef2a8fc8500195e546e
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Apr 6 11:24:14 2017 +0200

    Bug#25841424 REMOVE NDB_EXTRA REMNANTS
    
     - There are a few tests in the ndb test suite which are intended to run by
       passing the --ndb-extra-test paramater to mtr.pl. This means that tests are
       never run and have become outdated, binaries they reference, mysqltest
       commands used does no longer exist. Actually there are no --ndb-extra-test
       argument for mtr.pl anymore
     - Remove NDB_EXTRA_TEST, mysql-test/include/have_ndb_extra.inc and the tests
    referencing that include file.

commit da83df60748c562dcb469d07dd151ef1c2b552e4
Author: Norvald H. Ryeng <norvald.ryeng@oracle.com>
Date:   Thu Apr 6 11:10:29 2017 +0200

    WL#9439 InnoDB: Support geographic R-trees
    
    Post push fix to move files to correct location.
    
    Change-Id: I360975512fbfbf878c65b2c82b7605531e406db6

commit f50aa85fb622fc49a8e4f2c7c781de6a931ff5e8
Author: Thayumanavar S <thayumanavar.x.sachithanantha@oracle.com>
Date:   Wed Apr 5 18:48:18 2017 +0100

    BUG#25656875 - ASSERTION FAILURE: PARS0PARS.CC:NNN:SYM_NODE->TABLE != NULL
    
    check_stack_overrun might called be with an incorrect value of
    base stack value during a group commit. This results in reporting
    the stack as exhausted. This happens because of Binlog Group Commit
    algorithm which can commit transactions bound to different THDs from
    a single thread. The THDs thread stack value needs to be updated to reflect
    the value that pertains to the thread on which this commit happens.
    
    The patch updates THD::thread_stack to be in sync with the thread
    from which the commit happens. This avoids the erroneous stack
    overflow.

commit 36767033c7418dc2bf1c64b2e847e10b1f41afdf
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Apr 6 09:37:13 2017 +0200

    Bug#25750355 SEND SPJ RESULTS AS 'PACKED' TRANSID_AI WHERE APPLICABLE
    
    Follow up patch fixing build break when not 'Debug' built.

commit acf5bc0ef0ce681e4273465860766985f613400a
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Tue Mar 28 19:23:46 2017 +0200

    Bug#25792649: SDI DESERIALIZE MISSING COLUMNIMPL::M_NUMERIC_SCALE_NULL
    
    Problem: After importing a table with DECIMAL column, accessing the table
    would trigger an assert.
    
    Solution: Make sure all column attrbutes are serialized and deserialized
    correctly.

commit b1bfb16d7ad2c8b8bc57f9e4930c3ee38607033c
Merge: 4694f3d 18c9867
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Apr 6 09:06:59 2017 +0200

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

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

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

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

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

commit 4694f3dd2d4eb9bf33a35fe6f8c40d4d1c73cab2
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Apr 6 08:54:06 2017 +0200

    Bug#25750355 SEND SPJ RESULTS AS 'PACKED' TRANSID_AI WHERE APPLICABLE
    
    Patch enable the usage of 'short' or 'packed short' TRANSID_AI
    signals for sending SPJ results back to the client-API.
    This is a more efficient way to send short TRANSID_AI signals.
    
    It refactors out code for sending TRANSID_AI to the API from
    Dbtup::sendReadAttrinfo() into the new method Dbtup::sendAPI_TRANSID_AI().
    This method is then called from Dbtup::flush_read_buffer() which is where
    the SPJ results are delivered to the client_API.
    
    Also introduce some cleanup of usage of the magic litterals
    '3' and '22' where 'AttrInfo::HeaderLength' and 'TransIdAI::DataLength'
    should be used instead.
    
    Refactor how the buffering work is divided between
    Dbtup::bufferTRANSID_AI() and the new Dbtup::sendAPI_TRANSID_AI().
    (Related to how the sending of full packed-buffers are handled).

commit b0b91d824d5ec7cbe238d96b5e8d407527aac140
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Apr 5 15:33:47 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4 PATCH#2
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I69f9b3a8d2ad6b1604325e66c91740f082bcd146

commit f6bd828c2dbe43e72c667daf4779818cfbe08967
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Mon Apr 3 11:29:40 2017 +0530

    Bug #24748843 : SYNC PRINTS TO STDOUT CAUSING MAIN THREAD TO SLEEP DURING HIGH IO WAIT
    
    Re-enable asynchronous logging.
    Flush user-space buffered data using fflush() after every write in the async log thread.

commit bb07c019ad4363c6de7e05e7fca37713c386b625
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Thu Apr 6 10:19:55 2017 +0530

    BUG#25834164 : MTR TEST RUN GETS ABORTED ON PB2 WINDOWS MACHINE WITH
                   HIGHER PARALLEL VALUE
    
    Issue:
    ======
    On PB2 windows machine, MTR runs gets aborted with higher parallel
    value. In daily-trunk windows run, "audit_log" run gets aborted
    because MTR can't reserve the ports needed for all the worker
    processes. And on windows POSIX::_exit() is used which causes the
    parent process to abort along with child processes.
    
    Fix:
    ====
    Increase the upper limit of the build threads.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15924

commit b718a54aa1b22243f9c6e7f90c119fcbdcb630e6
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Wed Apr 5 11:37:45 2017 +0200

    BUG#25834306: ADD GROUP REPLICATION SUITE TO DEFAUL.PUSH-VALGRIND COLLECTION
    
    The MTR default.push-valgrind runs all default suites, though
    Group Replication it is not a default suite, as such it needs
    to be added explicitly.
    
    Added the collection default.push-valgrind to Group Replication
    plugin.

commit ccc3c20f935875a267d0490074242b1b8aa18381
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Wed Apr 5 19:49:05 2017 +0530

    Bug#25304620:: Post fix
    
    Reviewed by:
    Pavan Naik <pavan.naik@oracle.com>

commit 1ae0052a3c4ffd73cd5d9b946e046b9e4fe7eec7
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Tue Apr 4 15:05:45 2017 +0200

    BUG#25828978: SHORTEN TIME SPENT ON GROUP REPLICATION TESTS PER PUSH
    
    In order to shorten the time spent on Group Replication tests per
    push, tests that do take more than 1 minute to run are marked as
    big test.
    Additionally, per push tests are run on binaries without debug
    information.
    
    Suite run duration on OEL7:
      per push before changes: 28m00s
      per push after changes:   9m28s

commit fb9ffccd2723279f70a56120f55090e4223946f8
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Apr 5 14:38:26 2017 +0200

    Fixed the last copyright year, I hope...

commit 7cce464823af92c5bd82f2ba50eebb030af1ade4
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Apr 5 14:28:35 2017 +0200

    Updated copyright years

commit f8fcb53baa6d80582cff044787d675146cf0d470
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Tue Apr 4 18:30:47 2017 +0530

    Bug#25304620:: MTR: MEM IS PURE FLAG / ADD /RUN/SHM (CONTRIBUTION)
    
    Problem Description:
    
    This bug tracks a contribution by Daniel Black (Github user: grooverdan) as
    described in http://github.com/mysql/mysql-server/pull/116
    
    Fix:
    
    1. Added /run/shm as one of the tmpfs location.
    2. Extended the --mem option with a check that the chosen mem directory is not
       a softlink.
    3. Added a warning message that if MTR_MEM is used along with --mem option,
       MTR_MEM will be ignored.
    4. Updated the MTR documentation.
    
    Reviewed by:
    Pavan Naik <pavan.naik@oracle.com>
    RB: 15913

commit 5a2a9f169fd67371a84c9299c7e7b9637be8c094
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Wed Apr 5 14:19:25 2017 +0200

    Raise version number after cloning 7.6.2

commit 33c4ed03c07ddf9dc2f2f3544abe3c7cce25cbe7
Merge: e79d3e5 860aafc
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Wed Apr 5 15:57:19 2017 +0530

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

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

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

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

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

commit 7653439b6d8df6ed6a80ed3c19b749ab9a857ed3
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Wed Apr 5 15:36:23 2017 +0530

    Bug#25812494: MAIN.LOCK_SYNC IS ALWAYS SKIPPED
    
    Issue:
    ------
    main.lock_sync has an opt file containing --binlog_format=STATEMENT.
    It also contains the have_binlog_format_mixed_or_statement.inc. Therefore,
    the valid binlog formats for the test will be 'mixed' and 'statement'.
    However, When 'STATEMENT' is encountered, MTR thinks it is not a valid
    format due to the difference in case.
    
    Fix:
    ----
    The comparison of binlog formats in the opt file with the valid binlog formats
    has been made case insensitive.
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    RB: 15904

commit 16844a1bbb2fbc5187a3e41cb1fd34c4e099514e
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Apr 5 10:44:49 2017 +0200

    Bug#25833932: ALLOW A DICTIONARY OBJECT TO BE UPDATED TWICE
    
    Change Dictionary_client::update() so that it can be called
    twice for the same dictionary object. This makes it easier
    to have longer-lived dictionary objects (i.e. not acquire
    new instances all the time).
    
    Internal API quality of life issue only, no user-visible
    consequences.

commit 107cd5e98d78fdab4c400ce3e999dc653f3d1ec1
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed Apr 5 09:40:52 2017 +0200

    WL#10353 Post push fix to main.lock_sync
    
    Approved by Bernt Johnsen <bernt.johnsen@oracle.com> over IM.

commit e79d3e5523f9d09fdaf17a367d02011454af0b94
Merge: 5bc59af 16a5351
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Wed Apr 5 14:32:38 2017 +0530

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

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

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

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

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

commit 871fa2218d34051eb590775513a32622e3bbcbe7
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 5 13:56:26 2017 +0530

    absolute path.

commit 2e8a9b7779a89c7000359f2b5abe8a0a744b28e8
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Wed Apr 5 13:08:00 2017 +0530

    Bug#25586673 : ASSERT IN DA FOR SQL_CMD_UPDATE::UPDATE_SINGLE_TABLE
    Bug#25586959 : SERVER CRASH IN SQL_CMD_DELETE::DELETE_FROM_SINGLE_TABLE
    
    The asserts reported in the bug are to make sure that no error has
    been reported by the statement. ER_TRUNCATED_WRONG_VALUE error is
    reported due to conversion from warning to error by STRICT mode.
    This error is ignored and the statement execution continues,
    leading to the assert.
    
    Fix:
    Check for errors using THD::is_error() in functions:
    - make_truncated_value_warning
    - build_equal_items
    - TABLE::update_const_key_parts
    
    Return type of following function have been changed from void to bool
    for error handling:
    - make_truncated_value_warning
    - adjust_time_range_with_warn
    - push_zero_date_warning
    
    - Field_temporal::set_warnings
    - Field_temporal::set_datetime_warning
    - Item::update_null_value

commit 75a1e61e9be74a1ea9610c65870aa5e56c1d82c7
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 5 12:36:00 2017 +0530

    test..

commit 72fdbc5607634d6cc9edea18420b3c345d226f82
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Apr 4 15:43:24 2017 +0200

    Bug#25828268: SEGFAULT IN OPEN_TABLE_FROM_SHARE AT
                  SQL/TABLE.CC ON CONCURRENT ALTER TABLE
    
    The problem was that TABLE_LIST objects for views that needed to
    have their metadata updated during table DDL, would not be
    properly initialized. Specifically, TABLE_LIST::alias would
    be initialized to nullptr. If this field was accessed later,
    code (e.g. open_table_from_share) would assume that this
    field contained a valid string. Since it was nullptr, this
    would lead to abnormal program exit.
    
    This patch fixes the problem by initializing TABLE_LIST::alias.
    Patch verified using RQG.

commit dfaf5b71af02842f4fcc137d215ebaeee4a13cb3
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 5 11:54:47 2017 +0530

    el6 fix new.

commit b79a05bd4b0b4811169f6d374ed2c0b327801a1f
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Apr 5 07:25:20 2017 +0530

    Fix el6

commit 91f0bee48943d4ac7fb3144947108b91ae307c77
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Apr 4 20:10:59 2017 +0530

    some debug..

commit 7c8d04f6191647f9438037ea33554176a065ba9c
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Apr 4 18:15:47 2017 +0530

    el6

commit 8abbe7253bb94c2c163f56cbd5bc432bca6485e9
Author: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
Date:   Tue Apr 4 14:24:01 2017 +0200

    Bug#24961932 - CREATE FUNCTION AT BOOTSTRAP ATTEMPTS TO EVALUATE NON-RESOLVED
    EXPRESSIONS.
    
    Followup patch to fix following valgrind issue introduced by
    the patch for bug24961932.
    
    Conditional jump or move depends on uninitialised value(s)
     Audit_global_variable_get_event::Audit_global_variable_get_event(THD*, Item_func_get_system_var*, unsigned char) (item_func.cc:7641)

commit 9ec9112a6f409a0da9d661be42e9a45cc7bc034a
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Apr 4 17:43:18 2017 +0530

    Added debug statements in MTR code.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>

commit 5bc59afadd9530037a21e615b8fe7f109eddb167
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Apr 4 14:15:35 2017 +0300

    wl#7614 windows2.diff
    
    cmake: try WIN32 to exclude windows

commit 09bda5d88af8d90f457369923b7b71e0d9de9ff4
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Apr 4 13:21:42 2017 +0300

    wl#7614 windows1.diff
    
    cmake: try to exclude windows

commit 37aedae0869a19e6cbc1f6ffe565e95501cdb219
Merge: b79398b 2984e8c
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Apr 4 15:32:36 2017 +0530

    Merge branch 'mysql-trunk-wl5847' into mysql-trunk

commit 4bc873cfcf33f180a737b5182de26f25043579be
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Apr 4 12:13:01 2017 +0300

    wl#7614 algo2.diff
    
    add #include <algorithm> to right place

commit 6a18199fe20b341dbb069f0c252d40a2cfbb124d
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Apr 4 11:39:17 2017 +0300

    wl#7614
    
    add #include <algorithm>

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

    sample push.

commit b79398b6d721e9e54a488634fd579e6bbdcfd235
Merge: d88ce7d d495a09
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Tue Apr 4 06:56:28 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk
    
    Conflicts:
    	rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/sock_probe.c

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 6b2ad1e5035b08e15cc7066e7af57e1dd254313b
Merge: a751f30 92b8ba7
Author: John David Duncan <john.duncan@oracle.com>
Date:   Mon Apr 3 20:12:11 2017 -0700

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

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

    Fix for wl#9819 mtr testing of embedded server.

commit a751f307890adbcdbbdfb19096e50536f33b412e
Author: Pekka Nousiainen <pekka.nousiainen@oracle.com>
Date:   Tue Apr 4 01:44:03 2017 +0300

    wl#7614
    
    ndb_import 1.0 combined patch

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

    New tests added.

commit d88ce7d3b9b6e39945eae66f4869d2de9703431c
Author: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
Date:   Mon Apr 3 16:35:01 2017 +0200

    Bug#24961932 - CREATE FUNCTION AT BOOTSTRAP ATTEMPTS TO EVALUATE NON-RESOLVED EXPRESSIONS.
    
    Issue here is, a "SET" statement in a stored routine sys.ps_thread_stack
    accesses a global system variable. While creating this stored
    routine during the bootstrap, Item object for the global system
    variable in a "SET" statement is created but evaluated
    before it is fixed(or resolved).
    
    The non-resolved(non-fixed) item is now evaluated to audit the
    global system variable event before the query prepare phase. This
    seems to be incorrect place for event audit as it tries to evaluate
    the non-fixed item. This also results in auditing the event during
    stored routines and prepared statements creation but not during
    the execution.
    
    To fix this issue, now global system variable access event audit
    is moved after the query prepare phase. In the first access of
    Item after resolving it, global system variable get event is audited.
    Class Audit_global_variable_get_event (a friend class to
    Item_func_get_system_var final) is introduced to call the audit
    for global system variable get event on the first access in the
    query execution.

commit b98ae0db833c4a4ab1fb2e84b1637741eb19eee5
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 31 15:02:33 2017 +0200

    Bug#24624556: RDTIMESTAMPCOUNTER.TESTCYCLE UNIT TEST FAILS ON AARCH64.
    
    The precision of the low-level ARM64 cycle timer varies
    depending on implementation. Our current unit tests assumes
    that the precision is low and therefore fails on some ARM64
    machines. Remove this check from the unit test so that the
    unit test passes on ARM64 regardless of precision.

commit fafe27deb6f679cce70bf7984514f479d5ef183d
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Mar 31 18:28:58 2017 +0200

    Bug#25814637 MIGRATE MISC MTR TESTS FROM LATIN1 TO UTF8MB4
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I72670cc550b28b50310557ae1f9c593bb854ba12

commit dca6d915c34affb8761b96d877e4e3b4268d4ef4
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Mon Apr 3 10:03:20 2017 +0200

    WL#10353 Post push fix. 5 ps-tests needed --record

commit 03d1cbc3133290a8807083a0a47f9e0e9d362293
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Mon Apr 3 16:35:41 2017 +0530

    Added debug statements in MTR code.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>

commit c7c58fa5091d82b3ad904cb3d2472526caa1b90e
Merge: f39327d a59bf83
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon Apr 3 12:37:06 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 f39327dc4d83d910dbeeb6350541d50136df4b4d
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Mon Apr 3 15:32:51 2017 +0530

    WL#5581: Add --opt-trace-protocol to MTR
    
    Added documentation for --opt-trace-protocol in doxygen.
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>

commit b6ddcfb5c52f8380a6d16733ecc0533e0c78b15f
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Mon Apr 3 15:29:37 2017 +0530

    Bug#25364178: XA PREPARE INCONSISTENT WITH XTRABACKUP
    
    Post push fix

commit 2984e8ca1f090f0d8856dce1dba6ca3d423b3759
Merge: ae086cc e4a452e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Apr 3 14:56:43 2017 +0530

    Merge branch 'mysql-trunk' into mysql-trunk-wl5847

commit ae086cc3bed1b0499087252b1fdf199f7c8a2d60
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Apr 3 14:52:16 2017 +0530

    New tests.

commit e4a452ee37c18cb1dfababdd0f2c927a3592dc84
Author: Gopal Shankar <gopal.shankar@oracle.com>
Date:   Mon Apr 3 10:54:24 2017 +0200

    Bug#25811413 DEADLOCKCHECKER::SEARCH IN LOCK/LOCK0LOCK.CC FOR DROP VIEW
    
    Problem is that, If a I_S system view is executed under LOCK
    TABLES mode, auto commit mode is off and serializable
    isolation level, then the I_S system view does not use
    non-locking reads.
    
    Server can convey InnoDB SE to do non-locking reads for DD
    tables used by I_S system views. The server is expected to
    call handler->extra() with HA_EXTRA_SKIP_SERIALIZABLE_DD_VIEW
    and then invoke handler->ha_external_lock() with F_FDLCK.
    The problem is that, currently the server invokes
    handler->ha_external_lock() first and then handler->extra().
    Fix is to call the handler API's in right order.
    
    A test case is added in main.is_lock_table.

commit 5eac4866433b003d9731789de6a9df894618383d
Merge: a9a9926 9c2175e
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Apr 3 08:20:32 2017 +0200

    ZZMerge branch 'mysql-5.7' into mysql-trunk

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 85d2cf7fb598dada48abbd99260dc32027f9a6c6
Merge: f002880 d81f967
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 31 13:58:45 2017 -0700

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

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

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

commit f002880cf600cb2bff73e9672f32c10881ff419a
Merge: 40fb25c 572d968
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 31 12:16:05 2017 -0700

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

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

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

commit 40fb25c2746393d7d6aa004fcbb8b8e28aa19ed9
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 31 08:18:37 2017 -0700

    wl#9819: fix PROCESSINFO_REP version check for 7.6

commit a9a9926513752f31c184092377c34944031a6148
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 31 17:03:17 2017 +0200

    Bug#25807358: GET RID OF TMP_DISABLE_BINLOG/REENABLE_BINLOG MACROS
    
    Post-post-push fix: Handle cases where
    Rpl_info_table_access::create_thd() doesn't create a THD and
    Rpl_info_table_access::drop_thd() doesn't delete a THD.

commit e63b1374f2b34e08f7f5662d5efa0c7ec9e1aaf3
Merge: 909f860 366e8bb
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 31 07:40:48 2017 -0700

    Merge branch 'mysql-5.7-cluster-7.5-mem' into mysql-5.7-cluster-7.6
    
    Conflicts:
    	storage/ndb/src/common/util/CMakeLists.txt
    	storage/ndb/src/kernel/blocks/qmgr/Qmgr.hpp

commit a86bf3d584d0927bdb9963c7d8c18a7a471c058c
Author: Satya Bodapati <satya.bodapati@oracle.com>
Date:   Fri Mar 31 16:28:31 2017 +0200

    Bug#25508568 - I_INNODB.INNODB_BUG14150372 SPORADICALLY FAILS
    
    Problem:
    --------
    The test hangs waiting to reach the sync point.
    
    Fix:
    ----
    After WL#6599, the I_S.STATISTICS query does not really invoke innodb
    API to get statistics. So, setting information_schema_stats=latest so
    that we invoke hton->get_index_column_cardinality() API to hit the
    debug sync point after_checking_for_0.
    
    Run the same query before enabling debug_sync, so that DD tables are
    cached. Otherwise the test seems to behave sporadically as we might
    enter the same code patch while opening DD tables.

commit aaacbeac73503e0a5a0f6b52507379548239e2da
Author: Horst Hunger <horst.hunger@oracle.com>
Date:   Fri Mar 31 15:47:34 2017 +0200

    bug#25716419: Fixed bug in PAM tests and some messing beautification.

commit 72758cbe2cd65c700025fdfabd85172a9e6a7f4f
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 31 15:44:20 2017 +0200

    Bug#25807358: GET RID OF TMP_DISABLE_BINLOG/REENABLE_BINLOG MACROS
    
    Post-push fix: Fix ASAN warnings - no need to renable binlog
    when THD is going to be deleted anyway.

commit 09c6468510210380d89a818597c2d381b8eb6f2c
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Fri Mar 31 14:07:14 2017 +0200

    WL#10353 Switch mysqltest client default to utf8mb4 with the test modifications.

commit 3b52b69704b6ef5ab12c32b195bda20214cf1102
Author: V S Murthy Sidagam <venkata.sidagam@oracle.com>
Date:   Fri Mar 31 19:06:38 2017 +0530

    wl#9503: mysql string functionalities as a service for
             mysql_server component (sub-worklog for wl6667)
    
    Post-push fix: Fixed asan(sanitize_report) test failures.

commit 379fa4ab6ccb660d0ec95d9a4a6e4034d7e1821e
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 31 13:35:46 2017 +0200

    Bug#25811461: MYSQL SERVER WITH NDB FAILS TO BUILD ON WINDOWS
    
    Add missing #include of my_inttypes.h to get uint
    definition on Windows.

commit 24b1a24ba1a083f803929eaf4ad98ff2fb4d75a3
Merge: 7a89e48 37b5a14
Author: Neha Kumari <neha.n.kumari@oracle.com>
Date:   Fri Mar 31 17:47:54 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 7a89e4889a358140986b5b52964cdef23afb4162
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Mar 21 09:47:33 2017 +0100

    Code cleanup, embedded build

commit 5c82b783bdc4c52ce74b74f92d61703b75d38c9a
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri Mar 31 10:15:22 2017 +0200

    Bug#25812164 ENABLE GR TESTS IN ASAN
    
    The tests seem to run fine in a local setting, remove the not_asan.inc
    so that they are run on PB2.

commit 0b207276e820ee3b5838a51db71fed32f6d4ed8f
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 31 10:43:38 2017 +0200

    WL#10353: Use utf8mb4 in libmysql and command tools
    
    This WL changes the compiled in default character set for all clients to
    utf8mb4. Client tools include following: mysql, mysqladmin, mysqldump,
    mysqlcheck, mysqlpump, mysqlimport, mysql_upgrade, mysqltest, mysqlslow,
    mysqlslap.

commit 73c2befa4cf312130052cf186c091b7a549a0395
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Mar 31 09:41:33 2017 +0200

    wl#9503: mysql string functionalities as a service for
             mysql_server component (sub-worklog for wl6667)
    
    Post-push fix: set correct directory for plugins in plugin.defs
    After the patch for Bug#25116123 MULTIPLE PLUGIN_DIR OPTIONS, *all*
    plugins are created in ${CMAKE_BINARY_DIR}/plugin_output_directory

commit 8cc8d79e93673db018c01cb36dfd885ffce8f569
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 31 09:38:15 2017 +0200

    Bug#25807358: GET RID OF TMP_DISABLE_BINLOG/REENABLE_BINLOG MACROS
    
    There are three problems with these two macros:
    1) Lowercase names means they look like functions (less serious)
    2) reenable_binlog() overwrites THD::variables::option_bits so
       that any changes to these bits since tmp_disable_binlog()
       are lost (less serious)
    3) The first starts a scope which the second ends (more serious)
    
    The latter means that any variables declared between use
    of the first and the second macro, are not visible afterwards.
    This can give difficult to understand compiler errors.
    And even worse it can mean that destructors for e.g. RAII objects
    are run at a not-obvious time, breaking the application at runtime.
    
    This patch removes the two macros and replaces them with
    a RAII-style class.

commit 928fcfc9561a7288faabd035c8f9b6089351ed5a
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Fri Mar 31 08:53:32 2017 +0530

    Bug 25364178 - XA PREPARE INCONSISTENT WITH XTRABACKUP
    
    Post push fix for resolving test failure in windows.

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

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

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

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

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

    Bug#25675643 Fix duplicate system sections in NDB config

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

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

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

    wl#9819 bugfix: ndb_basename was implemented incorrectly for Windows

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

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

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

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

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

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

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

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

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

    wl#9819 Version 2.  Patch #7: mysqld

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

    wl#9819 Version 2.  Patch #6: Ndb_cluster_connection

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

    wl#9819 Version 2.  Patch #5: Qmgr

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

    wl#9819 Version 2.  Patch #4: ClusterMgr

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

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

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

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

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

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

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

    wl#10321 new mysqld status variable Ndb_system_name

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

    wl#10147 changes after code review

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

    wl#10147 ndbinfo.config_nodes: mtr test case

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

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

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

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

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

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

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

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

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

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

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

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

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

    wl#9819 patch #9: Send ProcessInfoRep from ClusterMgr

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

commit 8f77b09eeb2ea524410184c02623a526a897c75b
Author: Dag Wanvik <dag.wanvik@oracle.com>
Date:   Thu Mar 30 18:28:27 2017 +0200

    Bug#25636986 Add header files to project sources so XCode IDE can find them when when searching
    
    Currently, the Xcode IDE has a Find->Text->Containing pane that will
    search through MySQL project files for text strings. With the existing
    Cmake generated Xcode project "MySQL", the header files are not
    included in the sources, so they will not be searched.
    
    This may possibly apply to other IDEs as well.
    
    This patch makes sure the header files in the
    
          sql
          include
          storage
    
    directories and their subdirectories are added to the project sources.
    
    Change-Id: I368e09f954659cb4bdc1e346a9c08c34600c8e00

commit 909f860b8b11710c7241b84828f2d440bfdc06d3
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Mar 17 13:15:02 2017 +0100

    WL#9835 Distinguish out of transaction memory errors from out of data memory erros.
    
    Since some usages of data memory are changed to use transaction memory new
    error messages are needed.  These new errors are also temporary rather than
    permanent as the errors concerning data memory usages.
    
    Some usage of permanent error:
    827 Out of memory in Ndb Kernel, table data (increase DataMemory)
    are changed to temporary error:
    921 Out of transaction memory in local data manager, copy tuples (increase SharedGlobalMemory)
    
    Some usage of permanent error:
    902 Out of memory in Ndb Kernel, ordered index data (increase DataMemory)
    are changed to temporary error:
    922 Out of transaction memory in local data manager, ordered index data (increase SharedGlobalMemory)

commit 76e2f2403ce76794979385b206a59dcf0600d7a4
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Mon Mar 6 11:11:55 2017 +0100

    WL#9835 Fix bug in debug build for DUMP 1000.
    
    "all dump 1000" shutting down the entire cluster with error "Ndbd_mem_manager::get_resource_limit(Uint32, Resource_limit&) const: Assertion `id > 0' failed" ..

commit 2de1099f8f7158c74b89dbf9c2e8c15417e77fef
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Feb 23 14:56:37 2017 +0100

    Disable assert to let testing progress

commit 03d91ecc4f135826439dfbc6fc8cf9e19c617037
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 15 15:41:32 2017 +0100

    WL#9835 Remove use of IndexMemory in tests

commit a3acc02e17895c00c46fbfe97d1cf76b354336a0
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sun Jan 29 23:59:01 2017 +0100

    WL#9835 Change memory usage report for data memory.
    
    Acc pages reported in 32K-pages now instead of 8K-pages.

commit 65216f04d3170ee43356c0d2e9532967f75dae36
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue Feb 14 23:24:30 2017 +0100

    WL#9835 Configuration parameters IndexMemory and DataMemory
    
    Default values changed for both, and IndexMemory is deprecated.

commit c2938a067bc520ed75d3e689d3a80d13562617f6
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Jan 5 23:43:05 2017 +0100

    WL#10196 Dbacc: Remove static array of 8K pages.
    
    8K pages are allocated from 32K pages.
    
    32K pages are seized and released from data memory as needed.
    
    Note, that 32K pages only uses 30-bit physical page number since two bits
    are needed to address one 8K sub page.
    
    The logic for keep percentage of data memory free are removed, letting
    the general logic in Cmvmi handle that.
    
    Expand and shrink of the hash table are allowed to use the free
    percentage of spare pages of data memory.
    
    The page map from logical to physical page number are changed to use
    27 bit physical page numbers instead of 19 bits as earlier.

commit 3fa48f978ff558cc8c144b328ad8e32b73073941
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Jan 4 19:20:00 2017 +0100

    WL#10196 Refactor Dbacc: remove unused stuff.

commit b713914c35f9b9c37e9ba1395323280d3ce75521
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jan 27 19:56:10 2017 +0100

    WL#9835 Add spare to CMVMI dump memory and ndbinfo.resources

commit 256f828661ebd8abbeb20a50844e1f2abad24e09
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Jan 18 19:33:58 2017 +0100

    WL#9835 Change several usage of RT_DBTUP_PAGE to new record types using transaction memory instead.
    The RT_DBTUP_PAGE usage in Dbacc is changed to new RT_DBACC_PAGE still using data memory.
    
    Memory for these extra page uses should be accounted for when configure
    transaction memory.
    
    Also Dbtux are allowed to use spare pages, this to continue to support
    doing add nodes and reorganize partitions when data memory is full.

commit be86da939d69ce0efd0597a92ff698ce9b7e9a5a
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sun Jan 29 01:49:55 2017 +0100

    WL#9835 Cmvmi: Reserve spare pages for data memory.
    
    Note, that with this change spare pages are reserved twice, both within
    Cmvmi and also by existing logic in Dbtup and Dbacc.

commit 6d793ff7f73fb9c22f9a3c4003195f1ea4750c9a
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jan 27 19:16:41 2017 +0100

    WL#9835 Remove reservation of spare pages in Dbtup, depend on logic in Cmvmi.

commit 7ea4b075920d9dfcd825fcca78f05d9b7f7b9d1d
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Jan 27 21:33:53 2017 +0100

    WL#9835 Ndbd_mem_manager: Add more page zones.  Use 27 bits for dyn arr instead of 19

commit 5968f9c21bcab182864f6786d1ac023a42d88ef3
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Jan 28 16:41:44 2017 +0100

    WL#9835 Support spare pages in Ndbd_mem_manager.

commit 152621c07aedbf2a0d45fa9bb016d0355db86399
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Feb 3 20:44:50 2017 +0100

    WL#9835 Refactor Ndbd_mem_manager.
    
    Introduce Resource_limits.
    
    Add page zone count.
    
    Remove resource limit access in release().
    
    Stop using resource_limit[0]
    
    Note that ndbinfo.resources will not have entry for "RESERVED" any more.

commit 2159017ec50c4450d1ed139d08846036d8a8b703
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Jan 18 13:26:32 2017 +0100

    WL#9835 Rename RG_DISK_OPERATIONS to RG_TRANSACTION_MEMORY

commit 452c2330f95b89f48d7a59eb3a06af0212792831
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Mar 30 15:51:42 2017 +0200

    WL #9751: Add Japanese collation to utf8mb4
    
    Post-push fix: Make sure the MB/sec count for the Japanese microbenchmark
    is correct.
    
    Change-Id: I2bbf2ec6193d2563f069fcf41ce5557af7d1067c

commit 2b722999b9658e7d2bbab298092285c6763a16c9
Merge: 1b39c49 39d8611
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Thu Mar 30 15:21:33 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 e41fa490939301853641b07f1819fec26d9e04fb
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Thu Mar 30 16:15:16 2017 +0530

    Bug #24748843: SYNC PRINTS TO STDOUT CAUSING MAIN THREAD TO SLEEP DURING HIGH IO WAIT
    
    Disable async log until the flushing problems are solved for crashes.

commit 1b39c4972af479232638f74fa65c5ae808c4202d
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Mar 30 14:25:40 2017 +0200

    Bug #25732787: INSTALLED HEADER FILES INCLUDE NON-INSTALLED HEADER FILES
    
    Post-push fix: Several "small" unit tests got 'missing symbol client_errors'
    When building with Sun Studio. Fix: add another library dependency to the
    library 'gunit_small'.

commit 8b70fcfdba9171b35d15541c22e218abf225e61a
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 28 08:56:30 2017 +0200

    Bug#25792323 MTR TEST BINLOG_CHECK_FLUSH_LOG_ASSERTION GENERATES CORE FILE
    
    mtr test binlog_check_flush_log_assertion does an abort() which will generate
    core on unix, "would you like to debug" popup on windows.
    
    Fix: Use DBUG_SUICIDE when abort() is expected by the test.

commit c79d9d5d18a2a3b9fce17fc8d312549971522b06
Merge: c95ad9b d3643d8
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Thu Mar 30 16:44:54 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 c95ad9bc1e9e45d03cd60d9552effc3544da728a
Merge: d85d428 56d0979
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Thu Mar 30 11:50:17 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 d85d4284db2deacad70be52456a306c43eb63778
Author: V S Murthy Sidagam <venkata.sidagam@oracle.com>
Date:   Thu Mar 30 16:16:10 2017 +0530

    wl#9503: mysql string functionalities as a service for
             mysql_server component (sub-worklog for wl6667)
    
    HLS:
    ===
    What is the problem ?
    
    MySQL has a platform independent character set implementation. To minimize
    string conversions all strings in the server core have a character set attached
    to them that's carried along as further as possible. This is done through a
    special C++ class (String). Components may need to manipulate some of these
    String instances. But due to the fact that C++ classes don't travel well across
    heap boundaries (dll/exe etc) we need a C API for these class instances.
    
    Why only this much ?
    
    The full API for that would be very large. So this worklog implements only the
    minimum subset that the password validation component (and plugin) needs.
    
    How ?
    
    We take the existing composite plugin service (a wrapper around String methods)
    and break it up into multiple logically separate component services. This is a
    typical example for how re-engineering of existing plugin APIs into service APIs
    should go.

commit b0e0c9491b6750206c1c259b360edd6e2e830172
Merge: 9932861 b2f4cc9
Author: Srikanth B R <srikanth.b.r@oracle.com>
Date:   Thu Mar 30 14:43:34 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 9932861fe55a7132e3e084ac6f2f058113071aa2
Author: Alfranio Correia <alfranio.correia@oracle.com>
Date:   Thu Mar 30 08:24:43 2017 +0100

    BUG#25477979 : GROUP REPLICATION: SERVER ASSERTION UPGRADING SECOND SERVER FROM 5.7 TO 8.0.1
    
    PROBLEM
    -------
    The patch for BUG#25311008 "NODE THAT FAILS AND RE-ENTERS MIGHT BE EXPELLED
    WITH NO REASON" introduced the notition of a uuid (i.e. timestamp) assigned
    to a node and the information is used to prevent a group from expelling a
    different incarnation of a node.
    
    However, the patch was designed to be pused into 5.7.17 which was the first
    Group Replication release. This did not happen and the patch was not
    originally designed to support different types of ids, a common situation
    when different replication releases are mixed.
    
    So the server crashes due to some asserts that are not necessarily true
    when different releases are mixed.
    
    FIX
    ---
    To fix the problem, we accomodate the possibility of having variable size
    ids such as uuids, timestamps or hostname:port.

commit 4234c6a692147d2e3dce2a28a75df2d3ea3b9cdc
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Mar 30 06:40:53 2017 +0200

    Stabilize group_replication.gr_key_rotation on Windows
    
    Make a suppression pattern more general so that it also caters to
    Windows paths.
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com>

commit 104d0ebacbee1c88c204f4fa52e8eefed8fcece8
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Mar 30 04:55:17 2017 +0200

    Provide more buffer pool for innodb.innodb-copy-alter-debug
    
    Problem: restarting a server in innodb.innodb-copy-alter-debug often
    times out in the 64K page size runs because there is too little room
    in the buffer pool.
    
    Solution: increase the size of the buffer pool (.opt file).
    
    Approved by Anitha Gopi <anitha.gopi@oracle.com>.

commit 9426485ac4b90096b9e15a8d3a67e35ca645b9f8
Merge: 0417674 9d01911
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed Mar 29 18:09:21 2017 +0200

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

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

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

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

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

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

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

commit e4ccab9fb6b8c066f108fda7d3ea1ebeb3dd3d9f
Author: Daniel Blanchard <daniel.blanchard@oracle.com>
Date:   Wed Mar 29 16:02:55 2017 +0100

    Bug #25799855 DOCS/INFO_SRC BUILD-DATE ENTRY MISSING ON WINDOWS
    
    Issue
    -----
    The CMAKE macro CREATE_INFO_SRC defined in cmake/info_macros.cmake.in
    uses a Perl script to generate a date string that populates the
    Docs/INFO_SRC file's build-date entry.
    
    Unfortunately, the date formatting options used in the Perl script are
    unavailable on Windows, resulting in an incorrect or empty (depending
    upon the Perl distribution used) build-date entry.
    
    Fix
    ---
    Replace perl script that formats build time stamp in
    cmake/info_macros.cmake.in with more portable CMAKE command
    
    STRING(TIMESTAMP bdate "%Y-%m-%d %H:%M:%S +0000" UTC)
    
    Reviewed by: Tor Didriksen <tor.didriksen@oracle.com>
    RB: 15849

commit 04176742eb11731b34da4430957da5ce067821dc
Merge: 3cb5e96 050c2bc
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Wed Mar 29 18:43:20 2017 +0530

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

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

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

commit 79aa1a3c029ec2b782e2ef944015fa9c030f8ecd
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 28 12:29:02 2017 +0200

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#9
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: Idba7ac09b022c5fb47a1f4dd528f74a87502614c

commit 74da17f9816797594c9b833d437176ab92ca3d71
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Wed Mar 15 14:56:26 2017 +0000

    BUG#25444610 REPLICATION_APPLIER_STATUS_BY_WORKER USES COORD THREAD_ID AS INDEX WITH MTS
    
    Problem:
    When MTS is enabled, the P_S indexing functionality introduced by WL#6616
    is relying on the SQL applier coordinator thread ID instead of the SQL
    applier worker thread IDs.
    
    Analysis:
    The implementation of the P_S indexing functionality is only taking into
    account the thread ID of the SQL thread. This is correct for STS,
    because the SQL thread is the worker thread. However, for MTS, this
    thread will correspond to the coordinator, while there are actual worker
    threads with distinct thread IDs from the MTS coordinator.
    
    Fix:
    When MTS is enabled, use the thread ID of the correspondent worker as
    index.

commit 911fde036ac47664b4c5346f440eaddba6dd05ea
Merge: 2837931 78f086c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Mar 29 12:07:22 2017 +0200

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

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 2837931c5223ffce12d92d9b7b09994476b50c3e
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Fri Mar 24 20:16:19 2017 +0100

    WL#8392: Disable symbolic links as compiled default + deprecate variable
    
    Problem: --symbolic-links is problematic, and a source of recent
    bug reports. Since symbolic links allow MySQL to write data to any effective
    location on the operating system, it creates two issues:
    
    1) MySQL may be tricked into writing to locations it is not supposed to
    
    2) MySQL may write to a location that has privileges that are too
       loose, and may be tampered with by other users on the operating
       system.
    
    Fix:
    1) Change the compiled default to OFF (aligning with the defacto default)
    2) Issue deprecation warning if the option is used.

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 3cb5e967316c87fe32b9265028f7d362db122b2d
Merge: 4ed2323 9ece9b9
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Tue Mar 28 15:13:00 2017 -0700

    Merge ../mysql-5.7-cluster-7.5 into mysql-5.7-cluster-7.6
    WL#9545 Clusterj automatic reconnect on cluster failure
    post-push fix for pb2 failures

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

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

commit ec2403b8a362ef2aee7753b7d37bdee6ecebfe5a
Author: Daniel Blanchard <daniel.blanchard@oracle.com>
Date:   Wed Mar 15 15:02:20 2017 +0000

    Bug #25101724 QUERIES IN "SHOW PROCESSLIST" OSCILLATE WITH CONSTANT TIMES HIGHER EACH DAY
    
    Issue:
    ------
    the start time of a query/THD is obtained from my_micro_time, but the
    end/current time as used by show processlist is obtained from my_time.
    These two different time functions currently make different OS API calls
    on Windows to obtain the current time. The problem is caused by the fact
    that the current implementation of my_micro_time (using
    QueryPerformanceCounter) will drift relative to wallclock time, of the
    order of 1 second per day.
    
    Fix:
    ----
    The my_micro_time QueryPerformanceCounter implementation is replaced with
    an (indirect) call to GetSystemTimePreciseAsFileTime when available,
    falling back to GetSystemTimeAsFileTime on older versions of Windows. The
    Fill_process_list::operator()(THD *inspect_thd) function used by SHOW
    PROCESSLIST is also modified to use the same function (my_micro_time) for
    obtaining the start and end times used in the duration calculation.
    
    The my_micro_time_ntp function is now redundant, and thus calls to it
    are replaced with calls to my_micro_time.
    
    Similar replacement of QueryPerformanceCounter timing with
    GetSystemTimePreciseAsFileTime /GetSystemTimeAsFileTime in InnoBase.
    
    Reviewed-by: Sunny Bains <sunny.bains@oracle.com>
                 Thayumanavar X Sachithanantha
    	     <thayumanavar.x.sachithanantha@oracle.com>
    RB: 15719

commit b642d0c9be97963580427bc1dd4d270d6e8daa8f
Merge: 16ae747 87532ad
Author: Marek Szymczak <marek.szymczak@oracle.com>
Date:   Tue Mar 28 18:43:22 2017 +0200

    Merge branch 'mysql-5.7' into mysql-trunk

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 16ae747485637dd1074bfe453ed9df1fef59db0e
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Thu Mar 23 13:41:11 2017 +0100

    Bug25741966 PASSWORD EXPIRATION CHECKED FOR LOCKED ACCOUNTS USED AS SP DEFINERS
    
    When you create a role you don't get a user account which you can login to.
    Despite this password expiration is checked when this account is used as a
    definer account for stored procedures.
    This patch fix the issue by ignore password expiration on accounts locked
    for authentication.

commit 95d0e9bae0eab5a67151db617eda1f7152e9a8bf
Author: Georgi Kodinov <georgi.kodinov@oracle.com>
Date:   Tue Mar 28 15:44:28 2017 +0300

    Bug #25788406: CAN'T COMPILE MYSQL WITH VS2017
    
    ifdefed the VS2015 specific code into a check for VS2015 actually
    being used.
    This allows other VS versions to compile with their own tools.

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

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

commit 4ed2323eb991c7e9c7d1ceca54358be1708892df
Merge: 3d87dbf 8e689be
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Tue Mar 28 14:16:30 2017 +0200

    Empty upmerge of ndb_print_frag_file man page

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

    Empty upmerge of ndb_print_frag_file man page

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

    Add man page for ndb_print_frag_file for rpm

commit e9336e25a0d993033df6aaaef1cd3d87c76460d5
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Tue Mar 28 13:36:19 2017 +0200

    Added test_services and collations suites to the default MTR suites. These test suites run in less than a minute and test important functionality.
    
    Approved by : Erlend Dahl<erlend.dahl@oracle.com>
                  Pavan Naik <pavan.naik@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 ee40622e1f6d03ec478570bf69c50f97d9b19dd2
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Mar 25 16:10:58 2017 +0100

    Bug#25784440 BUILD WITHOUT SERVER AND WITH NDB FAILS: MY_DECIMAL.H: NO SUCH FILE OR DIRECTORY
    
    Remove string2decimal from sql/my_decimal.h.
    
    In include/decimal.h remove support for fixed=true for internal_str2dec()
    and rename function to string2decimal.
    
    Remove use of sql/my_decimal.h in ndb.
    
    Remove use of sql as include path in ndb, except for handlers ndbcluster and ndbinfo.

commit 3d87dbf2f505ebda7fab0cea9f2478d5b252eab9
Merge: 612b710 678debf
Author: Dinesh Surya Prakash <dinesh.prakash@oracle.com>
Date:   Tue Mar 28 15:52:43 2017 +0530

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

commit e1cdf4a64d00d7a3d9f81bc090984cae323f26e9
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Mar 28 12:20:15 2017 +0200

    Revert "Bug25741966 PASSWORD EXPIRATION CHECKED FOR LOCKED ACCOUNTS USED AS SP DEFINERS"

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

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

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

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

commit ce4b3f70f56bf46320a790cec4664ab958fbfa41
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Mar 25 16:10:58 2017 +0100

    Bug#25784440 BUILD WITHOUT SERVER AND WITH NDB FAILS: MY_DECIMAL.H: NO SUCH FILE OR DIRECTORY
    
    Remove string2decimal from sql/my_decimal.h.
    
    In include/decimal.h remove support for fixed=true for internal_str2dec()
    and rename function to string2decimal.
    
    Remove use of sql/my_decimal.h in ndb.
    
    Remove use of sql as include path in ndb, except for handlers ndbcluster and ndbinfo.

commit 84458ebc9c64082c4f2483d2afa7d9c89ea3c61b
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Mar 28 10:49:01 2017 +0200

    Bug #25732787: INSTALLED HEADER FILES INCLUDE NON-INSTALLED HEADER FILES
    
    Post-push fix: Make the CR_* constants available from mysql.h.
    
    Change-Id: I417a5d86c7b9aee860a877831f6d2f979e4876af

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

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

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

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

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

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

commit 8000091ed6e69c07c075392c3a2f8dc57c4bfe6f
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Thu Mar 23 13:41:11 2017 +0100

    Bug25741966 PASSWORD EXPIRATION CHECKED FOR LOCKED ACCOUNTS USED AS SP DEFINERS
    
    When you create a role you don't get a user account which you can login to.
    Despite this password expiration is checked when this account is used as a
    definer account for stored procedures.
    This patch fix the issue by ignore password expiration on accounts locked
    for authentication.

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

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

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

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

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

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

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

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

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

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

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

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

commit 4f6287bd11da6bcc787d56a323bac97ba85cbbde
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 22 09:19:31 2017 +0100

    Bug#25654833 MYSQL CLUSTER 7.5.5 REPLICATION SLAVE SQL THREAD HANGS WITH CREATE TABLE
    
    This is 'best effort' patch for the above problem, which seems to be a regression introduced in 7.5.5. Based on bug description, we *assume* this to be caused bu the 'part 3 of 4' push of patch for Bug#25042101 'SPLIT BINLOG INJECTOR_MUTEX IN TWO, DO REQUIRED CLEANUP':
    
    .........
      Remove thread_yield() in binlog injector code previously put there
      as a temp stopgap in the commit below. This used to be required
      as the injector thread held the injector_mutex > 99% of the time when
      waiting for pollEvents(). That blocked client threads either wanting to
      access the data shared from the injector thread, or needing the injector_mutex
      while waiting for injector_cond to be signaled
    
      This should not be required anymore, as:
    
      1) injector_mutex has been splitt in two separate mutexes.
      2) We changed init of the injector_event_mutex from a 'FAST' to a 'SLOW'
         mutex which has better 'farness' properties in the scheduler
    .........
    
    The theory is that using the more 'fair' SLOW-mutex variant is not as 'fair' as assumed to be on all OS/VM variants. Thus the 'yields' may be unsafe to remove.
    
    Bug has been hard to reproduce:
    
     - It has been 'randomly' reproduced using Oracle Linux 7 on top
       of 'Virtualbox'
     - It has than gone away for a couple of days.
     - It has *not* been reporoduced with this patch.
    
    So it should be reasonable to expect that reintroducing the 'thread_yields' should solve the problem.
    
    We cant say for sure though....
    
    (cherry picked from commit f0e06cc2bc975ca5be084be9c307803e1da53cd4)

commit e14c9624b956dfaaeb954df268f84f4a264cebbb
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 27 20:12:23 2017 +0200

    Bug#25431979 HEAP-USE-AFTER-FREE IN INNODB.VIRTUAL_BASIC
    
    Disable test in ASAN for now.

commit c169c360d9b7ecc44d3160b6e55def5dccf69daf
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Mar 27 16:23:39 2017 +0200

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#8
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I6c28b6f3a68f51dddd05428651fe1b31d755f16f

commit cd9efb4b0ff628b896ad8a7ed98d1f061d644320
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Mar 27 16:21:24 2017 +0200

    Bug#25779239 ALTER TABLE FAILS WHEN DEFAULT CHARACTER SET CHANGES TO UTF8MB4
    
    Change-Id: Idc375b71b86f37daeff44424de635095c3d04c86
    Problem: wrong calculation of column_length in prepare_key_column()
    Fix: multiply charset->mbmaxlen only for relevant field types.

commit 5fabefc593b06869a6675e4fe743fe6fa7aa36b6
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 27 16:35:50 2017 +0200

    Update the .result file for thread_pool.thread_pool_connect
    so it again matches the .result file for main.connect

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

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

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

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

commit dd13cce3b50129bc5e0d13b4b86280eb68dc8215
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 27 12:06:57 2017 +0200

    Update reference to dd_is_compatibility.test to dd_is_compatibility_cs.test

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

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

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

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

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

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

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

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

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

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

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

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

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

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

commit 25bb2371d560b4f1ec5799685da4c2e3e50c6d97
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 27 09:34:25 2017 +0200

    main.connect does not clean up grants information
    
    Problem: main.connect creates test@localhost and test@127.0.0.1
    
    It then proceeds to do a 'grant ALL' to these users.
    
    Finally it cleans up by deleting the entries in mysql.user and
    executing FLUSH PRIVILEGES.
    
    However, this leaves the grant information in mysql.global_grants, and
    subsequent tests may fail with a result mismatch.
    
    Solution: delete the users with 'DROP USER' instead.
    
    Approved by Jon Olav Hauglid <jon.hauglid@oracle.com> over IM.

commit bdface7e3896b93cffd96183e00e65b6f90a41e5
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Mon Mar 27 09:35:09 2017 +0200

    WL#8963: Support for partial update of JSON in the optimizer
    
    Post-push fix: Filter out unstable part of EXPLAIN FORMAT=JSON output
    in testing of multi-table updates. The set of "used_columns" is
    different when the test runs with --mysqld=--log_bin (bug#22472365).

commit 71ce48aeb254679524f2ca7a2c020dbb63a792b7
Author: Deepthi ES <deepthi.e.s@oracle.com>
Date:   Mon Mar 27 13:01:35 2017 +0530

    Bug#25722754 RPL_DROP_DB FAILS SPORADICALLY ON PB2 WHEN SLAVE-PARALLEL-TYPE=DATABASE
    
    Test uses 2 databases test1 and test2. When slave-parallel-workers>1 and slave-parallel-type=DATABASE , one worker can execute transactions on 'test1' and one more worker can execute transactions on 'test2' database parallely.
    
    Testcase creates 2 tables : test1.t4 and test2.t2 , where test2.t2 references test1.t4 by a foreign key.
    
    Test fails by 2 reasons :
    ------------------------
    1) If creation of these 2 tables is executed in parallel by different worker , create table test2.t2 fails if test1.t4 is not yet created on slave.
    2) Drop database test1 fails if test2.t2 is not dropped on slave.
    
    Fix :
    ---
    1) Test is changed to ensure that test1.t4 is created on slave before executing create table test2.t2
    2) Table test2.t2 is deleted on slave before dropping test1.

commit 612b710899c6a781395a883d6dc87f8656375bcf
Merge: 16b6735 4b44bb9
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Mar 27 09:11:35 2017 +0200

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

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

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

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

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

commit a0018daae5d27c7c21b03bb79151f3d5ea8671cd
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 27 08:37:44 2017 +0200

    Rename main.dd_is_compatibility to main.dd_is_compatibility_cs to
    make it more clear that this is a test for case sensitive file
    systems only and that there is a _ci version.
    
    Reviewed-by: Erlend Dahl <erlend.dahl@oracle.com>

commit d198768c144b7884a718788fb79303e20e468da4
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 27 08:25:10 2017 +0200

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#7
    
    Post-push fix: Update .result file for main.dd_is_compatibility_ci

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

    test not needed for el5

commit e1591b3ab125d107a6c03029efd66659870c9c7e
Merge: dacadd3 5eb6e34
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Mar 27 08:53:28 2017 +0530

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

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

    test in all.

commit 16b67354966321fb50cd81eaa8465f5f0b322b21
Merge: 36cd777 098f9c4
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 24 15:02:27 2017 -0700

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

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

    Disable ReconnectTest

commit eb21f3a7301f07d31b3953fc8a862cad59e68a0c
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Sat Mar 25 00:37:46 2017 +0530

    Bug#25518436 : MYSQL 8.0.1 - MYSQLD ERRORLOG HAS UPGRADE ERRORS AT
                   SERVER START AT LIVE UPGRADE
    
    While doing in place upgrade on data directory created by mysql-5.7,
    stored routine statements and views are parsed. For any error while
    parsing the statement, an error and a warning is added to the error log.
    
    Logging of parsing errors while upgrading stored routines and views
    are not needed. Failure while parsing sys schema routines and views
    is expected. Warnings for these failures are perceived as noise in
    error log. sys schema will get fixed when user executes mysql_upgrade.
    
    Fix:
    Do not print statement parsing error for stored routines and views.
    Do not print warning if parsing has failed for sys schema stored
    routines and views.

commit 36cd77717a62afc51779b8eb27179a2990f97c3e
Merge: bf35528 6b3f303
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 24 11:56:25 2017 -0700

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

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

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

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

    aa

commit e148d930ed785c560fe904964acd888b380921dc
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Mar 24 16:48:14 2017 +0100

    Bug #25732787: INSTALLED HEADER FILES INCLUDE NON-INSTALLED HEADER FILES
    
    Post-push fix: Include mysqld_error.h, which at least sysbench needs to
    function. This really should be included from <mysql.h>, but there's no
    immediately obvious way to do that without more build system changes.

commit bf355288b9715621d3ebc7abad1deaec1a55be34
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Fri Mar 24 16:15:52 2017 +0100

    Tracing test failure: testRedo -n CheckLCPStartsAfterNR T1

commit 958ace1740fb9c01600a2d5b0cfa2cdde62e179d
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 24 15:56:20 2017 +0100

    Update the .result file for max_parts.innodb-import-partition-1.
    This file has been outdated for at least two years.
    
    Reviewed-by: Erlend Dahl <erlend.dahl@oracle.com>

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 69a0152e388b1c2b5d5100179e264b3465c6268b
Author: Tiago Jorge <tiago.jorge@oracle.com>
Date:   Tue Jan 24 11:06:05 2017 +0000

    BUG#25310344 - MYSQL GCS DOES NOT HANDLE THE FAILURE OF NODE WHILE IT IS JOINING THE CLUSTER
    
    Description:
    -----------
    If a node never becomes alive or becomes alive but fails before a view
    that contains it being delivered to the application, the node is never
    expelled from the cluster and the application will never be aware of
    its existence.
    
    However, the configuration delivered to GCS already contains the node
    and as such it is considered to compute the majority.
    
    Suggested Fix:
    -------------
    Keep track of nodes that are joining the cluster and expel them if
    they do not join it after sometime. The timeout must be configurable
    through a user interface.
    
    This is a port from BUG#23613854 - MYSQL GCS DOES NOT HANDLE THE
    FAILURE OF NODE WHILE IT IS JOINING THE CLUSTER

commit 187a6ebd580dc60d5aab0aefa1a65686821d177a
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Mar 24 10:25:57 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#7
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I84f57b14fb8d7178bcce15ab1de284ccff7f8ee9

commit 5b75ed426586a92160aeb5022697643de4b9cdec
Merge: e3a0348 d7a9fbe
Author: Anibal Pinto <anibal.pinto@oracle.com>
Date:   Fri Mar 24 13:12:05 2017 +0100

    Null-merge from 5.7.

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 e3a03487f573a613754c61910540ef7865c825de
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri Mar 24 16:53:04 2017 +0530

    BUG#25700362 : DO-TEST-LIST: WORK WITH PATH TO A TEST
    
    Post push fix, fixed doxygen build failure.
    
    Reviewed-by: Erlend Dahl <erlend.dahl@oracle.com>

commit 017fc6844a17dd5058ce54f83036d1f3f88db42e
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Thu Mar 23 15:54:10 2017 +0000

    BUG#25041396 --LOG-BIN MARKS MANY PERFORMANCE SCHEMA TABLES INVALID
    
    Problem:
    When a performance_schema table was dropped or does not
    have the expected structure, and later the server was
    restarted with binlog enabled, it marked all performance
    schema tables encountered after the first error as invalid.
    
    Analysis:
    The method decide_log_format would return with an error if
    there was any currently active error and the table was not
    to be replicated (as it is the case with P_S tables).
    This error was being generated when checking the P_S tables
    upon restart. However, it is sufficient to print the error
    to the log, because the check is not supposed to return
    any error.
    
    Fix:
    Since checking the performance schema at server start is not
    supposed to generate an error, it is safe to clear the error
    in case there is one.

commit acc57c2a11648e643290f92833b6709b386167f6
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri Mar 24 15:34:53 2017 +0530

    BUG#25700362 : DO-TEST-LIST: WORK WITH PATH TO A TEST
    
    Description:
    ============
    The file accepted by "do-test-list" option contains only lines(test
    names) in the format <suite>.<test_name> (or a space instead of dot
    possible). But it is desirable that the "path" format can be given
    to list of tests, e.g. "mysql-test/innodb/t/innodb.test". Reason is
    that a rather simple git command can extract the tests, which are
    needed to test a WL.
    
    Fix:
    ====
    Modified the behavior of 'do-test-list' option to accept a file
    argument containing tests one per line in any of the following
    forms.
    
      1. <test_name>
      2. <test_name>.test
      3. <suite_name>.<test_name>
      4. <suite_name>.<test_name>.test
      5. path_to_the_test_file
    
    Path to test file should either be an absolute path or a relative
    path from base directory directory.
    
    Reviewed-by: Horst Hunger <horst.hunger@oracle.com>
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>
    RB: 15692

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 09fa02809b7c3ff4b94bb0d08bf89d1dbc818f39
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Thu Mar 23 16:10:22 2017 +0100

    Bug#25772348: CUSTOM ALLOCATORS DO NOT WORK WITH MOVE-ONLY TYPES
    
    Change the signature of the construct() functions in Malloc_allocator,
    Memroot_allocator and Stateless_allocator to match the C++11
    signature, so that they can be used with types that have deleted copy
    constructors, such as std::unique_ptr.
    
    Change-Id: I991567b47beb74741ded8fbf581c3af6a0713939

commit c5ec49a22647e2b70e0f48c5f3bd6cedcdbf2d77
Merge: 6cb254d 7aa168c
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Fri Mar 24 12:41:45 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 dacadd343a761e45d55e3ee09763ce4cd48d629a
Merge: f5fe407 6cb254d
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 24 09:48:19 2017 +0530

    Merge branch 'mysql-trunk' into mysql-trunk-wl5847

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

    reverted the loogging

commit 1905f2d9400a545b425e8e71c460cb45f07f1f0f
Merge: 947aa0e b2f2dbb
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 23 22:49:11 2017 +0100

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

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

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

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

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

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

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

commit 6cb254ddc8e7cc67d24b81de9cc5e2eca3c88d14
Merge: 1a0684b 0f887f9
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Mar 23 23:01:45 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 947aa0e36bfaf2dbe649fe19be8d29fbbdce7d38
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Mar 23 15:18:07 2017 +0100

    Bug#25741170 SPJ: DON'T ADD FLUSH_AI-PSEUDO_READS WHEN NOT NEEDED
    
    Follow up patch to fix a regression detected by ATR test
    ./testSpj -n NF_Join T6
    
    In case the SPJ results has to be sent by the routed TRANSID_AI_R
    signal the block ref for the 'route' destination refered the
    SPJ block instead of the TC block.
    
    It turns out that for scan type SPJ request LQHKEYCONF/REF
    is expected by the SPJ for the lookup-leaf treeNode. The
    LqhKeyReq::tcBlockref is set up to contain the SPJ block
    which such CONF/REF should be sent to.
    
    Unfortunately the same ::tcBlockref field is used in cases where
    a TRANSID_AI_R signal has to be used, which in these cases will
    refer a SPJ block.
    
    Thus we have to use the FLUSH_AI which contain its own 'routeRef'
    block in a SPJ scan-request.
    
    This patch fix the above issue and revert the part of the previous
    patch which set up scan requests for eliminating unneeded FLUSH_AI's
    
    This causes us to loose some important oportunities for sending
    packed 'short' TRANSID_AI signals. However, this is assumed to be
    regained by the upcomming patch for:
    
    bug 25750355 SEND SPJ RESULTS AS 'PACKED' TRANSID_AI WHERE APPLICABLE

commit c891dcd07b5e9a131b566d2efcd37aab13272179
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Mar 23 18:32:11 2017 +0530

    test

commit 1a0684b0405a7933eb660b62d36102c7c3f2e26c
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Mar 23 13:08:14 2017 +0100

    Bug #25732787: INSTALLED HEADER FILES INCLUDE NON-INSTALLED HEADER FILES
    
    Post-push fix: Remove the dependency on my_io.h.
    
    Change-Id: Ic250479286215114fe3557d52584595e1b617355

commit 42b25178e700a60df0a87a6c480799784ee136b7
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Mar 21 13:10:09 2017 +0100

    Bug #25732787: INSTALLED HEADER FILES INCLUDE NON-INSTALLED HEADER FILES
    
    Stop installing header files beyond those that are required for <mysql.h>
    to compile. <mysql.h> is the only entry point clients should use, and it
    should not include "my_config.h", shich pulls in a large amount of HAVE_*
    macros into the client's namespace.
    
    In the process, remove the my_init() call from the list of exported calls;
    it's not needed, as it's implicitly called by all the other init functions,
    and it's part of my_sys, which is internal-only.
    
    Also, remove F_TO_EOF, since it required an #ifdef and was unneeded.
    
    Change-Id: I4ce25e27e1e4e97995fe68eb220d1ade4db26301

commit 81a9aab7778533dc024beb6c4546e8df35d71310
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 21 12:25:18 2017 +0100

    Bug#25748049 MAIN.TYPE_BLOB FAILS ON 32BIT LINUX AND WINDOWS WITH UTF8MB4
    
    Problem:
    Create_field::length is sometimes number of bytes, sometimes number of characters.
    So with utf8mb4 we multiply by four, and divide by four in misc places.
    This is extra problematic when using four-byte ints for the calculation
    (size_t on 32bit platforms, long on windows)
    
    Fix: always do these calculations using eight-byte ints, and check for
    against MAX_FIELD_BLOBLENGTH (== UINT_MAX32)
    
    Turns out we had forgotten to divide by four for MYSQL_TYPE_JSON
    in Create_field::Create_field()

commit 3e60221c147b407ababbc9572b4cddf14b9e4862
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Mar 22 10:52:57 2017 +0100

    Bug#25721867 WINDOWS-AUTHENTICATION-PLUGIN.NON-ASCII FAILS WITH UTF8MB4
    
    Problem: Suppression pattern did not work.
    Fix: make the pattern more generic.

commit 07c26ec7e6d82f85fb66e282b4758ad1133323d1
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 21 09:18:17 2017 +0100

    Bug#25755153 DISABLE SYSLOG/EVENTLOG FOR HELP_VERBOSE.TEST
    
    The mtr test help_verbose may fail, permission denied when sending messages
    to the windows event log.
    
    Fix: use --log-syslog=0 when starting mysqld

commit f9ec35e7646fb69bbcad14a5847101529d06c7be
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Thu Mar 23 17:00:44 2017 +0800

    Bug #25702297  UBSAN: NULL POINTER PASSED AS ARGUMENT 2, WHICH IS DECLARED TO NEVER BE NULL
    
    The filter_rule can be set to empty by CRF command (eg.
    CHANGE REPLICATION FILTER REPLICATE_DO_DB= ()), in the
    case, m_row.filter_rule tries to copy a NULL pointer by
    m_row.filter_rule.copy(rpl_pfs_filter->get_filter_rule())
    at table_replication_applier_filters.cc:196, which cause
    that the reported problem when calling
    memmove(m_ptr, str_ptr, m_length) at sql_string.cc:252.
    
    To fix the problem, m_row.filter_rule does not copy
    filter_rule in rpl_pfs_filter any more if it is empty.

commit 1362b73bb65530dd1eeae94a2ae77dec6dec1f6e
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 20 09:19:32 2017 +0100

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Patch #20: Fix -Wunused-parameter warnings with various non-default
    build options such as without performance schema, with openssl,
    with innodb memcached, with ndb and without profiling.

commit 96637f676145f470e9e0b06c433b01d5220573aa
Merge: d6a892e aa8b481
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Thu Mar 23 09:01:46 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 d6a892e9095ba99d5a9ed45e7bbaa19323803c2d
Author: Andrei Elkin <andrei.elkin@oracle.com>
Date:   Wed Mar 22 18:58:11 2017 +0200

    Bug #25755137 post-push. Inadvertently dropped SET DEBUG_SYNC is restored in the test. Otherwise there would be chances for the test to fail. Approved by Joao \thanks for discussion and offering an alternative approach.

commit 7880781a706fb72814a5833e834fc66a4b4dcb17
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Mar 22 13:51:33 2017 +0100

    Bug #25764817: CLEAN UP THE UDF EXAMPLE
    
    Clean up the UDF example to remove some unneeded code and use of headers
    internal to MySQL.
    
    Change-Id: Ic7432fb139bd0f04660204eef50e5adc347f317d

commit 3872bbf943d21819f81cdd7695f927436b22361f
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 21 10:50:21 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#6
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: Iadd8c078916107a01ebb1eabec73096584f97b76

commit 82fbed68c97b6b50876b4ca28cafa7887c9ac657
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Mar 22 19:04:06 2017 +0530

    AD test..

commit ad18cf0c8a75dc5175645035a01044135fde7bd3
Author: Andrei Elkin <andrei.elkin@oracle.com>
Date:   Tue Mar 21 20:02:07 2017 +0200

    Bug #25755137 	MASTER IS GENERATING INCOMPLETE TRX ON BINARY LOG (MISSING COMMIT)
    
    The failure is about missed COMMIT Query-log-event which was caused
    on the master side by not sufficient cleanup after a failing
    atomic DDL. Before sensing the error, the DDL has been binlog-cached.
    Yet at both the following statement and session level rollback
      ```binlog_trx_cache_data::flags.with_xid```
    left unreset though it should have been.
    
    More to the session level the flag is effectively made
    defined on the STATEMENT one by WL9175.
    It was supposed that its reset is unavoidable when the SESSION scope
    ends with either rollback or commit. That stays for the commit.
    
    For the rollback the binlog caches have a cleanup procedure for
    statement rollback (restore_prev_position) and a cleanup procedure for
    transaction rollback (reset), where reset() is only called when the cache
    is empty. But they cache got emptied
    from the only statement by the statement level rollback.
    Therefore, reset() is missed in this case so the flag remains up.
    
    Fixed with unflaging ```binlog_trx_cache_data::flags.with_xid``` at
    the statement rollback in binlog hton in one step with the cache
    rollback for the statement.
    If the raised flag survives to the session commit its statement scope
    value is "upgraded" to the session level to serve its original
    session level semantics.

commit 5e9f625debbb6013ae109fc13cfb13942fd9922a
Merge: 8a15734 88aafc5
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Mar 22 18:13:29 2017 +0530

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

commit 88aafc503d40281940f4d74436f86bd4cbc5fcb4
Merge: f0e06cc d933980
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Mar 22 18:13:09 2017 +0530

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

commit d9339809a47ba8a249a46cf5af799a34f79c1260
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Mar 22 18:12:27 2017 +0530

    Bug #25476474 SIGNAL 11 AT HA_NDBCLUSTER::EXEC_BULK_UPDATE
    
    A bulk update is executed by reading records and executing a
    transaction on the set of records. The transaction is started
    while reading the set of records. In this case, the transaction
    start fails. The transaction execution code then attempts to
    dereference the NULL transaction pointer, which causes a segfault.
    
    The mysql update function does not exit on fatal errors. The
    approach is to save all errors, continue execution and evaluate
    success/failure after the execution completes. With this approach,
    it is not guaranteed that the necessary init work is successfully
    completed before calling the bulk update executor. So it is
    necessary to have more error-handling in the ndb bulk update
    executor.
    
    Fixed by adding some error-handling in the ndb bulk update
    executor.

commit 46f78cacf607e25c9011bf3f12923ab8a7383ab7
Merge: cb4b922 81f25f2
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Wed Mar 22 16:41:21 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 f5fe407a909a29dc85921d1686d21632f09c29d8
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Mar 22 15:19:35 2017 +0530

    Fixed OS.

commit 8a1573432c212afe44cde089dd15fb282e8347c2
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 22 10:39:35 2017 +0100

    Bug#25741170 SPJ: DON'T ADD FLUSH_AI-PSEUDO_READS WHEN NOT NEEDED
    
    FLUSH_AI's were added to the attrInfo sent from SPJ to TUP when
    not really needed.
    
    This patch removes these FLUSH'es for Leaf-treeNodes sent
    from SPJ.
    
    As an side effect this also enables the usage of PACKED TRANSID_AI
    when delivering result from TUP to SPJ-API. As this also required
    some changes to the SPJ-API receiver code, elimination of the FLUSH_AI's
    needed some additional version check logic.

commit bcf75015807f7ed21c58b946c3e28effce40fa88
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Mar 22 14:59:35 2017 +0530

    Fixed the test.

commit bc76c9aa97919ae3c6b7f596d3810b7ec7b5a863
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Mar 22 14:36:07 2017 +0530

    Fixed

commit cb4b9220a8736aca8e0c26948df957b3944bf7f7
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 22 09:54:18 2017 +0100

    Change performance schema defaults.
    
    WL#9625 Enable PFS memory instrumentation by default
    
    WL#9628 Enable PFS transaction instrumentation by Default
    
    WL#9629 Enable PFS MDL instrumentation by Default

commit fce4a395c81b8ae23f97def8ce2f0b3f85dfc194
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 22 09:39:28 2017 +0100

    Bug#25740805 TUP-BLOCK SEND 'SHORT'-TRANSID_AI SIGNALS WHERE 'LONG' IS SUPPORTED.
    
    Change TUP code to send 'long' TRANSID_AI signals instead if a 'train'
    of short signals to blocks supporting such long signals.
    
    This has been supported for long, but not taken advantage of
    for DBTC, BACKUP, SUMA and DBLQH.

commit 412e60c30264bcb7ef1d4b0458d0e751b27664e1
Merge: 0cc1a85 f0e06cc
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 22 09:21:00 2017 +0100

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

commit f0e06cc2bc975ca5be084be9c307803e1da53cd4
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Wed Mar 22 09:19:31 2017 +0100

    Bug#25654833 MYSQL CLUSTER 7.5.5 REPLICATION SLAVE SQL THREAD HANGS WITH CREATE TABLE
    
    This is 'best effort' patch for the above problem, which seems to be a regression introduced in 7.5.5. Based on bug description, we *assume* this to be caused bu the 'part 3 of 4' push of patch for Bug#25042101 'SPLIT BINLOG INJECTOR_MUTEX IN TWO, DO REQUIRED CLEANUP':
    
    .........
      Remove thread_yield() in binlog injector code previously put there
      as a temp stopgap in the commit below. This used to be required
      as the injector thread held the injector_mutex > 99% of the time when
      waiting for pollEvents(). That blocked client threads either wanting to
      access the data shared from the injector thread, or needing the injector_mutex
      while waiting for injector_cond to be signaled
    
      This should not be required anymore, as:
    
      1) injector_mutex has been splitt in two separate mutexes.
      2) We changed init of the injector_event_mutex from a 'FAST' to a 'SLOW'
         mutex which has better 'farness' properties in the scheduler
    .........
    
    The theory is that using the more 'fair' SLOW-mutex variant is not as 'fair' as assumed to be on all OS/VM variants. Thus the 'yields' may be unsafe to remove.
    
    Bug has been hard to reproduce:
    
     - It has been 'randomly' reproduced using Oracle Linux 7 on top
       of 'Virtualbox'
     - It has than gone away for a couple of days.
     - It has *not* been reporoduced with this patch.
    
    So it should be reasonable to expect that reintroducing the 'thread_yields' should solve the problem.
    
    We cant say for sure though....

commit 8d5ede17ec4698b27966fa5ed3ec98b51c46a9e5
Merge: d4447d0 2a79df2
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Wed Mar 22 12:32:45 2017 +0530

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

commit 535eed208d685369a285effccd73aecd186f0410
Merge: 7f2ebd2 3c55332
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 22 11:25:48 2017 +0530

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

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 7f2ebd2206408296256788721246858ef269fe74
Merge: 8589077 66a717d
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Wed Mar 22 09:36:47 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 85890774bc134643ab62e40ccb2dfd88c92c0636
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Feb 23 14:12:31 2017 +0100

    Bug #25604230: DO NOT INCLUDE MY_INTTYPES.H FROM MYSQL.H
    
    Sever all ties from mysql.h to my_inttypes.h.
    
    Change-Id: I732cdbca6269bdeef7d6c4ac28ae60ef5821ed21

commit bb9dbf085226711707f2d6446254d93bc9fe769d
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Mar 21 16:50:20 2017 +0100

    WL#9721 Remove libmysqld embedded server in 8.0
    
    Test suite cleanup, main.

commit bc952b9b1bc398f8529a175cd93c606a639b7f3c
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Mar 21 15:28:07 2017 +0100

    Bug#25731075: INCOMPATIBLE POINTER TYPES WARNING WHEN BUILDING XCOM
    
    Follow-up fix: Remove the cmake check for X_GETPOSTN_NOT_USE_CONST
    as the result is no longer needed. In any case the CMake check
    was buggy as the result could be different on Debug/Release build
    due to -Werror (e.g. on EL7).

commit cd6bca0d3bb13b962df5131bdaaa6832e5652d61
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Mar 21 19:16:10 2017 +0530

    BUG#23574853 : MYSQLTEST COMPLAINS OF MERGE MISMATCH WARNINGS IN GCOV
    
    Post push fix, fixed test failures on GCOV platform.
    
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>

commit da32e856a7ef150f7de6286865d1aad336d969c9
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Mar 16 09:55:57 2017 +0100

    Bug#25731075: INCOMPATIBLE POINTER TYPES WARNING WHEN BUILDING XCOM
    
    Fix the following build warning due to const differences:
    rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/xcom_transpo
    rt.c:561:18: warning:
          incompatible pointer types assigning to 'u_int (*)(const XDR *)' (aka
    'unsigned int
          (*)(const struct XDR *)') from 'u_int (XDR *)' (aka 'unsigned int
    (struct XDR *)')
          [-Wincompatible-pointer-types]
      ops.x_getpostn = x_getpostn;
                     ^ ~~~~~~~~~~
    
    Also remove the unneccessary HAVE___CONST ifdef/cmake check.

commit ebbbb5b4b29092bdb51954209d8bf809361ec204
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Mar 21 13:58:35 2017 +0100

    WL#9721 Remove libmysqld embedded server in 8.0
    
    Test suite cleanup, sys_vars.

commit dcc0641538ce9910283775198ab2dda2f3a8c8f3
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Mar 21 13:30:30 2017 +0100

    WL#9721 Remove libmysqld embedded server in 8.0
    
    Test suite cleanup for perfschema, sysschema.

commit 8165e6558594c0222b640a9b28bc9e0341ba17ec
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Tue Mar 21 12:38:05 2017 +0100

    WL#8963: Support for partial update of JSON in the optimizer
    WL#9192: Add JSON_STORAGE_SIZE / JSON_STORAGE_FREE functions
    
    This commit introduces infrastructure in the optimizer to help the
    storage engines perform partial update of JSON values more
    efficiently. Partial update can be performed for UPDATE statements
    such as
    
      UPDATE t SET json_col = JSON_SET(json_col, '$.path', 'abc')
    
    or
    
      UPDATE t SET json_col = JSON_REPLACE(json_col, '$.path', 'xyz')
    
    if the new value can be added to the JSON document by overwriting the
    old value at the modified path. This is possible if the new value does
    not require more storage space than the value that is replaced, or if
    there is sufficiently unused spaced around the replaced value to add
    the new value without increasing the size of the JSON document.
    
    When partial update is possible, a list of differences between the
    original document and the updated document is made available to the
    storage engine, so that it can write only the few bytes that actually
    changed, instead of rewriting the entire document, thereby reducing
    the amount of I/O.
    
    No storage engine takes advantage of this information for now.

commit 84ce9e8ebef1037ba511e6d9c5139d76d1d43aa9
Merge: 298d9b2 77febd3
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Mar 21 15:17:56 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 298d9b21dfa88c0d9d719d70ae93f90b5c1675ff
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Mar 21 14:45:26 2017 +0530

    BUG#25487471 : MYSQLTEST FAILS TO ESCAPE FILENAMES
    
    Post push fix, fixed innodb_gis.0 and innodb_gis.1 test failures.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>

commit bd7305fcf7397b32f9779a5c9b94f7d69285038d
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Mar 16 17:09:37 2017 +0100

    Bug#25739702 ENABLE UBSAN ON 32BIT PLATFORMS
    
    Increase DEFAULT_THREAD_STACK for 32bit UBSAN builds.
    Also: fix my_convert() which did unaligned read/write.
    Also: fix signed integer overflow in TIME_to_gmt_sec() and
          Time_zone_offset::TIME_to_gmt_sec()

commit 85bcdb9179397e74d196df55598d0068ab89bf6b
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Mon Mar 20 14:41:01 2017 +0100

    Bug#25750150: IMPLICIT FALLTHROUGH WARNINGS IN JSON_DOM.CC
    
    GCC 7 warns about implicit fallthrough in a switch statement in
    json_dom.cc. The code in question is not intended to fall through.
    
    Fix: Move break statements so that they break out of the outer switch
    statement instead of breaking out of the inner switch statement only.
    
    Change-Id: I606757e820a3afff9f25dfd92aa4ef6ce75f816f

commit 25f3cb2f0621a758f7f498b4cec0a2f5e4e75dfc
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Mar 21 12:34:33 2017 +0530

    BUG#22913850 : MTR DOC : ADD A NEW OPTION TO RUN A TEST ON A NEWLY INITIALIZED DATABASE IN MTR
    
    Updated the MTR documentation for '--force'restart' MTR option.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15773

commit 4887a64fc242a2f728d0a428673f9b7b9cb4b64d
Merge: 4d9f630 03a4c9c
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Tue Mar 21 12:00:44 2017 +0530

    Null-merge from 5.7.

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 4d9f630ea4208838b58b241a7ec45382a9a6463a
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Tue Mar 21 10:55:06 2017 +0530

    BUG#25487471 : MYSQLTEST FAILS TO ESCAPE FILENAMES
    
    Issue:
    ======
    Currently MTR or mysqltest client doesn't check for invalid/not
    allowed  characters in a test or result file name. This might cause
    some problems.  For example, a test file named ';cd;touch bobby;.test'
    will create a file '~/bobby'
    
    Fix:
    ====
    Test case or the result file names should consist of only alphanumeric
    characters (A-Z, a-z, 0-9), dash ('-') or underscore ('_'), but should
    not start with dash or underscore.
    
    Check if a file name conatins any other special characters. If yes,
    throw an error and abort the test run.
    
    Reviewed-by: Bjorn Munch <bjorn.munch@oracle.com>
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15485

commit fe1f5cc2562f1d4dad60b6a98c801205e9356154
Merge: ce16567 e2f0fa9
Author: Aakanksha Verma <aakanksha.verma@oracle.com>
Date:   Tue Mar 21 10:35:46 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ce1656762c6483614b85263ee749af0cf155c8f6
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 10 15:57:38 2017 +0100

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Move acquire() calls higher in call hierarchy to reduce
    number of acquire() calls. Pass const dd object references or
    pointers instead of object name strings.
    
    Part 4: Start doing this for tables.

commit 788371405fc0198ce0ee60ba60b049e7c2b0248b
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Mon Mar 20 13:55:15 2017 +0100

    Bug#25713194 MYSQL 8.0.1 - SKIP-GRANT-TABLES IS ENABLED BY DEFAULT DURING LI
    
    During upgrade the server went into a maintenance mode which
    ignored all privileges because one of the required privilege
    tables was missing. With this patch the missing table is treated as
    empty. A subset of the privileges will still be enforced and
    default behavior will be to deny access rather than grant it.

commit eae1b1b0eb7d222d479b8c0534abba20b3696116
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Mon Mar 20 11:12:05 2017 +0100

    Bug#25713194 MYSQL 8.0.1 - SKIP-GRANT-TABLES IS ENABLED BY DEFAULT DURING LI
    
    During upgrade the server went into a maintenance mode which
    ignored all privileges because one of the required privilege
    tables was missing. With this patch the missing table is treated as
    empty. A subset of the privileges will still be enforced and
    default behavior will be to deny access rather than grant it.

commit 630adffa6020fd33a20be471880fbbf1ad318b30
Merge: de65660 5ceeb32
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Mon Mar 20 14:25:59 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk
    
    Conflicts:
    	rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/site_def.h

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 2b16dc8b5fd9e90362815ca9df7fa105889a69d0
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 e8da6816611dbedb7fac73e90768fff6b79bc17a
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 a0e9ede56fa4970813f61eca6ead81cc187b8c66
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 63b83d5970bfb11137c2813cb8be0fc8edbbbd05
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon Mar 20 08:58:24 2017 +0100

    Packaging: Added new manpage
    
    A new manpage was added for ndb_print_frag_file. Added to deb and rpm packaging
    
    (cherry picked from commit d353d67970280ad8fd44f41aa5412014267c0d39)

commit 0cc1a85fd0c37323d599b99930b30684a67f9ac7
Merge: 8734564 d353d67
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon Mar 20 09:08:34 2017 +0100

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

commit d353d67970280ad8fd44f41aa5412014267c0d39
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Mon Mar 20 08:58:24 2017 +0100

    Packaging: Added new manpage
    
    A new manpage was added for ndb_print_frag_file. Added to deb and rpm packaging

commit de656602e65b560ccc9d2fe44713935a7ea11e1d
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Mon Mar 20 12:29:39 2017 +0530

    BUG#23574853 : MYSQLTEST COMPLAINS OF MERGE MISMATCH WARNINGS IN GCOV
    
    Issue:
    ======
    Few tests fail on GCOV platform in PB2 with merge mismatch warning.
    
    Fix:
    ====
    Filter the additional warning messages generated on GCOV platform.
    
    Reviewed-by: Srikanth B R <srikanth.b.r@oracle.com>

commit db9fd77ed571ad16112b4a827b057817915f1cda
Merge: b29b029 29edf3f
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon Mar 20 08:36:15 2017 +0530

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

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 b29b0298bea2fb21e261619c6fe330c25938ab6c
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Mon Mar 20 02:21:58 2017 +0100

    Revert "Bug#25713194 MYSQL 8.0.1 - SKIP-GRANT-TABLES IS ENABLED BY DEFAULT DURING LIVE UPGRADE"
    
    This reverts commit 11b41144b5f11c56d37ab9dd44ae16ee1bfa048b.

commit 2a9f43ce35561abfbc7a57944a28a21b1e5755b5
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Sun Mar 19 11:22:09 2017 +0100

    Bug#25673668: MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4
    
    Post-push fix: Update .result file for main.ps_1general_ci

commit ab2bcd9bf23aa6c0f88c30bad6fd210f8ffb4115
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Sun Mar 19 11:05:28 2017 +0100

    Fix broken doxygen

commit 8734564fe5c8e48f84636e9defe41b8bad944067
Merge: a63a7b5 c9f9603
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Sat Mar 18 18:43:27 2017 -0700

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

commit c9f9603c46bd8d6749628a6fd29f07802fb8f893
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Sat Mar 18 18:43:15 2017 -0700

    Clusterj use unique ids for AutoCloseableTest

commit e7538fef128608af3f50b4153f4b6d947d3b93a3
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 b223ee0c84faaa8cf71954964edf130d36c96d3c
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 5c727ebf55f31f3bbe4f9e5ccaa3e8851841eec9
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 c1234acec062ade7e0f16e060f9fafd9d56b8467
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 1f550402ae36771f89b3cf0296534f1eac1d06d3
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 d2a8f95fbc6e6d623adb689a6899fa1aa842ba67
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Mar 8 14:38:15 2017 +0530

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

commit 12ff08a8d960caf3d803013b400573f1300b9ff4
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 16 15:00:09 2017 +0100

    Bug #25738510: CLUSTERJ FAILS AFTER SWITCH TO ORACLE DEVELOPER STUDIO
    ON SOLARIS PLATFORMS
    
    Explicitly link libndbclient.so with C++ libraries on Solaris.
    
    CMAKE_CXX_LINK_FLAGS will contain '-lstdc++ -lgcc_s -lCrunG3 -lc'
    if needed.
    
    (cherry picked from commit 4cacfb778f67bbe6b69c4d08c940e52ffd0470cb)

commit 796cb2ab7e834be931646309b8f14a05011a8a89
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Mar 15 23:36:07 2017 +0100

    Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
    MEMCACHED BUILD PROBLEMS
    
    Make RPATH and RUNPATH remain when installing ndb_engine.so
    
    Unused path to libraries pointing into source directories made CMake add
    RPATH and RUNPATH during build and triggered RPATH_REMOVE on install.
    
    (cherry picked from commit 1432af93388b5c8aea0c85fb148b8d16a1d6a5d9)

commit 7659be74357291f9d4279681c89afb1f2aad23e6
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Mar 9 15:21:19 2017 +0530

    Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
    MEMCACHED BUILD PROBLEMS
    
    Replace the -lCrun flag in the linking command for ndb_engine.so.
    No explicit reference to libCrun is required
    
    (cherry picked from commit a9edb5227c816bc80de64259d847556fa630db07)

commit f9ef1f9f324434c5212e34df471d9c892dd5d474
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 9 23:50:16 2017 +0100

    Bug#25695818 DATA NODE BUS ERROR IF BUILT WITH ORACLE DEVELOPER STUDIO 12.5 ON SOLARIS SPARC
    
    Make m_versionInfo aligned to 8 byte boundary within GlobalData.
    
    By that the compiler bug is avoided, at least in code path accessing
    m_versionInfo.
    
    (cherry picked from commit 0d7c08b88341d24518d98b33fd8cf64b6a3daf45)

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 a63a7b530842d0fe4db7ccd65209412e5d80e0a8
Merge: 9de5574 d364ec0
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 22:33:53 2017 -0700

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

commit d364ec0bcaa1886ef4cae58fddff66d4308c09fa
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 22:33:41 2017 -0700

    Disable clusterj ReconnectTest

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

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

commit 9de5574c1554852455c38860e7236eda2ae4693b
Merge: cb390d0 e2ba927
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 19:59:28 2017 -0700

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

commit e2ba9271a2b9525dba2f6d8e8195ef907e71ba70
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 19:59:17 2017 -0700

    Disable clusterj ReconnectTest

commit cb390d0133570e51de21eb47d3c4700a2bfc496a
Merge: 4d89a49 3d0a6e5
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 18:09:24 2017 -0700

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

commit 3d0a6e5103a371acaee3140bc10cc5d2a316aad1
Author: Craig L Russell <craig.russell@oracle.com>
Date:   Fri Mar 17 18:08:41 2017 -0700

    WL#9545 Clusterj automatic reconnect on cluster failure
    
    clusterj-api/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-api/src/main/java/com/mysql/clusterj/Constants.java
      add property com.mysql.clusterj.connection.reconnect.timeout
      add default for com.mysql.clusterj.connection.reconnect.timeout
    
    clusterj-api/src/main/java/com/mysql/clusterj/Session.java
      make Session extend AutoCloseable for easier application error handling
    
    clusterj-api/src/main/java/com/mysql/clusterj/SessionFactory.java
      add method reconnect(int) to allow application to reconnect
      add method reconnect() to allow automatic reconnect
      add method currentState() to report state: Open, Closed, Reconnecting
    
    clusterj-core/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/SessionFactoryImpl.java
      implement new methods from SessionFactory
      add internal flag to getSession to allow reconnect to get a session when not open
      implement reconnect thread to asynchronously reconnect to cluster
        while reconnecting, getSession will throw a ClusterJUserException
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/SessionImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/query/QueryImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-core/src/main/java/com/mysql/clusterj/core/store/Db.java
      add method assertNotClosed(String)
    
    clusterj-core/src/main/resources/com/mysql/clusterj/core/Bundle.properties
      add new messages for reconnection
    
    clusterj-test/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-test/src/main/java/testsuite/clusterj/AutoCloseableTest.java
      new test case for Session AutoCloseable semantics
    
    clusterj-test/src/main/java/testsuite/clusterj/ReconnectTest.java
      new test case for application-initiated reconnect
    
    clusterj-tie/pom.xml.in
      change Java version from 1.5 to 1.7
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/ClusterConnectionImpl.java
      add a wait for Ndb objects to close after marking them closing
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/ClusterTransactionImpl.java
      use new assertNotClosed method
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/DbImpl.java
      implement new assertNotClosed method
      allow closing an ndb object even if a transaction is open
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/DbImplForNdbRecord.java
      implement new assertNotClosed method
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/NdbRecordImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/NdbRecordScanOperationImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-tie/src/main/java/com/mysql/clusterj/tie/NdbRecordScanResultDataImpl.java
      add multiple checks for session closing to fail fast on cluster disconnect
    
    clusterj-tie/src/main/resources/com/mysql/clusterj/tie/Bundle.properties
      add new messages
    clusterj-tie/src/test/resources/clusterj.properties
      add new default property connect timeout for running tests
    
    clusterj-tie/src/test/java/testsuite/clusterj/tie/AutoCloseableTest.java
      new test case for AutoCloseable
    
    clusterj-tie/src/test/java/testsuite/clusterj/tie/ReconnectTest.java
      new test case for application reconnect
    
    clusterj-unit/pom.xml.in
      change Java version from 1.5 to 1.7
    
    storage/ndb/config/type_JAVA.cmake
      change Java version from 1.5 to 1.7

commit 179afa9725666fc080dda05bb62b15125e31df79
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Mar 17 15:12:29 2017 +0100

    Bug #25740550: DISTINCT OPERATIONS ON TEMP TABLES ALLOCATE TOO LITTLE MEMORY FOR SORT KEYS
    
    remove_dup_with_hash_index(), which is used for DISTINCT of temp tables in
    certain cases, assumes that the sort key of all fields is smaller than or
    equal to the record's length in memory. (It also forgets to send
    sort_length() through strnxfrmlen.) This is obviously not correct for UCA
    collations. Fix by allocating the correct length instead of unconditionally
    assuming the length of the record is fine, which also saves memory if it really
    _is_ shorter.
    
    Change-Id: Icaa4975994f0e546c9fa79fed5ac71f201dbadf2

commit b699926883340e252ebeca2cee928455def6515b
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Mar 16 15:20:01 2017 +0100

    Bug #25733784: NUM_TMP_FILES IN FILESORT OPTIMIZER TRACE IS NONSENSICAL
    
    num_tmp_files in optimizer trace for filesort is a pretty meaningless number;
    it holds the number of chunks left after the final disk merge pass, so it's
    always between 1 and 15 (MERGEBUFF2). This isn't a very good indication of
    how much disk activity it is (and they're all really in one file, so “files”
    is wrong).
    
    Rename the parameter to “num_initial_chunks_spilled_to_disk”, and make it
    contain the actual number of chunks _before_ any merging has happened.
    
    Change-Id: I07cb2cb39a41a15356e6e771eb50da25471d5b41

commit 4d89a4942ba5af50886587ff1db430f842c21f7f
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Mar 17 15:34:12 2017 +0100

    Followup patch to bug#25702850
    
    Incorrect resolution of merge conflict caused build break.

commit 8aecddb076e47a2b4c89831197c83957955a7f5e
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Wed Mar 15 17:05:48 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#5
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: Icbd1eed17cab90e8563462620befd7cdeac57bed

commit 65795fc32f1f80a60db95f107b3b8465c2381f21
Merge: 4780d11 897a2ed
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Mar 17 15:13:17 2017 +0100

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

commit 897a2ede8489133f71cb1d3f14966f6c1e79bd0a
Merge: 4cacfb7 fd86928
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Mar 17 15:10:55 2017 +0100

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

commit fd86928389a7c2360e9b84a44883e88cb3407461
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Mar 17 15:02:48 2017 +0100

    Bug #25702850 TOO LARGE RESULT SIZE REPORTED FROM TUP-BLOCK TO LQH
    
    The pseudo_read instruction FLUSH_AI attrInfo is used to
    produce two TRANSID_AI result rows from the same row: One
    going to the SPJ block with keys for fuether lookups, and the
    other to the API containing the result row. The total length
    of both of these rows were reported in the TUPKEYCONF signal
    from TUP -> LQH. This could cause LQH to prematurely terminate
    scan batches as it believed that the total number of
    ScanBatch 'bytes' was about to be exhausted.
    
    This patch change this such that only the result row going to the
    API is reported as part of the 'read_length' being reported.

commit 7c67c7dcdee747e94ab5a6ae730ef4cb2f61ec4d
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri Mar 17 19:15:21 2017 +0530

    BUG#23210891 : MTR DOC: OUTDATED INFORMATION IN THE MYSQL-TEST-RUN DOCUMENTATION
    
    Issue:
    ======
    In MTR documentation, the location of '.reject' file mentioned is
    not correct.
    
    Fix:
    ====
    Updated the documentation with correct location of '.reject' file.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com>
    RB: 15591

commit 2a79df23fe534b55f48a51a218797556f5dbe222
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 17 18:47:48 2017 +0530

    Fix build issues, forest etc.

commit 2cd193e304434cf4bc3db1d33d1556cfef970017
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Mar 16 13:40:09 2017 +0100

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Patch #19: Fix -Wunused-parameter warnings in release build.

commit f35f220b06cb044af1db80d96ee9cd7583d4ab02
Merge: f59a88b 31f0274
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 13:28:03 2017 +0100

    Null merge from mysql-5.7

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 f59a88b3b9ebdbc1792dcfcc95cbad2bcd9edc70
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 10 12:55:20 2017 +0100

    WL#10344: Remove disabling of strict aliasing optimization (GCC)
    
    This patch re-enables the strict aliasing optimization when building
    the server with GCC or Clang. Sysbench tests have shown a 0-4%
    performance increase - especially for single-threaded tests.
    
    -fno-strict-aliasing is still used when building NDB or
    InnoDB memcached.
    
    The patch also fixes a few recently introduced strict-aliasing
    build warnings in mysqlpump.

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 4cca6177866559ed1f631703b977bdc537e2385a
Author: Oystein Grovlen <oystein.grovlen@oracle.com>
Date:   Fri Mar 17 12:11:29 2017 +0100

    Bug#25738752 MAIN.OPT_COSTMODEL_TABLES FAILING ON DAILY TRUNK
    
    main.greedy_search modifies engine_cost table, without resetting it
    correctly at the end of the test.  That will affect subsequent tests
    that access this table.
    
    Fix: greedy_search.test now properly revert changes to engine_cost table.

commit 89eefa423dce568aa05cbf18d9639310f1df29f8
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 12:26:20 2017 +0100

    Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY
    
    Post push fix. Recording main.mysqldump result file.

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 44ac05f1b9874aedd9415a935e12549585bc63e3
Author: Dhruthi K V <dhruthi.k.v@oracle.com>
Date:   Fri Mar 17 16:19:13 2017 +0530

    Bug#25739219 GR_START_REPLICATION_AUTO_WITH_SUPER_READ_ONLY IS FAILING ON DAILY-TRUNK
    
    gr_start_replication_auto_with_super_read_only failing on non-debug builds.
    Failure seems to be due to clean-up issue of some other test.
    
    Fix:
    Force restarting the server before the test.

commit 4780d11cfda4278c59f812a7cfeeb2a5d352dce2
Merge: 48b5f4c 4cacfb7
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Mar 17 15:17:33 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Bug #25738510: CLUSTERJ FAILS AFTER SWITCH TO ORACLE DEVELOPER STUDIO
     ON SOLARIS PLATFORMS)

commit 4cacfb778f67bbe6b69c4d08c940e52ffd0470cb
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 16 15:00:09 2017 +0100

    Bug #25738510: CLUSTERJ FAILS AFTER SWITCH TO ORACLE DEVELOPER STUDIO
    ON SOLARIS PLATFORMS
    
    Explicitly link libndbclient.so with C++ libraries on Solaris.
    
    CMAKE_CXX_LINK_FLAGS will contain '-lstdc++ -lgcc_s -lCrunG3 -lc'
    if needed.

commit 11b41144b5f11c56d37ab9dd44ae16ee1bfa048b
Author: Kristofer Pettersson <kristofer.pettersson@oracle.com>
Date:   Fri Mar 17 10:44:02 2017 +0100

    Bug#25713194 MYSQL 8.0.1 - SKIP-GRANT-TABLES IS ENABLED BY DEFAULT DURING LIVE UPGRADE
    
    During upgrade the server went into a maintenance mode which
    ignored all privileges because one of the required privilege
    tables was missing. With this patch the missing table is treated as
    empty. A subset of the privileges will still be enforced and
    default behavior will be to deny access rather than grant it.

commit d151a8e30ddb5935b4d7c3078a1bd0de3b0b7011
Merge: 8633db2 f1e6ace
Author: Bharathy Satish <bharathy.x.satish@oracle.com>
Date:   Fri Mar 17 10:03:21 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

commit 8633db2819c20e6799b6957ee04829951d513c18
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Mar 16 17:28:26 2017 +0100

    WL#6599: New Data Dictionary and I_S integration
    
    Follow-up patch: Remove more dead I_S code. Also clean
    up some flag usage in sql_base.

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 81e589ec8166e525ed3b8b4e3496d7231a58c73a
Author: Havard Dybvik <havard.dybvik@oracle.com>
Date:   Wed Mar 15 10:47:29 2017 +0100

    Bug#23209903: ASSERTION: SELECT_LEX->LEAF_TABLE_COUNT == 0 || THD->LEX->IS_QUERY_TABLES_LOCKED
    
    Problem: The explain function for single-table modifications by UPDATE and
    DELETE statements would attempt to optimize all subqueries in a query. But if a
    query is empty (the outermost query block is determined to return no rows), none
    of its referenced tables will be locked between the preparation and optimization
    phases as the subqueries are not to be executed. Optimizing subqueries in an
    empty query will therefore cause an assertion in JOIN::optimize() to fail.
    
    Fix: Explain for single-table modifications will only optimize and explain
    subqueries in non-empty queries.

commit 8dcc5c02881ba36efcfb0efc9d1b5ce0de54616b
Merge: 3c5f05c bcc8548
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Fri Mar 17 11:25:56 2017 +0530

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

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 3c5f05c1ce32c2cd95ada2cbf6782da087cc4c55
Merge: 22440d1 5b14c8e
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Thu Mar 16 19:44:51 2017 +0000

    Merge branch 'mysql-5.7' into mysql-trunk

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 48b5f4c0b32cefea8dc7ab5d8cd3a0ec6cc4a3bb
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Thu Mar 16 15:33:38 2017 +0100

    WL#10449
    Add disk free functionality for homedir on local/remote host.
    
    Accidental problem found with MCC when while opening console on
    remote host an error is thrown (i.e. for me it was non-existent path in
    .bashrc RE left there). Now code skips the error output in remote
    console, if any, by taking entire output and looking for last line and
    not 2nd. As a part of this, the check whether we're on Windows is
    changed. Previously, we were issuing '#' to console knowing bash will
    not complain while Windows CMD will. Now, we issue 'uname' (with same
    failure logic) being that we need output of uname, when on *nix, anyway.
    
    Dojo widgets constraints enlarged:
    For Max. number of CPUs now 5000 (was 100)
    For Max. RAM now 90 TB (was 1 TB).
    This is no big deal but looks better without red exclamation marks.

commit a308f7b5ed899c6288be01442e6e55633ba4e66b
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Tue Mar 14 13:08:36 2017 +0100

    Bug#25700242: TABLESPACES SHOULD BE SUPPORTED BY OTHER ENGINES THAN INNODB
    
    Creating tablespaces with NDB would trigger assert in debug mode.
    
    Offending asserts removed, and checking of the sdi-callback added.
    Also changed an invariant in Tablespace_impl::validate() which did not
    hold for NDB tablespaces which are allowed to have zero data files.
    
    (cherry picked from commit 93f6c6ab31086747ca8e467aa739ed91bf70fb2a)

commit 22440d17a4c02ff4855cdb703cc0de1e1242932b
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Thu Mar 16 11:16:08 2017 +0100

    Bug #25688673: REMOVE SPECIAL-CASING OF NON-STRNXFRM-BASED COLLATIONS
    
    Post-push fix to fix some misordering of strings that have the same
    weights but differing input lengths.
    
    Change-Id: I7e69d4db1a53f1541739824a70e89939a6e497d4

commit 93f6c6ab31086747ca8e467aa739ed91bf70fb2a
Author: Dyre Tjeldvoll <Dyre.Tjeldvoll@oracle.com>
Date:   Tue Mar 14 13:08:36 2017 +0100

    Bug#25700242: TABLESPACES SHOULD BE SUPPORTED BY OTHER ENGINES THAN INNODB
    
    Creating tablespaces with NDB would trigger assert in debug mode.
    
    Offending asserts removed, and checking of the sdi-callback added.
    Also changed an invariant in Tablespace_impl::validate() which did not
    hold for NDB tablespaces which are allowed to have zero data files.

commit ea12e2fff4608da09f72a6afa28a8d75c3be1cff
Merge: d1fe0bb 6a7668b1
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Thu Mar 16 10:28:21 2017 +0100

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

commit 6a7668b1f27df41c5e36cf244b7735b0e932963c
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Thu Mar 16 10:08:12 2017 +0100

    Bug#25726723 - REMOVE UNNECESSARY REPORTING OF EVENT BUFFER STATUS
    
    This patch :
    - Corrects the calculation of free percent of event buffer to base on the configured eventbuffer_max_alloc size instead of total_alloc size.
    
    - When ndb_eventbuffer_free_percent is configured but not eventbuffer_max_alloc (defaulting to 0 meaning unlimited), Event Buffer Status message in cluster log with report_reason=LOW/ENOUGH_FREE_EVENTBUFFER will NOT be written out.
    
    - When ndb_report_thresh_binlog_epoch_slip is configured,  Event Buffer Status message in cluster log with report_reason=BUFFERED_EPOCHS_OVER_THRESHOLD will be written out every 10 sec instead of 1, when slip > threshold.

commit c39cd4b6ced9e4550c2696f7f7b256827ae5d094
Author: Praveenkumar Hulakund <praveenkumar.hulakund@oracle.com>
Date:   Thu Mar 16 10:26:33 2017 +0100

    Bug#25693843 - client->acquire_uncached_uncommitted faied with "server shutdown in progress"
    
    When operations on Data-Dictionary tables is in progress then
    thread is set to kill immune mode. Any kill operation on the
    thread in this mode is saved and set to THD::killed while
    exiting kill immune mode.
    
    During server shutdown, active threads are force stopped by
    setting THD::killed to THD::KILL_CONNECTION state directly.
    This breaks kill immune mode of a thread operating on a
    Data-Dictionary tables. Hence Data-Dictionary API calls failed.
    
    To fix the issue, now saving kill operation in THD::kill_immunizer
    during force stop too. While exiting from the kill immune mode
    saved state is set to THD::killed and active_vio is shutdown in
    THD::awake(). Threads in non-kill immune mode are handled as
    before.
    
    Testing for this patch is done using n-test.

commit d1fe0bb841d4336ed82faa0e71daa54ddf02b582
Merge: 67e246d 1432af9
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Mar 16 14:26:52 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
     MEMCACHED BUILD PROBLEMS)

commit b4763bd2502723020555f7e7832c4d837fa508fc
Merge: a44b7d0 18b373a
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Thu Mar 16 08:33:25 2017 +0000

    Merge branch 'mysql-5.7' into mysql-trunk

commit 1432af93388b5c8aea0c85fb148b8d16a1d6a5d9
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Mar 15 23:36:07 2017 +0100

    Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
    MEMCACHED BUILD PROBLEMS
    
    Make RPATH and RUNPATH remain when installing ndb_engine.so
    
    Unused path to libraries pointing into source directories made CMake add
    RPATH and RUNPATH during build and triggered RPATH_REMOVE on install.

commit 18b373a75391807d765f99a9b07191975403cd09
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Tue Feb 21 10:08:25 2017 +0000

    BUG#25587390 RPL.RPL_XA_SURVIVE_DISCONNECT_LSU_OFF TEST FAILING ON
                 DAILY-5.7 ON PB2
    
    The test case is failing by chance, when the random seeds generate
    values equal to zero for two test case variables.
    
    The fix ensures that the variables will never be zero.

commit a9edb5227c816bc80de64259d847556fa630db07
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Mar 9 15:21:19 2017 +0530

    Bug #25730703: SWITCH TO ORACLE DEVELOPER STUDIO ON SOLARIS CAUSED
    MEMCACHED BUILD PROBLEMS
    
    Replace the -lCrun flag in the linking command for ndb_engine.so.
    No explicit reference to libCrun is required

commit a44b7d0b813d9a627565147541699e907fb92b96
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Mar 15 18:05:46 2017 +0100

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Post-push fix: Fix doxygen

commit af6eda90a9e2ba3c158ae6862e55c3e85f58cf23
Merge: 4aa589e 52b30b1
Author: Joao Gramacho <joao.gramacho@oracle.com>
Date:   Wed Mar 15 17:01:15 2017 +0000

    Merge branch 'mysql-5.7' into mysql-trunk

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 4aa589ed228223d419db4cc435ed1c1032ff1280
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Mar 14 15:39:52 2017 +0100

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Patch #18: Fix -Wunused-parameter warnings in clients and plugins.

commit 690c2fe5a643f569a95004b57904a2801f457da7
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Mar 8 11:03:52 2017 +0100

    Bug #25688673: REMOVE SPECIAL-CASING OF NON-STRNXFRM-BASED COLLATIONS
    
    Some character sets are designated as MY_CS_STRNXFRM, meaning that sorting
    needs to go through my_strnxfrm() (implemented by the charset), and some are
    not, meaning that a client can do the strnxfrm itself based on
    cs->sort_order. However, most of the logic related to the latter has been
    removed already (e.g. filesort always uses my_strnxfrm() since 2003), and now
    it's mostly in the way. The three main uses left are:
    
     1. A microoptimization for constructing sort keys in filesort.
     2. A home-grown implementation of Boyer-Moore for accelerating certain
        LIKE patterns that should probably be handled through FTS.
     3. Some optimizations to MyISAM prefix keys.
    
    Given that our default collation (utf8mb4_0900_ai_ci) now is a strnxfrm-based
    collation, the benefits of keeping these around for a narrow range of
    single-byte locales (like latin1_swedish_ci, cp850 and a bunch of more
    obscure locales) seems dubious. We seemingly can't remove the flag entirely
    due to #3 seemingly affecting the on-disk MyISAM structure, but we can remove
    the code for #1 and #2.
    
    Change-Id: If974e490d451b7278355e33ab1fca993f446b792

commit d40fe40e84f33e2a48f83ee658aa9543ec75e26f
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:37:02 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 8e74c6b5c41be957ddcdc1692f58dc97ecabbd88
Merge: a40076e 579637d
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:35:46 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 a40076e26919dcf463ce0ead91de70d2abacabe1
Merge: 18603b7 dbe8c69
Author: Harin Vadodaria <harin.vadodaria@oracle.com>
Date:   Wed Mar 15 13:31:07 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 18603b79410a0d4ccd262b4cfc626e82135cd231
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Mar 13 13:54:24 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#4
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: Ie076000af7cd6f175ff20abf8d845c135700085c

commit 604b0ed4157e687ae36b13ce9fc3e63389f1861c
Merge: 475bde3 0970bf1
Author: Kailasnath Nagarkar <kailasnath.nagarkar@oracle.com>
Date:   Wed Mar 15 16:54:41 2017 +0530

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

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 475bde3ae03ccf852eb940c02239b72310ce9166
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Wed Mar 15 10:17:49 2017 +0100

    Bug#25196653: INCORRECT BEHAVIOR OF SP IN INDEX CONDITION PUSHDOWN
    
    Post-push fix: doxygen warning

commit 1160c209f446a6e79b6514aebdb187ef76cc5fcd
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Wed Mar 15 08:35:39 2017 +0100

    Reducing vardir name to avoid innodb.innodb_stats_long_names failure due to long path names on windows

commit b3c475f4145b99dcbf38167a2a1d0e425bb93a28
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Wed Mar 15 01:40:19 2017 +0100

    Bug#25721867 : Disabled failing test

commit 885f036bf0681842a835961516f21b85e3cf3755
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Wed Mar 15 08:32:35 2017 +0800

    Bug #25669344  ONE XA PREPARE TRANSACTION IS COUNTED AS THREE BY DO_DB FILTER
    
    The problem is that XA START, XA END, XA COMMIT and XA ROLLBACK
    increase the counter of replicate_do_db filter if it is hit by
    the XA transaction.
    
    XA START, XA END, XA COMMIT and XA ROLLBACK does not increase
    the counter of replicate_do_db filter any more even if it is
    hit by the XA transaction.

commit 2a2babaf28717f60fca4265cfdd048467daf92e2
Author: Sivert Sorumgard <sivert.sorumgaard@oracle.com>
Date:   Tue Feb 14 10:18:08 2017 +0100

    Bug#25481355: MYSQL.COLUMN_TYPE_ELEMENTS.NAME HAS INSUFFICIENT
                  LENGTH FOR ENUM/SET ELEMENTS
    
    The name column of the dictionary tables mysql.column_type_elements
    and mysql.parameter_type_elements had room for only 255 bytes, which
    is not enough to store ENUM/SET elements that may be 255 characters
    long in a multi byte character set with e.g. four bytes per character.
    
    In 5.7, up to 64K long elements may be used for column type elements.
    This limit was due to the .FRM format, where a byte offset pointing
    to the next block after the full set of enum/set elements was stored
    in a two byte integer. Thus, the sum of all enum/set element lengths
    had to be less than approximately 64K. The block containing the enum/
    set elements also contained some other information, so the available
    space was a bit less than 64K. In 5.7, the parameter type elements
    could also be longer than we allow in 8.0. Thus, this patch makes
    sure that upgrade is rejected if there are type elements that exceed
    the maximum length (see below).
    
    This patch extends the maximum length of the name columns, and adds
    a check in the validation of objects of type dd::Column_type_element
    and dd::Pareameter_type_elements objects that that too long ENUM/SET
    elements are rejected. This puts a restriction on upgrade from 5.7
    which should probably be documented.
    
    The already existing check for ENUM/SET element length, which was
    executed while creating tables or procedures, is removed, since the
    check mentioned above will catch these use cases as well.

commit 91fb20c3359226f81fc6372b4369b8fed72969dc
Author: Abhishek Ranjan <abhishek.ar.ranjan@oracle.com>
Date:   Tue Mar 14 20:56:31 2017 +0530

    Bug#25633041 : SHOW CREATE PROC/FUNCTION RESULT AFTER
                   LIVEUPGR IS DIFFERENT TO DUMPUPGR
    
    In place upgrade from mysql-5.7 to mysql-8.0 stored servers
    default client and connection character set for stored routines.
    This changes the behavior of the stored routines.
    
    Stored routines use the character set and collation in effect at
    routine creation time. If user wants to change the database default
    character set or collation, stored routines that use the database
    defaults must be dropped and recreated so that they use the new defaults.
    
    Fix:
    Use the client and connection collation in effect when
    stored procedure and stored function was created for inplace upgrade.
    
    Updated main.dd_upgrade_test.test result file which was
    recored mistakenly.

commit 67e246d90bf56524cafa721fa92d9cfce19d2b0c
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Aug 30 10:24:15 2016 +0200

    Bug#24561887 ADD NOT_SPARC_DEBUG.INC
    
    Add mtr file not_sparc_debug.inc in order to disable
    a couple of tests which typically timeout after 900 seconds in debug mode.
    Also disable for UBSAN builds.
    
    Change-Id: I1eb026da9258b87281c8c3b73873eed42dd75c16
    (cherry picked from commit 01d9325a2df6b6d4248bcd9e21dc6a361ac72ac7)

commit e764f13a7e56561afbe6cc04079d346583fe7849
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Aug 26 12:44:02 2016 +0200

    WL#5767 Performance Schema, Statements Digest
    
    Post-push fix for Solaris Developer Studio 12.5 on sparc:
    Thread stack overrun:
    624408 bytes used of a 655360 byte stack, and 32000 bytes needed.
    
    Change-Id: Iad55b2a4c85750d5ea96741e11f64f648dc0bcbe
    Fix: disable the test on sparc.
    (cherry picked from commit 008fb4ae184ef7fb53f7a1cd0ea85cfc0fc1ed80)

commit 708f0727954bf9aedbb3a95a93018e6461499ca0
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Tue Nov 15 14:39:50 2016 +0100

    Bug #25083555 SOME TESTS FAIL WITH DEBUG SERVER ON SOLARIS WHEN BUILT WITH DEVELOPER STUDIO
    
    When we do a release type build of the server (with both optimized and
    debug enabled server/plugins) with Developer Studio, some MTR tests
    when run with --debug-server will fail in one of two ways:
    
    1. Tests which try to load a plugin into the mysql client fail with
       missing symbols. This is caused by the plugin having references to
       functions which do not exist in the non-debug client.
    
    2. Some tests on sparc fail with Thread stack overrun.
    
    Fix for issue #1: mtr will have appended /debug to the plugin dir part
    when running with --debug-server and if there actually is such a
    directory. The fix is to remove any trailing /debug from the
    env. variable within the test. This will affect the client only, not
    the server. Developer builds will not have put the plugins in a
    subdirectory /debug so it makes no different to those.
    
    Fix for issue #2: apparently this thread stack overrun is not feasible
    to avoid, so just skip the test if running with debug server on sparc;
    there is already an include file to do that.
    
    Also added not_sparc_debug.inc to the "white list" so the tests are
    skipped even when running mtr --no-skip.
    
    (cherry picked from commit 9c79e477261ab252e38def436bca3336ef597603)

commit 799f353977667c93fe385f4dc33265b723f2523e
Author: Andrei Elkin <andrei.elkin@oracle.com>
Date:   Tue Mar 14 13:48:07 2017 +0200

    WL9175. Post-push to handle intermidiate commit in ALTER branch.
    
    Fixes deploy Disable_gtid_update_guard in
    mysql_trans_{prepare,commit}_alter_copy_data().
    
    Approved on rb15695.

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 7b796f5fbe3ca4ab894c8c59aadc273070bc01da
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Mon Mar 13 11:15:18 2017 +0000

    BUG#25710507 MYSQLBINLOG ASSUMES OCT TO BE AVAILABLE IN MYSQL 8.0.0
    
    Problem:
    Original commit timestamp related statements were introduced in the
    binlog in MySQL 8.0.1. However, mysqlbinlog is wrongly reporting that
    these statements have been present since 8.0.0 because they are dumped
    as:
    /\*\!80000 SET @@session.original_commit_timestamp=
      MICROSECONDS-FROM-EPOCH\*//\*\!\*/;
    and MySQL 8.0.0 did not support them yet.
    
    Fix:
    Changed the version to 80001 in mysqlbinlog dump.

commit d4b70e50a89534115db384d5ab085fe1bb7f3f11
Author: Roy Lyseng <roy.lyseng@oracle.com>
Date:   Fri Mar 10 13:02:13 2017 +0100

    Bug#25688504: regression: scale >= 0 && precision >= 0 && scale <= precision
    
    Fix for bug#25669580 was insufficient for some cases where the first
    argument was of type DECIMAL. New fix is to assign all type-related
    properties instead of just the type code.

commit 06415c190321519dd08aba0861a14ccc304f2d9a
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Mar 13 13:03:19 2017 +0100

    WL#10354: Make Unicode 9.0.0 and newer collations NO PAD
    
    Post-push fix: Make the MEMORY engine properly strip spaces from
    the end of CHAR columns, like the previous fix for InnoDB.
    
    Change-Id: Ib101955086da5e41b65cee171eb8e3ab0c0ba307

commit e71dbc730de1875472fcdc4870618232db96bf2a
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Mon Mar 13 11:56:17 2017 +0100

    BUG#25481287: CANNOT START GR WITH SUPER_READ_ONLY=1
    
    It was not possible to start Group Replication automatically on
    server start with super_read_only=1 specified on server
    configuration.
    
    That was fixed on BUG#24311527: PLUGIN-LOAD FAILS AFTER MYSQLD
    --INITIALIZE. This patch adds the test case to validate that.

commit 4ec6ce0e3703c87151544d7404d61c556d558cb7
Author: Martin Hansson <martin.hansson@oracle.com>
Date:   Wed Mar 8 10:54:33 2017 +0100

    Bug#25615803: ASSERT IN SQL/FIELD.CC:...  VIRTUAL STRING*
    FIELD_VARSTRING::VAL_STR
    
    The generated column expression is not supposed to be
    evaluated for stored generated columns during update
    statements, but the partitioning handler did so anyway,
    leading to a failed assertion. Fixed by introducing the same
    criterion as is used for non-partitioned tables.

commit 0d9ce6872e56f4d23780a8b634cf0f87f47f5028
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Tue Mar 14 08:06:18 2017 +0100

    WL#9499 : Disabled tests innodb.innodb_tsof_use_1 and innodb.innodb_tsof_use_2 that are failing consistently on Windows.
    
    Approved by : Erlend Dahl <erlend.dahl@oracle.com>

commit 1ad6c9b97e9dd4b627ddb3780f014dae401e99af
Merge: d35ae19 1ba5907
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Mar 14 05:46:38 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 d35ae198fa617f4739153ba5385f5cad606f69e7
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Mar 14 05:32:24 2017 +0100

    Revert "Merge branch 'mysql-5.7' into mysql-trunk"
    
    This reverts commit 3e7d5550e1a0ea93e9bffc117ccc54198862426c, reversing
    changes made to 625ed9e3858b6494a355fca79c3676ddd0b7a7e5.

commit aa9c42adbe3f37d28c6069ad48f49f40b5421761
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Mon Mar 13 20:03:34 2017 +0100

    Reverted merge of 5.7 fix for compile error caused by Bug#22671846 fix since it broke build on trunk.

commit f800d681971376d57bfaf55604b9b2951ad7598b
Merge: 1e5860e f064d9f
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Mon Mar 13 19:52:32 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 1e5860ec38a58b1269f1225f0ed667aa1c5f2548
Merge: 3e7d555 09b50ab
Author: Piotr Obrzut <piotr.obrzut@oracle.com>
Date:   Mon Mar 13 18:21:45 2017 +0100

    Merge branch 'mysql-5.7' into trunk

commit 3e7d5550e1a0ea93e9bffc117ccc54198862426c
Merge: 625ed9e 67475cc
Author: Ole-Hjalmar Kristensen <Ole-Hjalmar.Kristensen@oracle.com>
Date:   Mon Mar 13 18:34:45 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk
    
    Conflicts:
    	rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/site_def.h
    	rapid/plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/xcom_base.c

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 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 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 625ed9e3858b6494a355fca79c3676ddd0b7a7e5
Author: Roy Lyseng <roy.lyseng@oracle.com>
Date:   Mon Mar 13 15:45:25 2017 +0100

    Bug#25398515: Refactor accumulated Item properties into a bitset
    
    - Add a bitset named m_accum_properties in class Item.
    - Accumulate m_accum_properties from leaf Item nodes up to the root.
    - Remove Item::with_subselect, Item::with_stored_program and
      Item::with_sum_func, and re-implement them as bits in m_accum_properties.
    - Reimplement Item::has_subquery() and Item::has_stored_program() as
      non-virtual functions that operate on current Item's m_accum_properties.
    - Replace boolean Item::with_sum_func with a bit in m_accum_properties.
    - Implement non-virtual public function Item::has_aggregation().
    - Add the necessary setter functions for subquery, stored_program and
      aggregation properties for class Item.
    - Notice that the aggregation property may be set dynamically, e.g
      for Item_func_grouping, so in this case we need to override
      Item_func::update_used_tables().
    - Due to an anomaly with second time resolving related to Item_cache
      objects, the has_aggregation property for this object needs special
      treatment.

commit f4f315289b4dac96e3640144cd54ad2c5aeb9d5d
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Mon Mar 13 16:07:03 2017 +0100

    Bug#24311527 PLUGIN-LOAD FAILS AFTER MYSQLD --INITIALIZE
    
    [Post Fix]
    
    Reverted an unwanted changed to Group Replication PSI structures.
    Fixed a memory leak on group replcation plugin session isolation code.

commit 075f800e2ab9481b836e0359d748bbca9e882ba9
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 13 15:39:37 2017 +0100

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Post-push fix: Only check for metadata locks when DD objects
    are released if EXTRA_DD_DEBUG is set instead of doing it
    by default for debug builds. This check is expensive as
    DD objects are cloned and then deleted for every check.
    This cost was made more evident by the patch for Bug#24930129
    which lead to timeouts for main.merge on Windows.
    
    No changes for release builds.

commit 54feda9d63f40c582331b6b57ef98d79610ab2dc
Author: Knut Anders Hatlen <knut.hatlen@oracle.com>
Date:   Fri Mar 10 22:41:18 2017 +0100

    Bug#25709647: FIX MAYBE-UNINITIALIZED WARNINGS
    
    Debug builds with gcc fail because of maybe-uninitialized warnings
    when -Og is given as extra optimization flag.
    
    Change-Id: I7e4781bfa4d03d67f5b28c3e768460a37a607904

commit c0bd2a45330cb42221d3e620a4e005d3ccba488d
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Mon Mar 13 18:59:45 2017 +0530

    Bug#25701174: SERVER FAILS TO START FOR TESTS WITH BOOTSTRAP OPTIONS IN OPT FILE DURING RETRY
    
    Issue:
    ------
    If a test which has an opt file containing options passed to --bootstrap fails and
    if retry is enabled, the server fails to start again. During the retry, MTR cannot recognize
    bootstrap options set in the opt file because the 'bootstrap' key word is removed when the
    test is run the first time. So on retry, the server throws an error and fails to start.
    
    Fix:
    ----
    The bootstrap options are saved into a list when the test is run for the first time.
    On retry, there is no need to extract the bootstrap options from the opt file again.
    
    Reviewed-by: Pavan Naik <pavan.naik@oracle.com>
    RB: 15677

commit 91f7690e41add7f81ce921f43b002148d32691f8
Merge: fb90ad9 2626bf3
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Mon Mar 13 17:06:35 2017 +0400

    Null-merge from mysql-5.7

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 fb90ad99e3025c6b1a590ac56d838fee25f0c63e
Merge: ce6591d 3b201be
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Mon Mar 13 17:40:33 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 ce6591deeb993e15fc22be4c121dc65926c028ec
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:48:11 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable tablespace_basic.test du to problem with tablespaces
       in other engines than Innodb, bug reported
     - add comment to tablespace_basic.test trying to describe the problem
       with alter/drop tablespace and the datafiles, need to file bug

commit bb3eb8c6fd9fa02f0117a9ff3d03f755789de70a
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:42:04 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove comments intended for descibing problem with altering and
       dropping tablespace in future version

commit 35f525ff02f09d6bcef3736db04c1d0258cc2b93
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:31:47 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - add testcase to --suite=ndbcluster for testing basic tablespace
      functionality with NDB

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 ec430df486cb58c3fec715e2794efc9a01827814
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:48:11 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - disable tablespace_basic.test du to problem with tablespaces
       in other engines than Innodb, bug reported
     - add comment to tablespace_basic.test trying to describe the problem
       with alter/drop tablespace and the datafiles, need to file bug

commit 4dd65c6b0b86d223d382b98f00eed42159b36e44
Merge: dfb1cc7 015f58f
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Mar 13 12:44:25 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

commit a8876ff6e584c5c86047c6d645a02e3628fab742
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:42:04 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove comments intended for descibing problem with altering and
       dropping tablespace in future version

commit 69a6f4b204800551b1e5f2395d4741756ec570a3
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:42:04 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
     - remove comments intended for descibing problem with altering and
       dropping tablespace in future version

commit d2432f2fd10cc63220b740ce7fbb3cbc06a48d71
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:31:47 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - add testcase to --suite=ndbcluster for testing basic tablespace
      functionality with NDB

commit e8ac2010e7426a16e7aaaf064a5770b86aa10203
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Mon Mar 13 12:31:47 2017 +0100

    WL#8500 Adapt MySQL Cluster to 8.0
    
    - add testcase to --suite=ndbcluster for testing basic tablespace
      functionality with NDB

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 dfb1cc7ce4fade5dccafd4b42322e7eae078da7e
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 13 11:55:12 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4
    
    Post-push fix: innodb_gis.gis can no longer run with 4K page size.
    
    Approved by Tor Didriksen <tor.didriksen@oracle.com>

commit 864f1cee4b327fc64e9cce3ff43396241481e8d3
Merge: 853ef03 f65e27b
Author: Marc Alff <marc.alff@oracle.com>
Date:   Mon Mar 13 11:10:26 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 853ef03716a14ab580bc8abfa770a31ac7772e3d
Merge: 970d024 000a60d
Author: Thirunarayanan Balathandayuthapani <thirunarayanan.balathandayuth@oracle.com>
Date:   Mon Mar 13 15:07:53 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 970d02447f2f943f212825bbcb1f4cf897f81b31
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 13 09:39:14 2017 +0100

    Bug#25702297 UBSAN: NULL POINTER PASSED AS ARGUMENT 2, WHICH IS DECLARED TO NEVER BE NULL
    
    Temporarily disable rpl.rpl_filters_reset_slave_cmds in UBSAN.
    
    Approved by Jon Olav Hauglid <jon.hauglid@oracle.com>

commit a39cb7f2d606c1d3c397f07c0163fe2c81f8ea59
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 13 09:37:24 2017 +0100

    Bug#19442959 DO NOT CALL EXIT() FROM INNODB
    
    Disable innodb.innodb_tsof_use_1 in ASAN.
    
    Approved by Jon Olav Hauglid <jon.hauglid@oracle.com>

commit e503b35d05392fc593e20d647c2b4bf2a629f674
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Sat Mar 11 00:01:12 2017 +0100

    Bug#25642343: THE SERVER SHOULD HAVE A DEFAULT USER FOR THE SERVER SESION SERVICE
    
    Post-push fix: Update main.initialize-sha256 result file.

commit 9483410223e1ba237bd09f1588b40be78fe36055
Author: Andrei Elkin <andrei.elkin@oracle.com>
Date:   Fri Mar 10 14:13:39 2017 +0200

    WL9175 post-push: ASAN memory leak in Query_log_event.
    
    In WL-included builds ASAN run witnessed missed ~Query_log_event invocation.
    The destruct-or was not called due to the WL's changes in the error propagation
    that specifically affect LC MTS.
    The failure is exposed in particular by rpl_trigger as the following
    stack:
    
      #0 0x9ecd98 in __interceptor_malloc (/export/home/pb2/test/sb_2-22611026-1489061390.32/mysql-commercial-8.0.1-dmr-linux-x86_64-asan/bin/mysqld+0x9ecd98)
      #1 0x2b1a245 in my_raw_malloc(unsigned long, int) obj/mysys/../../mysqlcom-pro-8.0.1-dmr/mysys/my_malloc.cc:209:12
      #2 0x2b1a245 in my_malloc obj/mysys/../../mysqlcom-pro-8.0.1-dmr/mysys/my_malloc.cc:72
      #3 0x2940590 in Query_log_event::Query_log_event(char const*, unsigned int, binary_log::Format_description_event const*, binary_log::Log_event_type) obj/sql/../../mysqlcom-pro-8.0.1-dmr/sql/log_event.cc:4343:46
      #4 0x293d235 in Log_event::read_log_event(char const*, unsigned int, char const**, Format_description_log_event const*, bool) obj/sql/../../mysqlcom-pro-8.0.1-dmr/sql/log_event.cc:1686:17
      #5 0x293b96f in Log_event::read_log_event()
      #6 0x2a2a1c9 in next_event(Relay_log_info*)
    
    Previously before the WL
    Mts_submode_logical_clock::wait_for_workers_to_finish() had not
    returned any error even when Coordinator thread is killed.
    
    The WL patch needed to refine such behavior, but at doing so
    it also had to attend log_event.cc::schedule_next_event() to register
    an error to follow an existing pattern.
    While my_error() does not take place the killed Coordinator continued
    scheduling, ineffectively though - no Worker gets engaged (legal case
    of deferred scheduling), and without noticing its killed status up to
    a point when it resets the event pointer in
    apply_event_and_update_pos():
    
      *ptr_ev= NULL; // announcing the event is passed to w-worker
    
    The reset was intended for an assigned Worker to perform the event
    destruction or by Coordinator itself when the event is deferred.
    As neither is the current case the event gets unattended for its termination.
    
    In contrast in the pre-WL sources the killed Coordinator does find a Worker.
    However such Worker could be already down (errored out and exited), in
    which case apply_event_and_update_pos() reasonably returns an error and executes
    
      delete ev
    
    in exec_relay_log_event() error branch.
    
    **Fixed** with deploying my_error() call in log_event.cc::schedule_next_event()
    error branch which fits to the existing pattern.
    THD::is_error() has been always checked by Coordinator before any attempt to
    reset *ptr_ev= NULL. In the errored case Coordinator does not reset and
    destroys the event itself in the exec_relay_log_event() error branch pretty similarly to
    how the pre-WL sources do.
    
    Tested against rpl_trigger and rpl suites to pass.
    
    Approved on rb#15667.

commit 46e57de57704c73ad327337c5f608f71ac858bbc
Merge: 86bb5ae 24d1e36
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Fri Mar 10 22:41:17 2017 +0530

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

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 86bb5aea51261147618dcd159c90e1a6595c1022
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 10 18:03:53 2017 +0100

    Bug#24296291: FIX -WUNUSED-PARAMETER WARNINGS
    
    Patch #17: Fix -Wunused-parameter warnings in unit tests.

commit ab1b36f88234e1ae5318abad9cca135555f2213d
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Fri Mar 10 16:24:41 2017 +0100

    Bug#24311527 PLUGIN-LOAD FAILS AFTER MYSQLD --INITIALIZE
    
    Group replication depended on the root account to be present when
    installing or starting the plugin.
    
    To avoid that, we now a use a default user that is created on server
    initialization/upgrade
    
    This patch also includes changes to the way the plugin contacts the
    server to protect the context associated to external users sessions.

commit c3c17d991405d89737cbbee1c7076c40dce860fb
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 10 16:51:06 2017 +0100

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Post-push fix: Fix doxygen errors.

commit d475474dcfcbd488381104de80633bff5faf5b53
Author: Pedro Gomes <pedro.gomes@oracle.com>
Date:   Fri Mar 10 12:08:43 2017 +0100

    Bug#25642343: THE SERVER SHOULD HAVE A DEFAULT USER FOR THE SERVER SESION SERVICE
    
    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

commit 039f226a02d54ae990756708fcac452cdfc3a295
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 10 15:15:04 2017 +0100

    Bug#24930129: REDUCE NUMBER OF DICTIONARY CACHE LOOKUPS
    
    Move acquire() calls higher in call hierarchy to reduce
    number of acquire() calls. Pass const dd object references or
    pointers instead of object name strings.
    
    Part 3: Do this for triggers.
    
    This patch also fixes:
    Bug#25581925: `MDL_CHECKER::IS_READ_LOCKED(M_THD, *OBJECT)'
                  AT DD::CACHE::DICTIONARY_CLIENT:
    
    This bug was an assert in debug mode with no ill effects on
    release builds. The assert was triggered if DROP TRIGGER
    was used on a table used by a view. And the table and the
    view were in different schemas and the view was locked with
    LOCK TABLES. In this case the schema metadata lock on the
    schema containing the table was released too early.

commit dd715b00184ae8ab40084cac211e6019ac6cd2ae
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Mar 9 13:20:30 2017 +0100

    Bug#24465518 FEW RPL TESTS FAIL ON ASAN WITH ERROR: ADDRESSSANITIZER: HEAP-USE-AFTER-FREE
    
    Fix: do not change charsets_dir of a running server, it is not thread safe.
    
    Change-Id: I097c89c3baf42720a03603810ff65167bc3ca065

commit 02223c3f9f356a49e53bc4f2370342124ce15578
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Thu Mar 9 12:27:59 2017 +0100

    Bug#25694888 MEMORY LEAK IN I_MYSQL_CLIENT_TEST
    
    Fix: mysql_real_connect returns nullptr when it fails, so do not assign that
    to the local MYSQL* variable.
    
    Change-Id: Id42bb7e9b9dabb313a9012b388e8dc9f8ae431fe

commit b01d271be6f9275b8e5aeb64e9d9d45f1bd9b650
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Fri Mar 10 14:40:38 2017 +0100

    Bug#25702297 & Bug#22732184
    
    Disable
    
       rpl.rpl_multi_source_filter
       rpl.rpl_filters_check_counter
    
    in UBSAN and
    
       binlog.binlog_check_flush_log_assertion
    
    in ASAN on PushBuild.
    
    Approved by Jon Olav Hauglid <jon.hauglid@oracle.com> over IM.

commit e7e9207ec079213dc87bf67b3d79bb98ce9ff9d2
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Fri Mar 10 14:52:49 2017 +0100

    Bug#25688192: ASSERTION FAILED: MAYBE_NULL IN ITEM_FUNC_CONCAT::VAL_STR
    
    The patch for Bug#22893669 CONCAT: "SOURCE AND DESTINATION OVERLAP IN MEMCPY"
    introduced a sanity check for nullability. This was triggered for the result
    of an export_set() function.
    
    Fix: let Item_func_export_set::val_str use 'return error_str()' rather than
    setting null_value and return nullptr.
    
    Change-Id: I8a5b74ccec03700eef60e8ca1bb40a9d2535c914

commit e639d9cc13d3e98525e0ae48dd08c27173533fb3
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 7 16:20:04 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#3
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I6dff6dae0dc9f8f237be057f07dbf35b101890f8

commit 9b51c7aa08e4a88123ad9d1a09b209a169c62bf9
Author: Sreeharsha Ramanavarapu <sreeharsha.ramanavarapu@oracle.com>
Date:   Fri Mar 10 18:25:15 2017 +0530

    Bug #25685615: INCORRECT BEHAVIOR OF UPDATE IN SP
    
    Issue:
    ------
    When there is an update in an SP accessing a temporary
    table, some of values of the structure Sql_cmd_update
    are incorrect.
    
    Solution:
    ---------
    Use LEX structure instead for the relevant check.

commit 868139c84f8d6e225715de4f8ce636f19d5fb9ad
Author: Deepa Dixit <deepa.dixit@oracle.com>
Date:   Fri Mar 10 17:47:53 2017 +0530

    WL#7554: Switch to new default character set and change mtr test cases
    
    Post push fix to move the inc files to the beginning of the test,
    before the test database is altered.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com> over IM

commit a412deb673ca8c2fd176dac30187160d01311aa4
Author: Daniel Blanchard <daniel.blanchard@oracle.com>
Date:   Fri Mar 10 12:15:14 2017 +0000

    WL#9499 Follow up fix
    
    Remove path separator character from innodb.log_based_discovery.test as a regex
    search in a file for a path separator is not portable between Linux and Windows.
    
    Approved by Erlend Dahl <erlend.dahl@oracle.com> over IM.

commit bfedec1a1aaf2acd8554abe1267dc62af0b1d5ab
Merge: a484a7b cbb2565
Author: Nuno Carvalho <nuno.carvalho@oracle.com>
Date:   Fri Mar 10 12:44:59 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 a484a7b81642cac5848b5270a735acc2c281a7c6
Author: Parveez Baig <parveez.baig@oracle.com>
Date:   Fri Mar 10 16:58:46 2017 +0530

    Bug#25700098: GROUP_REPLICATION.GR_REPLICATION_TIMESTAMPS TEST IS FAILING.
    
     The test is failing sporadically in assert as LAST_APPLIED_TRANSACTION
     shown by P_S TABLE for APPLIER CHANNEL on RECOVERY server is not empty
     as it contains the view_id transaction.
    
     Fix:
     Comment the failing assertion in testcase until the bug is fixed.

commit 2c3de41e4959d92c16ea44887f1911734ab6db00
Merge: 33c4909 0d7c08b
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Fri Mar 10 12:18:52 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6 (Bug#25695818)

commit 0d7c08b88341d24518d98b33fd8cf64b6a3daf45
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Mar 9 23:50:16 2017 +0100

    Bug#25695818 DATA NODE BUS ERROR IF BUILT WITH ORACLE DEVELOPER STUDIO 12.5 ON SOLARIS SPARC
    
    Make m_versionInfo aligned to 8 byte boundary within GlobalData.
    
    By that the compiler bug is avoided, at least in code path accessing
    m_versionInfo.

commit 2205e16a9f6ada0a17f74dd5e8c783f00eff734d
Author: Sunny Bains <Sunny.Bains@oracle.com>
Date:   Fri Mar 10 21:31:59 2017 +1100

    Bug#25658467 - MYSQLD HUNG IN TRUNK WEEKLY PERFORMANCE REGRESSION TESTING
    
    WL#9499 follow up fix.
    
    Follow the same latching rules as file open when closing a file via the
    open files LRU. When registering a file close with Fil_Open we should not
    be holding any other latches.

commit ddcbbc48d1b164069af643ab4ebb1d158e463748
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri Mar 10 15:42:04 2017 +0530

    BUG#25699526 : REMOVE UNSUPPORTED 'EVAL_RESULT' AND 'SYSTEM' MYSQLTEST COMMANDS
    
    Cleanup the code related to unsupported 'eval_result' and 'system'
    commands.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15656

commit d6796b611a226606829852d13d1641e9d0c5b039
Author: Balasubramanian Kandasamy <balasubramanian.kandasamy@oracle.com>
Date:   Fri Mar 10 15:32:52 2017 +0530

    BUG#25695293 - PACKAGE UPGRADE FROM 5.1.73 TO 8.0.1 FAILING WHEN MYSQL-EMBEDDED-DEVEL INSTALLED

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 16f168ad3b611dc1f41aac3ddbcae830c22fcefd
Merge: 91dc9e8 7597dc9
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Fri Mar 10 10:09:11 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 91dc9e8663d868dc2487e0e03fbc8dccd5b8f6d4
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Fri Mar 10 08:35:58 2017 +0100

    WL#10354: Make Unicode 9.0.0 and newer collations NO PAD
    
    Post-push fix: Fix two Clang build warnings and update
    dd_schema_definition_debug_ci.result

commit d102ac60e59f497f2d5669dcb6e7d284e3a93fed
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Fri Mar 10 01:32:12 2017 +0100

    Use --skip-combination to avoid usage of combinations in rpl suite. This will run tests in rpl suite with the default value of binlog-format.
    Also removed skip of disabled-per-push.list. Test suite is runnig in reasonable time without skipping these tests.
    
    Approved by Erlend Dahl <erlend.dahl@oracle.com>

commit 6ad9606eb8c1ad90f272271ca1593bb347db1354
Author: Dmitry Lenev <dmitry.lenev@oracle.com>
Date:   Fri Mar 3 15:36:17 2017 +0300

    Bug#25647413 "ASSERTION FAILURE: HA_INNODB.CC:NNN:(TABLE->INDEXES).COUNT == DD_TABLE.INDEXES()".
    
    Attempt to create table with 8-char prefix unique key on non-nullable TEXT
    field and without explicit PRIMARY KEY caused assertion failure in InnoDB.
    
    The problem was that auxiliary calc_key_length() function returned 8
    as length of keys for TEXT/BLOB/JSON/GEOMETRY fields. As result
    dd::Index_element::is_prefix() erroneously treated such 8-char prefix
    key as non-prefix key. As result dd::Index::is_candidate_key() method
    might have treated such key as a candidate key which confused InnoDB.
    
    Changed calc_key_length() to return 0 as a key length for TEXT/BLOB/JSON/
    GEOMETRY types, similarly to what Field::key_length() returns for them.
    As result dd::Index_element::is_prefix() and dd::Index::is_candidate_key()
    now work correctly for keys on such columns. Added asserts checking that
    dd::Index::is_candidate_key() and dd::Index_element::is_prefix() are
    in sync with how we choose TABLE_SHARE::primary_key value and set
    HA_PART_KEY_SEG flag.

commit 15ad409c7cb1cda58d14da800a090aa940d555fb
Author: Anitha Gopi <anitha.gopi@oracle.com>
Date:   Fri Mar 10 03:20:46 2017 +0100

    Revert "Bug#25658467 - MYSQLD HUNG IN TRUNK WEEKLY PERFORMANCE REGRESSION TESTING"
    
    This reverts commit 1a7522225795f672fbac536a8c0940fc73070d55.

commit 1a7522225795f672fbac536a8c0940fc73070d55
Author: Sunny Bains <Sunny.Bains@oracle.com>
Date:   Fri Mar 10 12:16:04 2017 +1100

    Bug#25658467 - MYSQLD HUNG IN TRUNK WEEKLY PERFORMANCE REGRESSION TESTING
    
    Follow the same latching rules as file open when closing a file via the
    open files LRU. When registering a file close with Fil_Open we should not
    be holding any other latches.

commit 0b2f4899a4d026d33fd7e15c06df239bc3f6e2e0
Merge: f1f9299 76262b0
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 02:07:16 2017 +0400

    Null-merge from mysql-5.7

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 f1f929997871d7197f6dc7c73ab82e075ba06527
Merge: 5369e8b 9c351ec
Author: Ramil Kalimullin <ramil.kalimullin@oracle.com>
Date:   Fri Mar 10 01:31:32 2017 +0400

    Null-merge from mysql-5.7

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 5369e8bdda609a87314afc9947bd0fa67be22806
Merge: 69b0b68 cd88a9d
Author: Maria Couceiro <maria.couceiro@oracle.com>
Date:   Thu Mar 9 17:23:53 2017 +0000

    Merge branch 'mysql-5.7' into mysql-trunk

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 69b0b68bd8a53131f93a80d7d40a41255f7ad356
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Feb 8 15:58:07 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (revert whitespace changes)
    
    Revert the changes that we did to whitespace weights as part of Bug #24823885;
    now that we are NO PAD, we don't need these changes to make pad behavior faster.
    This brings us back in line with default DUCET ordering.
    
    Change-Id: I44e4a87a7c87ef9a89aaf62272d879b85a15713e

commit 3f7c1b9048085fce0e6c930a29d1964399ff9010
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Feb 6 14:36:19 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (make UCA NO PAD)
    
    Make the UCA collations NO PAD.
    
    Microbenchmarks (64-bit, Skylake 3.4 GHz, GCC 6.3):
    
      BM_SimpleUTF8MB4           140 ns/iter [ +0.0%]
      BM_MixedUTF8MB4            182 ns/iter [ +7.1%]
      BM_MixedUTF8MB4_AS_CS      557 ns/iter [ +4.3%]
      BM_JapaneseUTF8MB4         544 ns/iter [+10.5%]
      BM_NewlineFilledUTF8MB4    159 ns/iter [ +3.8%]
      BM_HashSimpleUTF8MB4       288 ns/iter [ +5.6%]
      BM_Hungarian_AS_CS        4652 ns/iter [ -4.4%]
    
    Change-Id: I8c65368519305cce4ae4bf13c77baaf7a187759b

commit ca2b7caf6f299cba4ec6ffe4a71c082c6dcf5c84
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Wed Feb 8 12:37:53 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (update InnoDB CHAR)
    
    Make InnoDB do space-stripping from CHAR fields as specified in the manual
    before comparing them; previously, it was okay not to do it as it was only used
    for comparisons with strnncollsp, but in NO PAD collations, it needs to be done
    explicitly.
    
    Change-Id: Ia6c0c7ba598c86b7d7eb24e07d17e75567661cb8

commit 37988b809cc66539acaf03a2b8f56002dc454944
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Feb 7 16:55:10 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (update LIKE)
    
    Make the conversion of LIKE 'foo%' to range queries aware of NO PAD
    collations; for them, the minimum possible key is 'foo', not 'foo\0\0\0(etc.)'.
    
    Change-Id: I2a163a2e876808ab24be8dc799a20cd0a0845d7b

commit a425af9cea2407192b248a59e6f9bc99787723c7
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Feb 6 14:34:25 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (update CHAR sort keys)
    
    Prepare CHAR(n) for NO PAD collations; we need to make sort keys consistent
    with val_str(), so that their space-stripping behavior is the same.
    This wasn't done before because only BINARY was a NO PAD collation, and it
    had special-cased behavior (it doesn't pad with spaces, it pads with zero bytes).
    
    Change-Id: I5039db0a2e36526120554c87604714208f22da1c

commit 5a70662e38654bec186c24583372aeeb133dcab2
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Feb 10 10:57:28 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (information schema)
    
    Add information about the pad attribute for each collation to the information
    schema. We choose the same column name and contents as Postgres and SQL Server,
    as it seems to be pretty universal.
    
    Change-Id: I76125547d47828974a9393a40e17421432cffafe

commit 90bcc70765d5df2c04196c3b111941cacac9e448
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Feb 3 17:11:53 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (add property)
    
    Make PAD SPACE/NO PAD behavior a property of the collation,
    instead of hardcoding that “binary” (and only “binary”) is NO PAD
    and everything else is PAD SPACE.
    
    Note that this changes weight_string() behavior on CHAR(n) for “binary”
    (it was adding zero bytes to the end, and now isn't). This is harmless,
    though.
    
    Change-Id: Ia72e13574eadd0f76c0fb3d133cebf8b04cc1aee

commit 953f9d18d4a242b12e01c1370884446424e7c6f5
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Mon Feb 6 10:24:45 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (deterministic tests)
    
    Make the UCA tests deterministic, by adding the codepoint order as a tiebreaker
    on equality.
    
    Change-Id: Ie85c13ae3d39044faca63e2bf833b04ea7318760

commit f228c1f5816f66677c95c377c5d94a52d4b4d478
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Mar 7 12:11:43 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (fix blob strnxfrm)
    
    Make sorting keys for blobs correctly heed the demand that strnxfrm output
    buffers must be an even number of bytes. (This gets relevant when more complex
    collations than “binary” go through the variable-length path.)
    
    Change-Id: Iac8c27ea1678044c867a604f7cbc084f9284f9a0

commit da94bbd4b2ee20b4984ca3f4aac30816a8dc6c99
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Feb 7 16:52:20 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (fix strnncoll)
    
    Make strnncoll for UCA levels support comparison on multiple levels;
    it was only correct for strnncollsp. This affected as_cs collations,
    but we currently call the bare version (the one that's not -sp)
    so rarely that it went unnoticed.
    
    Change-Id: I7ff4725337cb3126350cffaa02edb242c5fd1fdc

commit 44bf05e35c84ced376d1c4592dbf9107cd6b5aef
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Tue Feb 7 10:24:08 2017 +0100

    WL #10354: Make Unicode 9.0.0 and newer collations NO PAD (fix latin1_de)
    
    Fix a bug in the latin1_de collation, which mixed up num_codepoints
    with dstlen.
    
    Change-Id: I8330c52db919edba517a185e901ad7b2fb576778

commit 2e5405e6698fa6e7698b6f56b7ad1138e29fd5fd
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Mar 9 10:51:53 2017 +0100

    Bug#25685371: `E->USAGE() == 1' AT DD::CACHE::SHARED_MULTI_MAP<T>::REMOVE
                  FOR DROP VIEW
    
    Follow-up fix: Add asserts that would have caught the issue
    much earlier. Disable some of them by default as they are
    quite expensive to check and because they modify e.g. P_S output.
    
    Fix a similar issue to the issue in the bug report
    found in mysql_rm_table() using these new asserts.

commit 34c7ec828366c9278dc3785f79dcdd2cbd2204d1
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Fri Mar 10 00:54:45 2017 +0530

    BUG#25685780 : REMOVE 'RESULT' MYSQLTEST COMMAND
    
    Description :
    -------------
    mysqltest 'result' command is not supported anymore and, if used in
    a test a deprecation message is printed and the test run exits out.
    
    Fix :
    -----
    Cleaned up the code related to 'result' command from mysqltest.cc
    file and updated the MTR documentation accordingly.
    
    Reviewed-by: Deepa Dixit <deepa.dixit@oracle.com>
    RB: 15613

commit d2141f7a3982695673004d3a75754ef27c57794d
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Thu Mar 9 13:42:41 2017 +0100

    WL#9499 Follow up fix
    
    Prevent innodb.log_based_discoverty from timing out in Valgrind.
    
    Approved by Deepa Dixit <deepa.dixit@oracle.com> over IM.

commit 8e85694fdcf1448de2edf524048f64ab22617cb9
Author: Mohit Joshi <mohit.joshi@oracle.com>
Date:   Thu Mar 9 16:03:23 2017 +0530

    Changed the default charset to utf8mb4 for keyring_okv tests.
    
    Reviewed by:
    Horst Hunger <horst.hunger@oracle.com>

commit 0baff337f558fb76ce7c342229a66307d572bc2a
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Thu Mar 9 11:56:30 2017 +0100

    Bug#25685371: `E->USAGE() == 1' AT DD::CACHE::SHARED_MULTI_MAP<T>::REMOVE
                  FOR DROP VIEW
    
    Post-push fix: Fix test case altered by mistake.

commit 9c80507d0009fe084aef4b30d048821b778d1d29
Merge: 88c709d b5a8aef
Author: Terje Rosten <terje.rosten@oracle.com>
Date:   Thu Mar 9 11:43:35 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 88c709d85cf6d0d0ade66b967ad1c183441a8290
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Mar 8 15:45:21 2017 +0100

    Bug#25685371: `E->USAGE() == 1' AT DD::CACHE::SHARED_MULTI_MAP<T>::REMOVE
                  FOR DROP VIEW
    
    This assert could be triggered by various DDL statements executing
    at the same time as view metadata was being updated. The problem
    was that if view metadata was being updated for several views,
    the metadata lock on the first view was dropped while the local
    dictionary client still had the object. If a concurrent DDL
    operation then tried to drop the view, the DD cache reference
    counter would be 2 and not 1 as it should have been.
    
    The root cause was that the DD cache Auto_releaser that tracks
    DD cache usage and handles reference counting had a too big
    scope so that its scope exceeded that of the metadata lock.
    This patch fixes the problem by making sure the Auto_releaser
    destructor (which decrements the reference count) is executed
    before locks are released.
    
    The patch also fixes an unrelated issue where an internal
    error handler allocated on the stack could still be in
    use when the scope ended leading to undefined behavior.
    Finally, the patch includes some minor cleanups.

commit f9dd87de9fd9f4e19b833d7ccf7734f958353120
Merge: 42ee553 3bb768f
Author: Karthik Kamath <karthik.kamath@oracle.com>
Date:   Thu Mar 9 15:01:55 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 42ee55396821e3817843d1a73b20fbc105c6a0cf
Author: Sunny Bains <Sunny.Bains@oracle.com>
Date:   Thu Mar 9 16:50:22 2017 +1100

    WL#9499 Follow up fix
    
    Fix for tests : innodb.log_file_name_discover and innodb.log_based_discovery
    
    1. Always try and read the tablespaces.open.* files, even on normal startup
       This is required to compare the undo tablespaces paths with the current
       paths. This check should be removed later. It gets in the way of moving
       undo tablespaces around and is unnecessary. This check was introduced in
       WL#7806 and should be reverted.
    2. Compare the absolute path of the undo tablespaces to check for mismatch
    3. On Windows addthe wildcard character '*' where required during directory
       traversal.
    
    Some additional tests were adjusted to accommodate the above changes.

commit 289ee8ff8b31fdc3e4813f1d87a97e683b877372
Author: Pavan Naik <pavan.naik@oracle.com>
Date:   Thu Mar 9 10:45:09 2017 +0530

    BUG#25633295 : MTR DOC: MISSING DOCUMENTATION FOR 'TEST-PROGRESS' OPTION
    
    Description:
    ============
    Behaviour of MTR option 'test-progress' is not documented.
    
    Fix:
    ====
    Update the MTR documentation with necessary information
    regarding 'test-progress' option.
    
    Reviewed-by: Anitha Gopi <anitha.gopi@oracle.com>
    RB: 15565

commit 2526978900625fea021b46e38d6907bb12a74007
Author: Chaithra Gopalareddy <chaithra.gopalareddy@oracle.com>
Date:   Thu Mar 9 10:40:30 2017 +0530

    Bug #25685766: ROLLUP DOES NOT GIVE CORRECT RESULT WHEN USED WITH ORDER BY/DISTINCT
    
    No repeatable test case on trunk. Need to make changes in the code to allow
    ORDER BY with ROLLUP and then could see the wrong data in output.
    rollup_write_data does not check for correct item type to save the result
    field.
    
    Fix:
    Check the item type for  NULL_RESULT_ITEM in rollup_write_data as changes for
    GROUPING() changed the type of the Item_null_result from NULL_ITEM to
    NULL_RESULT_ITEM

commit 33c4909e5195b3064f9f381c446b71cc8d70ced5
Merge: 23d55fa f27296f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Mar 9 02:14:43 2017 +0530

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

commit f27296fe5120e83880a8ea69ccee76ff9431ebf8
Merge: 8258507 bf31191
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Thu Mar 9 02:14:16 2017 +0530

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

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

    Bug#22195588 - Post push fix
    
    This patch makes changes to the ndb_info.inc include file in the MTR
    test case to make it windows compatible.

commit 0d08654e8411e3b030dce99c9d61415087816758
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Wed Mar 8 13:16:48 2017 +0100

    Remove innodb.log_file_system from the ASAN disabled list as
    the test now passes.
    
    Change i_main.pid_file_issue to not run with ASAN since it
    relies on debug flags to force server startup to fail.
    
    Reviewed-by: Erlend Dahl <erlend.dahl@oracle.com>

commit 9114dfe1f1b243bcb9214268f5e90c140cd1af75
Merge: afd54a8 9c749d3
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 8 15:59:18 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 afd54a8bf6d178f496dc7fdf7594d5e701e354f4
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Wed Mar 8 15:46:52 2017 +0100

    Bug#25688635 ASAN: GLOBAL-BUFFER-OVERFLOW IN MYSQLD WHEN SPECIFYING EMPTY BASEDIR
    
    Push to fix innodb_undo.undo_space_id so it doesn't specify an empty
    basedir and get a buffer overflow when run in ASAN.
    
    Approved by Jon Olav Hauglid <jon.hauglid@oracle.com> over IM.

commit d63a29dc71372e0704e447736e74bf99daefabe4
Merge: cf18862 69f39d4
Author: Marc Alff <marc.alff@oracle.com>
Date:   Wed Mar 8 14:06:57 2017 +0100

    Merge branch 'mysql-5.7' into mysql-trunk

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 cf18862e8205e0d4502b7c8c41510aaeacd7dcc7
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Sat Mar 4 12:36:21 2017 +0100

    WL#7554 Change windows-authentication-plugin.non-ascii to utf-8

commit 23d55fa6c3f394902bd9a80a1a7f8e075c45e136
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Mar 8 12:21:31 2017 +0100

    WL#9864: Fix such that autotest runs correct test case, was renamed to MultiCrashTest from CrashTest

commit 283001f1ebd7357dd36a959c0615f28787c105d2
Author: Sunny Bains <Sunny.Bains@oracle.com>
Date:   Wed Mar 8 19:23:47 2017 +1100

    WL#9499 - Follow up fix
    
    1. Compare the absolute path name of undo tablespaces
    2. Filter out paths with '*'  in --innodb-scan-directories

commit 2deb7cadbed24cb9eb8fdce64fc7a537c50b1ab2
Author: Sunny Bains <Sunny.Bains@oracle.com>
Date:   Wed Mar 8 16:14:55 2017 +1100

    BUG#25667297 - WINDOWS IS CRASHING, TRYING TO OPEN TABLESPACES.OPEN.1
    
    WL#9499 follow up fix. Folder() uses the data home directory as the base.
    Use my_realpath() insteadto get the absolute path.

commit 690ef7b23d4ee0b8c395dfa0b891e66734342cf0
Author: Horst Hunger <horst.hunger@oracle.com>
Date:   Tue Mar 7 20:30:58 2017 +0100

    Bug #25675009: Updated the result files for the failing tests.

commit d07eefe74baae2c6fd0d0f1a54fadb812a1b8491
Author: John David Duncan <john.duncan@oracle.com>
Date:   Tue Mar 7 08:43:28 2017 -0800

    Remove version 1 multiwait API use from NDB Autotest

commit 22fb8449ee7d83ff4136b6414482a30e7c91333a
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Mar 7 17:17:51 2017 +0100

    Bug#25669580: regression: assertion failed: 0 in Item_num_func1::str_op
    Bug#25669590: regression: assertion failed: collation.collation == ...
    Bug#25669606: regression: assertion failed: !is_temporal()
    
    Follow-up fix: Fix Clang build warning about unused
    is_numeric_type() in log_event.cc when MYSQL_SERVER is set.

commit b065f03be213a85e02d12799c264b90bcb475ae7
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 7 11:14:00 2017 +0100

    Bug#25679861 C++ LANGUAGE CONFORMANCE (MSVC /PERMISSIVE-)
    
    Fixing misc warnings from Visual Studio.
    
    Change-Id: If0dd338386c21e1428117fcb13acbe6906b5d917

commit 1090c9139a806f362c70393766f281bf655f68f5
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 7 10:20:26 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4 PATCH#2
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: Ifb36205fc50d3079ab8f07205acdb2fbb4002707

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 575036cb998d773af090a311c8aac0263c356cc2
Author: Guilhem Bichot <guilhem.bichot@oracle.com>
Date:   Mon Mar 6 17:35:41 2017 +0100

    Bug#25188540 FIELD_TINY::VAL_INT(): ASSERTION `!TABLE || (!TABLE->READ_SET |......)' FAILED
    
    While working on the fix for this bug, we noticed that
    commands don't need mascarade as SHOW FIELDS anymore; this was very old
    code (2004, 2007) which isn't necessary now that
    opening tables doesn't imply materializing them:
    - COM_FIELD_LIST calls mysqld_list_fields() which only calls
    setup_materialized_table), doesn't actually create and fill it
    - fill_schema_table_by_open(): same.
    Note that this:
      DBUG_ASSERT(thd->lex->sql_command == SQLCOM_SHOW_FIELDS);
    in get_schema_tmp_table_columns_record() is still correct, as
    that function is only called by SHOW FIELDS, as can be seen in:
    PT_show_fields_and_keys::contextualize():
      // If its a temporary table then use schema_table implementation.
      if (find_temporary_table(thd, tbl) != nullptr)
      {
    ...
        enum enum_schema_tables schema_table=
          (m_type == SHOW_FIELDS) ? SCH_TMP_TABLE_COLUMNS :
    leading to reading this internal I_S table:
      {"TMP_TABLE_COLUMNS", tmp_table_columns_fields_info, create_schema_table,
        get_all_tables, make_tmp_table_columns_format,
        get_schema_tmp_table_columns_record, -1, -1, 1, 0}
    which calls the function having the assertion test.
    Here there is anyway no question of materializing, as it's
    a temporary table.

commit f8cc5a3f7d7435b51919cc92bb9e30596d37dce9
Merge: 058c38d 85919e9
Author: Venkatesh Duggirala <venkatesh.duggirala@oracle.com>
Date:   Tue Mar 7 18:40:07 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk

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 058c38d5504fa34b8b28f7f97908d1c27df681f4
Merge: 985a6db ca59ea7
Author: Aditya A <aditya.a@oracle.com>
Date:   Tue Mar 7 16:18:41 2017 +0530

    Merge branch 'mysql-5.7' into mysql-trunk
    [ NULL MERGE ]

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 985a6db6a5f34b3965b4a6ff51cc08663e7abfd0
Author: Marc Alff <marc.alff@oracle.com>
Date:   Tue Mar 7 10:52:18 2017 +0100

    Bug#21200794 - MOVE DOCS/MYISAM.TXT TO DOXYGEN
    
    Deleted obsolete documentation.

commit d4447d02695f11628ecf578f33dd68c8ad490a28
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Mar 7 15:15:46 2017 +0530

    Fixed build issue in trunk.

commit 521df6716758f2f7f140f887aa787987991d9230
Merge: 7781014 6960299
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Mar 7 14:43:09 2017 +0530

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

commit d99ee57ec537f5cce5327c3da700ac83bbba310b
Author: Roy Lyseng <roy.lyseng@oracle.com>
Date:   Mon Mar 6 09:12:30 2017 +0100

    Bug#25669580: regression: assertion failed: 0 in Item_num_func1::str_op
    Bug#25669590: regression: assertion failed: collation.collation == ...
    Bug#25669606: regression: assertion failed: !is_temporal()
    
    Bug#25669580:
    Problem here is that for ROUND function when second argument is constant NULL,
    data type is uncritically copied from first argument. If first argument
    is not numeric, assign DOUBLE as type.
    
    Bug#25669590:
    Problem was caused by a too aggressive assert (although I see no harm in it)
    
    Bug#25669606:
    Problem is that Item_func_nullif inherits from Item_bool_func2,
    and thus Item_int_func, in order to utilize the comparison mechanism
    for equality operations. However, by doing this, in 5.7 the derived
    type of this Item is MYSQL_TYPE_VAR_STRING, even though the first argument
    is a temporal type. After bug#25221172, derived type is correctly
    MYSQL_TYPE_TIME, but then we reach Item::get_time_from_int(), which
    crashes because it is not implemented for temporal types.
    
    Quick fix: Adjust data type of item to MYSQL_TYPE_VAR_STRING in
    Item_func_nullif::resolve_type().
    
    Best fix would be to let Item_func_nullif inherit from Item_func_case
    and remove implementations for resolving and evaluation.

commit 08c778c1b6137b0b6d8cbe7a5da5c17451395924
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Tue Mar 7 09:35:49 2017 +0100

    WL#7554 Switch to new default character set and change mtr test cases
    
    Post-push fix: Update the .result file for main.lowercase_table2

commit 309cca8feca55ac9d71f009550c914540ed86955
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 6 17:36:48 2017 +0100

    Bug#25671292 TEST_BUG9735 IS FAILING IN MYSQL_CLIENT_TEST AFTER UTF8MB4 CHANGE
    
    Problem: the computation of an expected length field (64 bits) was
    done with two 32 bit factors, one of which is the number of bytes in
    the default character set. With the change to UTF8MB4, the computation
    would overflow on 32-bit Linux and Windows.
    
    Solution: cast the first factor to ulonglong and do the computation in
    64 bits.
    
    Approved by Jon Olav Hauglid <jon.hauglid@oracle.com>

commit 0ebc1654f229563204d2c8510b7cde05e04b1f35
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Tue Mar 7 08:41:57 2017 +0100

    Bug#25664323 SIGNED INTEGER OVERFLOW: 361810122 * 10 CANNOT BE REPRESENTED IN TYPE 'INT'
    
    Post-push fix: re-record results for engines/iuds.insert_decimal
    
    Change-Id: I30f0ecbbde8069a9e5a10446eb6cf924093dfa8e

commit 6960299bb23d554838d88ca412a79ff7cbb034b4
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Tue Mar 7 12:20:12 2017 +0530

    Fixed crash

commit fa0b56e717b883bd42625091d077ed42daa7e160
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Tue Mar 7 06:15:34 2017 +0100

    WL#9499 Prevent test from timing out in valgrind
    
    Approved by Sunny Bains <sunny.bains@oracle.com> over IM.

commit ccc792febff58668ee0d8a0c27d03063e0e59db6
Author: Daogang Qu <bill.qu@oracle.com>
Date:   Tue Mar 7 10:24:31 2017 +0800

    wl#7361  MSR: per-channel replication filters - post fix
    
    Post-push fix failed rpl.rpl_filters_check_counter and
    rpl.rpl_filters_reset_slave_cmds.

commit dec57909a0d4a7bc9eace4dd533e89c03144eede
Author: Andrei Elkin <andrei.elkin@oracle.com>
Date:   Mon Mar 6 16:55:33 2017 +0200

    WL9175.
    
    Post-push fixes an issue revealed by rpl_relay_space_myisam on PB2.
    The last event executed coordinates could be updated before the DDL
    statement itself has commmitted on slave. This caused
    a false positive for synchronization in the test, which followed out
    by a slave side SELECT that failed.
    
    Fixed with relocation the last-executed coordinates RLI members
    updating into post_commit() hook which ensures the DDL statement
    commits first and therefore synchronization routines are happy.
    
    The former rollback branch of post_commit() is relieved as there's
    nothing to restore.
    
    Approved by Joao http://rb.no.oracle.com/rb/r/15576/.

commit 3db9b8b5d63bb2ae862bb16ca5610a4f5e4bf3b5
Author: Steinar H. Gunderson <steinar.gunderson@oracle.com>
Date:   Fri Mar 3 11:02:38 2017 +0100

    Bug #25642319: ILLEGAL MIX OF COLLATIONS FOR TIME/VARCHAR
    
    When doing comparisons, don't try to coerce the right argument to the left's
    collation; instead, use the appropriate aggregations to try to find a superset.
    At the same time, fix a field in DTCollation that would have undefined value when
    using set().
    
    Also, make sure UTF32 is counted as a superset of any collation, because it is.
    (Previously, only utf8mb4 would have this status.)
    
    Change-Id: Ib55502cf2a36cbca77332a1d0f2b300a2c558273

commit 2b4b8cf64b5ddeea5eb89c6d27e31a7e5cd8c756
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Mar 6 14:39:25 2017 +0100

    Bug#25664323 SIGNED INTEGER OVERFLOW: 361810122 * 10 CANNOT BE REPRESENTED IN TYPE 'INT'
    
    Avoid overflow calculating exponent part of a double.
    
    Change-Id: I583388b640d6a99e17a73aba9f160791d7bb8408

commit 00e71c5b2faa055846575fa98212b1d86344f72a
Author: Tor Didriksen <tor.didriksen@oracle.com>
Date:   Mon Mar 6 12:38:13 2017 +0100

    Bug#25673668 MIGRATE OPTIMIZER TESTS FROM LATIN1 TO UTF8MB4
    
    Several mtr tests have been temporarily rewritten to use latin1, convert to
    utf8mb4 where applicable.
    
    Change-Id: I1f367ba8a60b853d1107c0463c2853a5c3da9fad

commit 2ef4acced110989e7385dd1f4999db402a4a898a
Author: Erlend Dahl <erlend.dahl@oracle.com>
Date:   Mon Mar 6 14:38:47 2017 +0100

    WL#7554 Switch to new default character set and change mtr test cases
    
    Move include/have_* to the top of the test.
    
    Approved by Bernt M. Johnsen <bernt.johnsen@oracle.com>

commit 4e7f88190d1659ee0a43b4ca450ffd14c8acb0a8
Merge: 1a4c623 f88d481
Author: Erik Froseth <erik.froseth@oracle.com>
Date:   Mon Mar 6 13:08:03 2017 +0100

    Null-merge from 5.7.

commit 1a4c6239bf0385062db1b9de6ef3f477dad653d0
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Mon Mar 6 14:17:58 2017 +0100

    WL#7554 Post push fix. Run innodb_zip.bug36169 with 16k innodb page size only.

commit adccff6a739b131006ec5f8c990a3038005d50e9
Author: Bernt M. Johnsen <bernt.johnsen@oracle.com>
Date:   Sat Mar 4 17:49:20 2017 +0100

    Bug#25669553 MTR DOES NOT CLEAN DATADIR WHEN PREVIOUS TEST HAD BOOT OPTIONS.
    
    Post-push fix for WL#7554. This is non-optimal, but get the value of
    MYSQL_BOOSTRAP_CMD right. A finaly fix would be to set
    MYSQL_BOOSTRAP_CMD elsewhere so you den't get the not needed
    cla-datadir() call.

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 ffb78f5a6bb1ea87d6f7ec6755dca14a79f6475b
Author: Darshan M N <darshan.m.n@oracle.com>
Date:   Mon Mar 6 16:52:46 2017 +0530

    Bug#24404091 FAILING ASSERTION: !SRV_READ_ONLY_MODE || M_IMPL.M_LOG_MODE ==
    MTR_LOG_NO_REDO
    
    Issue:
    ======
    We hit the assert added in the mtr_commit() when we try to rotate the
    master key when InnoDB is in the read only mode.
    
    Fix:
    ====
    Avoid rotating the master key when in read only mode and display
    appropriate error message.
    
    RB: 13700
    Reviewed by: Satya Bodapati <satya.bodapati@oracle.com>
    Reviewed by: Allen Lai <zheng.lai@oracle.com>

commit 49bd82341a873acbf528bd333eb7a4e4bd1f8a10
Author: Jon Olav Hauglid <jon.hauglid@oracle.com>
Date:   Mon Mar 6 11:36:05 2017 +0100

    WL#4618 RBR: extended table metadata in the binary log
    
    Post-push fix: Fix Clang -Wtautological-constant-out-of-range-compare
    build warning.

commit 6e25583350f50041481a9424a37724b44903b480
Author: Bjorn Munch <bjorn.munch@oracle.com>
Date:   Mon Mar 6 11:19:18 2017 +0100

    Raise version number after cloning 8.0.1-dmr

commit b9480d0111161d542d1105f62c347d596cf83dcf
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 3 13:29:23 2017 -0800

    Remove old version 1 of the NdbWaitGroup API
    This simplifies code reading & understanding for bug#20351656

commit b1ad0a3527237579bf2d8de748dafea556ad83de
Merge: f250476 8258507
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 3 13:15:10 2017 -0800

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

commit 825850763aa437488a347e2920aa38eba3b358c4
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Mar 3 12:36:30 2017 -0800

    NDB memcache: fix S scheduler to use version 2 of multiwait

commit 8634f1ff852579e7bb609b4055e677f0341e0c29
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 3 18:23:04 2017 +0530

    window fixed

commit f2504760d9fdb0380b23f00ea0290416369b8a36
Merge: 6808ef8 635e6c3
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:15:22 2017 +0100

    Upmerge of the 7.5.6 build

commit 635e6c31ecad6a3e152f3f33126c0c29c00e1add
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:13:53 2017 +0100

    Raise version number after cloning 7.5.6

commit 6808ef84665365082dc0818829835b39731cb247
Merge: 5bb70bd 5864b30
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:08:40 2017 +0100

    Upmerge of the 7.2.28 build

commit 5864b30711dabacd6461e470d19ac3f1d0eaf260
Merge: 4331f38 35db809
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:08:32 2017 +0100

    Upmerge of the 7.2.28 build

commit 35db80987e3fd2f2e41ffca5cc401edaf1b975bd
Merge: 41c6ebd 0f7c98f
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:08:22 2017 +0100

    Upmerge of the 7.2.28 build

commit 0f7c98fc86d4790165ac03a8c670afc98ff894e0
Merge: cd142c6 8881754
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:08:01 2017 +0100

    Upmerge of the 7.2.28 build

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

    Raise version number after cloning 7.2.28

commit 5bb70bd203be90a759b063be9cdb35654772df84
Merge: 53a410d 4331f38
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:02:08 2017 +0100

    Upmerge of the 7.4.15 build

commit 4331f38f193e45d73ce6d5543665818707edd5b8
Merge: d3d4c26 41c6ebd
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:01:51 2017 +0100

    Upmerge of the 7.4.15 build

commit 41c6ebdb9e3db3bcdef457a6d11d415c766b4c28
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 13:00:54 2017 +0100

    Raise version number after cloning 7.4.15

commit 53a410d44953acffca08ad7897cd93a05f9a7a91
Merge: 7303c83 d3d4c26
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:52:41 2017 +0100

    Upmerge of the 7.3.17 build

commit d3d4c26c9fd8a65ad4206c942a2b7933a4f038da
Merge: 712ed49 6f928d3
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:52:10 2017 +0100

    Upmerge of the 7.3.17 build

commit 6f928d3520f71fe64ba6283f86b443bd4cd973d0
Merge: d4f0c05 cd142c6
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:51:26 2017 +0100

    Upmerge of the 7.3.17 build

commit cd142c6e004c5b63aa085c29f8741b287e3463da
Author: Lars Tangvald <lars.tangvald@oracle.com>
Date:   Fri Mar 3 11:49:51 2017 +0100

    Raise version number after cloning 7.3.17

commit 4def8562953def72a561553e91985e5303cde41b
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Mar 3 15:51:02 2017 +0530

    Fixed build issues.

commit 7303c83cdd6e2ab7f4c56f8f5c2de6dee3a0623b
Merge: 39928a7 712ed49
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Mar 1 00:27:14 2017 +0530

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

commit 712ed499fb4e84014e421fb4aa819015ab7d965a
Merge: 0e11f56 d4f0c05
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Mar 1 00:24:30 2017 +0530

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

commit d4f0c05fe6e9a39259f8b081802cdb9065f7203a
Merge: ff4afaa e9573c3
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Mar 1 00:23:25 2017 +0530

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

commit e9573c39e150083055501868e873259006114ef8
Merge: 8f52a00 fda4ed9
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Mar 1 00:22:04 2017 +0530

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

commit 39928a7d3db2154e863e1877d0eb45932403cb21
Merge: 60cbe25 0e11f56
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Mar 1 00:07:17 2017 +0530

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

commit 0e11f56c559516231c53f81f71c4551df471ba03
Merge: 91fcd67 ff4afaa
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Mar 1 00:01:19 2017 +0530

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

commit ff4afaa1b8a33b02dc358649ea2f7ca46940de7c
Merge: 0f0b994 8f52a00
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Feb 28 23:50:12 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4
    
    (Merge tag 'clone-5.6.36-build' into mysql-5.6-cluster-7.3
    
     This is the periodic Server down-merge)

commit 8f52a0044af8cf14b28a55d587398d57db477f06
Merge: bfb3409 4265487
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Feb 28 23:44:27 2017 +0530

    Merge tag 'clone-5.6.36-build' into mysql-5.6-cluster-7.3
    
    This is the periodic Server down-merge

commit 60cbe254b9cb5b7e11e09e01c20d4fab5a0620b1
Merge: a5a3d93 91fcd67
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Feb 28 23:23:49 2017 +0530

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6
    
    (Merge tag 'clone-5.7.18-build' into mysql-5.7-cluster-7.5
    
     This is the periodic Server down-merge)

commit 91fcd6707f0e2ea8c144ca337a6074e6faa642ba
Merge: 3df5be4 89ee0ff
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Feb 28 23:20:32 2017 +0530

    Merge tag 'clone-5.7.18-build' into mysql-5.7-cluster-7.5
    
    This is the periodic Server down-merge

commit a5a3d9361d48ecbf192a7c49dabd06485e0c73e8
Merge: 52d3ae0 3df5be4
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Feb 28 15:00:09 2017 +0100

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

commit 3df5be45ccc523c1c962e679bba48964f7e1ef23
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Feb 28 14:56:41 2017 +0100

    Bug#25642405 ERROR FROM DIH-BLOCK IS RETURNED AS 'ERROR 218, OUT OF LONGMESSAGEBUFFER' BY TC
    
    During the initial phases of a SCANREQ, TC send DIGETNODESREQ's
    to DIH in order to get dictionary information for each
    fragment to scan.
    
    If a REF is returned from DIH, TC never used the returned
    errorCode. Instead a ZGET_DATAREC_ERROR
    (Error 218: out of LongMessageBuffer) was always returned.
    
    This patch read the 'errorIndicator' in theData[0], and 'iff != 0',
    it reads the errorCode from theData[1], which is returned from
    TC as the error.
    
    Note: The above REF-protocol is a bit a awkward. However
    the same pattern is used a couple of other places in the
    TC-block. So I prefer reusing this pattern over redefining
    the DIGETNODESREF protocol.

commit 52d3ae07c3fdb595ad6d74a94e76edec71466f6b
Merge: 52f712e f8f402a
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Feb 28 12:49:21 2017 +0100

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

commit f8f402a84f662042e8f13d25dc83973b03922e77
Merge: b78ba16 0f0b994
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Feb 28 12:47:56 2017 +0100

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

commit 0f0b9946ce47ed7f3cab9eff1010b57c925b7587
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Tue Feb 28 12:45:23 2017 +0100

    Bug #25635892 'STARTING CONNECT THREAD' SHOULD BE LOGGED AS AN 'INFO', NOT 'WARNING'
    
    As subject says: The message 'starting connect thread' should be an
    'information' instead of a 'warning' as this a completely
    harmless situation.

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 fda4ed9ba514f5549532b92592c24310ea3f3b8c
Merge: c149a94 9483d7d
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Feb 28 13:56:29 2017 +0530

    Merge tag 'clone-5.5.55-build' into mysql-5.5-cluster-7.2
    
    This is the periodic Server down-merge

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 52f712e2279dbd87e6f4da24cdb0baaf6baf0868
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Mon Feb 27 16:07:01 2017 +0100

    BUG#25636423: Use logical processors (CPUs) and not cores on Windows as well as on any other platform, removed some dead code

commit 26f1b4fb462b07217d04b998546b3aa3eee19314
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Mon Feb 27 14:59:20 2017 +0100

    Adding debug to trace downgrade failure in testUpgrade -n Upgrade_Mixed_MGMD_API_NDBD.

commit ab5e002f93ec4fd3072d5ae93ed5ee88089f83d3
Merge: c2d29a0 b78ba16
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Feb 27 14:51:12 2017 +0100

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

commit b78ba16ce55e02d713a1a653c9183d9aa1ca3a0c
Merge: a9bbea7 13e9869
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Feb 27 14:49:22 2017 +0100

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

commit 13e9869e1d4b94a69ada42d618ca8a415cbc5d56
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Feb 27 14:41:17 2017 +0100

    Bug #25557263 'WAITING MAX 119 SEC FOR DISTRIBUTING'-SCHEMA DISTRIBUTION TIMEOUT
    
    There is a possible race condition between the schema distribution
    coordinator holding a ref-lock on its schema_object, and the
    binlog-injector thread (participant-role) possibly being late
    to unref-lock the same schema_object.
    
    This could potentially result in another schema distr operation
    getting a ref to the not-yet-released schema_object held
    by the injector thread instead of having to create a new
    schema_object as normally expected.
    
    The SLOCK-bitmap, which keeps track of which participants
    the coordinator is still waiting for, was set to 'all-1'
    when created. However, it will be 'all-0' immediately before
    the injector thread is about the release (unref) it.
    
    Thus, if the coordinator managed to 're-get' this schema_object
    before being released (and destructed) by the injector-thread,
    we got a schema_object->slocks with 'all-0' instead of 'all-1'
    as expected. - This caused a total breakdown of the schema
    distribution protocol.
    
    The fix is to move the schema_object->slock 'all-1' setting
    from the creation of new schema_object() to the place where
    the schema distr coordinator initate waiting for schema operations
    to be distributed. This will cover both scenarios where we
    either had to create a new schema_object, or we reuse an
    existing not-yet-released schema object.

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 7781014aaaba1213fbf4d080c6bdad994767892d
Merge: a692f07 dc7327d
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 16:04:50 2017 +0530

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

commit dc7327d057e761554711835c4436ef84ba43d0aa
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 16:03:00 2017 +0530

    Fixed build issue

commit a692f076e50703a253eea6325023548f15c772a0
Merge: 7f1ae60 4b41c28
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 14:07:32 2017 +0530

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

commit 7f1ae60a1702fc16d8277c71899059f1e136f145
Merge: 6741570b 809ca77
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Mon Feb 27 14:07:08 2017 +0530

    Merge branch 'mysql-trunk' into mysql-trunk-wl5847

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 c2d29a013941d1189867fe7c7527af5ac7c477e9
Merge: 095b331 a9bbea7
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Feb 24 10:28:55 2017 -0800

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

commit a9bbea73470e5be48bed2fe8605c6445cc08b184
Merge: 7bf27cd 52e1d42
Author: John David Duncan <john.duncan@oracle.com>
Date:   Fri Feb 24 10:28:00 2017 -0800

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    Conflict included copyright year only
    Conflicts:
    	storage/ndb/src/ndbapi/WakeupHandler.cpp

commit 52e1d42358b84d9d6fdf88b51110606c7b78e2b8
Author: John David Duncan <john.duncan@oracle.com>
Date:   Thu Feb 23 11:12:44 2017 -0800

    In multi-Ndb WakeupHandler, reset woken flag.
    This had been commented out.
    It is a necessary (but maybe not sufficient) part of the fix for bug#20351656

commit 095b331078fef2230d6a8a0892785e9dc639b0be
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Feb 24 14:01:33 2017 +0100

    BUG#25611093: Fixing some printouts when starting with old pid file still around

commit 0927d1d095068819295b0e652e9b46ddeb9575b9
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Feb 24 12:46:21 2017 +0100

    WL#9864, BUG#25050703: Fix crash logic such that we can always survive single computer failure and can handle multiple sequential failures with 3-4 replicas

commit a2b4074867c0ea16328e86e11eb93477da7aa639
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Feb 24 12:37:37 2017 +0100

    BUG#25610736: Fix graceful shutdown in presence of failed nodes in same node group

commit 6741570bb5c2a10c1efdf3e4fdde27a1ad883f94
Merge: d4287fb 5a4818f
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Feb 24 16:44:28 2017 +0530

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

commit 45352da9456463679d18ccc5b484d3df77a7b695
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Fri Feb 24 11:24:15 2017 +0100

    WL#10408 + WL#10340 Part 1: WL#10340 adds series of new parameters for MCC while WL#10408 handles GUI and logic for parameters with series of discrete values.

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 f1beb2176fa4aeec4573e2715a1f05dbb0194d4c
Merge: fe4e343 7bf27cd
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Feb 23 17:32:03 2017 +0000

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

commit 7bf27cd1524facd611b3776d9f346f5722a3bad6
Merge: d631d14 1e0837d6
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Feb 23 17:29:39 2017 +0000

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

commit 1e0837d69a4f6a7883b07cdd58c072bd005de219
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Thu Feb 23 17:23:37 2017 +0000

    Bug#25443080 MAIN THREAD CPU USAGE ON MASTER DATANODE INCREASES TO 100% WITH LATENCY BURST
    
    LCP is controlled by DIH Master on one node, running on the 'main' thread.
    
    CPU usage was seen to be high there towards the end of an LCP, leading to
    increased transaction latency.
    
    Problem appears to be inefficiencies in the algorithm used by DIH Master to
    find fragment replicas to schedule for LCP, towards the end of the LCP it
    can spend a lot of time scanning over the set of all replicas.
    
    Fixes :
     - Make sure that per-node queues are made use of
       - If a fragment replica is queued, do not search for more
       - When searching for more, search for all nodes in 1 pass
     - When a node has started on all of its fragment replicas, do not
       include it in future searches
     - When all nodes have started on all of their fragment replicas,
       no need to search for more.
    
    Testcase :
     - 16 nodes, 4 LDMs/node : 64 fragments : 128 fragment replicas / table
     - 88 tables
     - No data
     - Run LCP using ALL DUMP 7099
     - Observe CPU usage and efficiency of replica search algorithms

commit 031ac758b4d76d2fd106eff77250f7db9b740b28
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Feb 23 16:23:39 2017 +0530

    WL#9185 MySQL Cluster support for new DD
    
    - Add a workaround for tables being marked as hidden and having temporary
      tablenames. Since the temporary name and hidden status is part of the
      serialized table definition, there's a mismatch down the line as this
      is stored as extra metadata in the NDB dictionary.

commit 1c8057cfbdec1279dbc9ffe674e8ad5a42b35f7e
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Thu Feb 23 13:04:19 2017 +0530

    fixed build issues.

commit fe4e3433a25bc924b51a9b4f6ca72cd95ed5ed74
Merge: 63bf42b d631d14
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Feb 23 00:05:05 2017 +0100

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

commit d631d1457dfc604ade657b4615abe2533aab251d
Merge: dd8e5a3 e6e4322
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Feb 23 00:04:45 2017 +0100

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

commit e6e43227482cfdf13116bfefa54220909989e164
Merge: cdb918a bfb3409
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Feb 23 00:04:16 2017 +0100

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

commit bfb3409275030e1e56d48d200575c76266033023
Merge: 8edfd71 c149a94
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Feb 23 00:03:15 2017 +0100

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

commit c149a949b685c76cbd580c0cc5351cd45f20ad00
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 22 18:14:37 2017 +0100

    Only build embedded if explicitly requested and possible.
    
    autotest option now no longer turn on embedded server build.
    
    This reduces the binary distribution size significantly, and there are no
    autotest suites testing embedded server anyway.
    
    In newer releases the option, WITH_EMBEDDED_SERVER, is removed.
    
    The compiler-cluster script checks if libmysqld directory exists in source.
    If not it assumed that there is no WITH_EMBEDDED_SERVER option, and none
    is passed to cmake which would otherwise give a warning.

commit a66ea8b06ea1fdfc711281b5f29262ede729d0c3
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Sat Mar 5 23:03:32 2016 +0100

    atrt use mysqld --initialize-insecure if possible
    
    mysql_install_db program is removed in newer versions of MySQL.
    
    Support for calling mysql_install_db is kept since it should also be able
    to run with old versions od MySQL which have mysql_install_db program but
    not --initialize-insecure option for mysqld.

commit 63bf42b1a51f6cf9753d85a0b3223a08d4c27333
Merge: ab64cb2 dd8e5a3
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Feb 22 14:12:42 2017 +0530

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

commit dd8e5a32d48314d54756751efebc600777a980d7
Merge: eaa4443 cdb918a
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Feb 22 14:06:57 2017 +0530

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

commit cdb918a2668099a954ef6f30b97715dd90a2b74a
Merge: 0e81db2 8edfd71
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Feb 22 14:03:49 2017 +0530

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

commit 8edfd71813b7f619d654a75bf483f726526dd960
Merge: 212e069 d7b0ea8
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Feb 22 14:01:31 2017 +0530

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

commit d7b0ea859dc671f261be13171834363d4820f88d
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Wed Feb 22 14:00:06 2017 +0530

    Bug#22195588
    
    SETTING NULL TO A DYNAMIC IN-MEMORY COLUMN CORRUPTS DISK COLUMN VALUES.
    When a table has dynamic columns and no var sized columns in memory,
    along with few other columns in disk, setting null to all those dynamic
    columns will end up corrupting the values in the disk based columns.
    
    The var part of a tuple comprises of the variable sized columns and the
    dynamic columns. When a dynamic column is set to null, it is completely
    ignored during the shrink phase of the tuple and is not stored. So
    when a table doesn't have any var sized columns and the dynamic columns
    are set to null, no var part should be written to the tuple. And during
    commit, the function inspects the header_bits flag to check if VAR_PART
    is present. If there is no var part present, it expects the disk column
    content to be stored from the end of the fixed part.
    
    But during shrink phase, the length of the var part is written to the
    end of fix part even when there is no var part present (The length
    would be zero in this case). So during commit, since the varpart is not
    present, ndbd assumes disk column content is next to the fixed part and
    starts reading but since the length(0) is there, the tuple gets
    corrupted.
    
    This patch fixes this problem by removing the varpart length from the
    shrunken tuple when no varpart is present and ensures that the disk
    column content is written next to the end of the fix part.

commit ab64cb2cb49d95759cd462ea56f513e42a0b5713
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Tue Feb 21 17:28:45 2017 +0100

    Fixing test failure

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 45eeb11fa85f3f1c7ee0b0b0dbaa00864ef92f23
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Feb 17 00:35:29 2017 +0530

    Bug #25467722: REMOVE FORCE_MYISAM_DEFAULT.INC FROM NDB TESTS
    
    - Update the ndb_restore_conv_promotion test and result files
      to fix the tablenames used. Previously, the tables created
      were MyISAM tables and the tablenames followed a t*_myisam
      format. With the removal of the above mentioned include file,
      they are now InnoDB tables leading to the previously intuitive
      names becoming downright misleading.

commit d93cf96f460ba4f501dedde99580eabed35b8c97
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Fri Feb 17 00:18:54 2017 +0530

    Bug #25467722: REMOVE FORCE_MYISAM_DEFAULT.INC FROM NDB TESTS
    
    - Update failing tests and their corresponding result files
      to work with InnoDB as the default storage engine

commit b079a50084a2fca651021e5c0cf3c6f51c1451e3
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Thu Feb 16 17:15:56 2017 +0530

    Bug #25467722: REMOVE FORCE_MYISAM_DEFAULT.INC FROM NDB TESTS
    
    - Remove usage of include/force_myisam_default.inc from all
      ndb tests

commit 9ee1eb47908c1f26fb9df8bda72cf1c945386336
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Mon Feb 20 10:15:33 2017 +0100

    Fixing compiler error.

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 02bc4f627372b9563bbbdb7f7876dfaccbb55c96
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Fri Feb 17 16:15:28 2017 +0100

    Add some debug to trace the test failure (2-node ndb):
        testRedo -n CheckLCPStartsAfter[SN]R T1

commit 6a918beb7f7f590c3915c2ded999abad43b7f418
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Fri Feb 17 12:01:12 2017 +0530

    Bug #24748843: SYNC PRINTS TO STDOUT CAUSING MAIN THREAD TO SLEEP DURING HIGH IO WAIT
    
    Post-push fix
    
    Added a precursory check in append() for zero length string to return
    immediately since there's no need to append anything for a null string.
    
    Also added more exhaustive test cases.

commit fb2c0949ea0a105ca5c0a6f1759103711e8cb36a
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Feb 15 18:11:10 2017 +0530

    WL #9185: MySQL Cluster support for new DD
    
    - Add a function to print the diff between the extra metadata
      obtained from NDB table and DD when the two have diverged

commit 9276fcbbaf0559fe20b6adc9418f3500bf8e8ad3
Merge: 6e39495 eaa4443
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 16 13:32:37 2017 +0530

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

commit eaa444344d90d563797f87127423be377dcfb7ee
Merge: 3f084c5 0e81db2
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 16 13:32:13 2017 +0530

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

commit 0e81db2e74ddaf791c8f71baaa733a3cfb993154
Merge: 7493a16 212e069
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 16 13:31:57 2017 +0530

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

commit 212e069fa9b07ea80068ebcb3198473d65811c92
Merge: 5d3ef58 1ab6fba
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 16 13:31:16 2017 +0530

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

commit 1ab6fba1d704f8b4a632abf242beaf9135a035ff
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 16 13:30:25 2017 +0530

    Fix ndb_restore_conv_more mtr failure

commit 6e3949578029059eb4bd6fb0fb73f9641ef575e4
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue Jan 3 14:55:49 2017 +0530

    Bug #24748843: SYNC PRINTS TO STDOUT CAUSING MAIN THREAD TO SLEEP DURING HIGH IO WAIT
    
    A new OutputStream type- BufferedOutputStream is added in this patch.
    All log messages going to this stream are appended to a log buffer.
    Messages from this log buffer are read by a log thread which
    appends messages to the data node log file.
    
    The log buffer is of type LogBuffer- a class introduced in this
    patch. LogBuffer handles the producer consumer problem.
    Appending logs to the log buffer is always non-blocking.
    Hence, the problems arising due to synchronous prints are avoided
    
    The data node's worker process's log messages are made to go into the
    BufferedOutputStream. This makes logging through ndbout << , ndbout_c,
    g_eventLogger in the worker non-blocking.
    
    Logging using [f]printf, [f]write are blocking/synchronous and must be avoided.
    
    CPU locking of the log thread is akin to the other IO threads(Ndbfs).

commit e8868c3fb5e648f7b822f51aa9dd9f8ebeeb7b1c
Author: Maitrayi Sabaratnam <maitrayi.sabaratnam@oracle.com>
Date:   Wed Feb 15 10:41:31 2017 +0100

    Add some debug to trace the test failure 82-node ndb):
    testRedo -n CheckLCPStartsAfter[SN]R T1

commit 5a75edc0dec4748d7fc59872b04dc9a1735f27d3
Merge: 4bc8516 3f084c5
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Feb 15 14:20:30 2017 +0530

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

commit 3f084c522c62c0d495989ab8cbdd9254b0e220b8
Merge: a91bb14 7493a16
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Feb 15 14:20:14 2017 +0530

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

commit 7493a1667c674e3421ddbebc7ed5cf69cbd926f4
Merge: fdd23f2 5d3ef58
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Feb 15 14:19:57 2017 +0530

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

commit 5d3ef58a153770b9a210e0a258c415931147d0f9
Merge: 40b2e5a a7f1412
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Feb 15 14:19:35 2017 +0530

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

commit a7f1412889f33b16c6acf5c867b20cdc720ba167
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Wed Feb 15 14:18:41 2017 +0530

    Fix ndb_restore_conv_more mtr failure on Ubuntu. Grep
    incorrectly detects input as binary file due to UTF-8
    characters. Command returns "Binary file(standard input)
    matches" instead of matching rows. Modified grep command
    to always treat input as text, not binary.

commit d701bdc2d63a788574160266a48e82bf2abe010d
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Feb 15 12:13:20 2017 +0530

    WL #8500: Adapt MySQL Cluster to 8.0
    
    Update the result files of gcol_supported_sql_funcs_ndb and
    gcol_view_ndb tests. The gcol_ndb suite tests use the include
    files present in the gcol suite which means that any changes
    there affect the corresponding gcol_ndb tests.
    
    - The gcol_supported_sql_funcs_ndb result file is updated to
      include the test case added as part of WL #9191: Add JSON_PRETTY
      function
    - The gcol_view_ndb test is updated to include the changes made
      as part of WL #883: non-recursive CTE and WL #3634: recursive
      CTE

commit 4bc85164c795bdd23aac9df3a6ced9f460a1bd70
Merge: 3162eed a91bb14
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Feb 14 16:53:01 2017 +0530

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

commit a91bb14ce3605f1c798ac66013a11ab2acc276a9
Merge: ef1553f fdd23f2
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Feb 14 16:52:32 2017 +0530

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

commit fdd23f291903c76f07ca1fdb758993d995c38057
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Tue Feb 14 16:49:47 2017 +0530

    Fix for mtr failure ndb_many_fragments caused by difference in
    partition IDs calculated on big-endian and little-endian platforms

commit 3162eed22870d0e5f4c90174df30530b67501a63
Merge: 9989de3 ef1553f
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Feb 13 10:03:59 2017 +0100

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

commit ef1553fb225a3122b3fafc39c156dbc26094da8e
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Mon Feb 13 09:56:36 2017 +0100

    Fix ATR test 'testScan -n ScanDuringShrinkAndExpandBack'
    (Only seen failing in private sandbox)
    
    The 'NdbDictionary::Column::ROW_COUNT' of the test table
    is read back by setting up 'extraGetValues' in the
    'ScanOptions'. This require the adress of an *Uint64*
    to be suplied which the ROW_COUNT will be read into.
    
    However, the test program incorrectly suplied an
    Uint32 instead of an Uint64. Thus the 4 bytes following
    the '&row_count' argument was also written into when
    a row_count is returned.

commit 9989de35381a593eb6426185542192ddd542a0c4
Merge: 5c439dd 44a0346
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Fri Feb 10 18:30:52 2017 +0530

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

commit 44a034651197b69e7191d351b020e626a3ab2705
Merge: ea874ca 43a10e2
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Fri Feb 10 18:25:18 2017 +0530

    Merge branch 'mysql-5.6-cluster-7.4' into mysql-5.7-cluster-7.5
    
    Conflicts:
    	storage/ndb/src/ndbapi/NdbImpl.hpp

commit 43a10e2c238bf0c943af654523eb3213b8d0f718
Author: Sanjana DS <sanjana.ds@oracle.com>
Date:   Tue Jan 10 11:48:23 2017 +0530

    Bug #25092498: NDB API PROCESS CRASH (CHECKMAGICNUMBER (THIS=0X0, B=FALSE) AT /PLATSOFTWARE/MYS
    
    checkMagicNumber() fails due to a NULL pointer being passed to it.
    This happens due to simultaneous access of theNdbObjectIdMap without
    proper synchronisation/protection.
    
    The NdbObjectIdMap object is internally expanded using realloc() when needed.
    realloc() sometimes changes the memory location of the internal map object
    and the old memory object is freed.
    Hence, when one thread causes the map to expand, another thread might
    still be accessing the old location of the map. This could cause a
    segmentation fault in the thread accessing the old location.
    
    This patch adds mutex protection to theNdbObjectIdMap by reusing the
    existing mutex in NdbImpl: m_mutex.
    This mutex is already being locked before reading theNdbObjectIdMap.
    Now, the mutex is locked before theNdbObjectIdMap is expanded as well.
    We don't need to lock it before unmap() since it's guaranteed to be
    called only after map()/expand().

commit 5c439dd1a11bb2903c6e939e455658cd92b9285e
Merge: d4b79c2 ea874ca
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Feb 9 10:59:44 2017 +0100

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

commit ea874ca2fa69ca0e81fdbc38bc8e0bde286931bf
Merge: 78e3307 c9a46cd
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Feb 9 10:57:57 2017 +0100

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

commit c9a46cdd4c1f7e6d4ec65d9099e108128c344bb8
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Thu Feb 9 10:52:15 2017 +0100

    Fix failed ATR test: testNdbApi -n FragmentedApiFailure T1.
    
    Test was written to accept error 4009 as an acceptable outconme.
    However, the error code 4009 has in later versions been splitt in
    4009 when the cluster is totally unavailable, and 4035 when it
    is partiall available (About to reconnect).
    
    This patch include error 4035 as an acceptable outcome
    for this test.

commit d4b79c25982ac89fd234968786e9a19c2f4badba
Merge: b864e80 78e3307
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 9 15:01:10 2017 +0530

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

commit 78e33076193a14eccb09c74b4b1dd5c1ae70eb3a
Merge: 4d56a79 463b213
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 9 15:00:15 2017 +0530

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

commit 463b21340bfa368e8ae00440d78fe9c27376d15a
Author: Priyanka Sangam <priyanka.sangam@oracle.com>
Date:   Thu Feb 9 14:54:19 2017 +0530

    Bug #21068548 EXPLAIN PARTITIONS WRONG VALUE ON 'PARTITIONS' ON NDB WITH HIGH # OF PARTITIONS
    
    For EXPLAIN, mysqld calculates the partition ID for a hash value
    as (hash_value % num_parts). But this is accurate for all hash
    values only when the table is partitioned by a distribution key
    hash. Other partitioning types use different ways to map hash
    values to partition IDs. In the case of hashmap partitioning, the
    (hash_value % num_parts) is used to index into a hashmap array
    to obtain the part ID. This issue is reproducible with default
    hashmaps as well, but only for specific ratios of num_parts
    (number of partitions) to num_hashmap_buckets.
    
    direct_part_id = hash % num_parts
    indirect_part_id = hashmap[hash % num_hashmap_buckets]
    
    default_hashmap_content[n] = n % num_parts
     (0 1 2 3 ... num_parts-1 0 1 2 3 ... num_parts-1 0 ...)
    
    if num_hashmap_buckets % num_parts = 0
      direct_part_id(x) == indirect_part_id(x)
    
    if num_hashmap_buckets % num_parts != 0
      direct_part_id(x) != indirect_part_id(x)
    
    Fixed by replacing the partition ID calculation with an ndbapi
    function which correctly calculates the part ID based on the
    partitioning type.

commit f5dcf38dd8b4940a11eb6b944960deb6a488f243
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 9 09:14:58 2017 +0100

    Fix merge problem
    
     - remove duplicated comment and assert

commit b864e803e659137b880a0c969ef9f96ac22327bd
Merge: d2d9f6f 4d56a79
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Thu Feb 9 08:59:46 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6 (Bug#25253540)

commit 4d56a797bd68ddb29ad5261765e91107ddca7088
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue Feb 7 20:16:41 2017 +0100

    Bug#25253540 LOOP OPTIMIZATION COMPILE BUG ON SPARC WITH GCC 5.3.0
    
    If cmake option FORCE_UNSUPPORTED_COMPILER is set, warn if bug found and
    workaround does not work.  Workaround is not applied in that case.

commit 4c612a23e680e384f93b70c6ba053288ca6fbc9a
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 1 15:50:02 2017 +0100

    Bug#25253540 LOOP OPTIMIZATION COMPILE BUG ON SPARC WITH GCC 5.3.0
    
    Detect GNU C/C++ 5.3.0 Bug 78807 - Loop optimization trigger bus error
    
    See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78807
    
    If compiler bug detected using test program, some tree loop optimizations
    are turned off.
    
    Two CMake functions CHECK_C_COMPILER_BUG and CHECK_CXX_COMPILER_BUG are
    added that first check if bug is detected, and if so checks if given
    workaround works if not build is aborted otherwise the workaround flags
    are appended to compile flags.

commit d2d9f6ff5d2b508d4105a6a58569034f4c71e8fb
Merge: ac2e364 49b3c70
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Wed Feb 8 14:36:58 2017 +0100

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

commit 49b3c70f96f01e8f75af742d59eba9fd9308b4d2
Merge: 569bb0d c83d1bd
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Wed Feb 8 14:36:33 2017 +0100

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

commit c83d1bdb2a888c471f10aaf61614f0301bcdadee
Merge: f9ed266 40b2e5a
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Wed Feb 8 14:36:08 2017 +0100

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

commit 40b2e5a74445b605c4b9456e42f8761492341cfd
Merge: b518ae6 af22459
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Wed Feb 8 14:35:38 2017 +0100

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

commit af224595635272f9510b20fbcf1fcb6dd9ec525d
Author: Martin Sköld <Martin.Skold@oracle.com>
Date:   Wed Feb 8 14:34:40 2017 +0100

    Bug#18267513 NDB_MGM COMMAND 'ALL TESTOFF' FAILS DUE TO AN ILLEGAL REPLY FROM SERVER.
    
    Changed stop of logging to expect an answer from server

commit 26a59b80a69afd7d88e0c2215ccfe555975351b3
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Wed Feb 8 18:23:56 2017 +0530

    Bug #24710065: SPLIT MY_GLOBAL.H
    
    Follow up fix
    
    Fix the build failure of MySQL Server with NDB on Windows. Fix is to
    add an include file so non-standard types can be resolved on all
    platforms.

commit f53403da7cc42fce9853730f22e055e7b00f3b12
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Feb 7 15:20:44 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - move functions for creating the mysql.ndb_schema and
       mysql.ndb_apply_status into Ndb_binlog_setup which is
       the only place where they are used

commit 822bab3f6b8bc135922aaf28fef6f88e8cf917da
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Feb 7 12:09:49 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - move comment to correct line

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 ac2e36424cc2a3ae57bce68bff5355254f9d61c0
Merge: 5481046 569bb0d
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Feb 6 12:03:20 2017 +0000

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

commit 569bb0defcbb41ef8815928a60c6ce1f120b3a0e
Merge: 490bb42 f9ed266
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Feb 6 11:55:47 2017 +0000

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

commit f9ed266562e61d892ae84e1459d5a3e8d46ff97c
Author: Frazer Clement <frazer.clement@oracle.com>
Date:   Mon Feb 6 11:35:01 2017 +0000

    Bug #25306089 NDBAPI : FINALISE 'OLD' SCANS OUTSIDE OF TRANSPORTER RELATED LOCKS
    
     - The NdbRecord scan Api is optimised w.r.t the NdbRecAttr based scan Api
     - At the time of introduction, the NdbRecAttr based scan Api was
       modified to use the NdbRecord scan Api internally
     - This required that the NdbRecAttr scan Api build up a set of scan
       parameters, which are used to define an actual NdbRecord scan in a
       'finalisation' step
     - This step was put into NdbScanOperation::executeCursor() which is
       executed as part of sending a scan to the data nodes.
     - Sending is done holding various transporter-layer locks
     - NdbRecAttr scan finalisation is really a 'definition' time operation
       potentially including memory allocation, object id allocation etc
     - Moving finalisation out of sending into the preparation phase allows
       it to be done without holding locks which :
       - Reduces hold time on contended locks
       - Avoids risks of deadlocks when adding locking to finalise()
    
     - This fix moves the finalise() step into executeAsynchPrepare(), which
       is called without holding any transporter locks
     - Additionally :
       - The fix for bug#42545 is modified to cover other scenarios where
         user code error checking is insufficient - any prepared scan
         (NdbRecAttr or NdbRecord) is covered for an unguarded nextResult()
         call
       - NdbScanOperation::close() is modified to avoid waiting for signals
         from the data node regarding a scan, when none were sent.
         This improves API error handling for cases other than data node
         failure where a prepared scan is not sent.
       - A new NdbApi error code 4342 is added to catch cases where a scan
         is defined but not prepared.
       - A new testcase testNdbApi -n OldApiScanFinalise is added to show
         the mechanisms working.

commit 548104613aa755cee05b55940a986ba1124acf28
Merge: 9a105d8 490bb42
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Feb 3 19:12:31 2017 +0530

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

commit 490bb42f41e89a2229e32e439a43dab53c42644f
Merge: 6222a2b b9c2b1f
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Feb 3 19:10:51 2017 +0530

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

commit b9c2b1f2038cbd658655902ad7c879b38ceac723
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Feb 3 19:05:24 2017 +0530

    Bug#23553507
    
    NDB FK CASCADE UPDATE SHOWS WRONG RESULT IF QUERY CACHE IS ENABLED
    
    When query cache is enabled in mysqld, doing transactions on ndb tables
    with cascade enabled foreign keys return inconsistent results. When a
    parent table is updated, the cascading update automatically updates the
    child table. But mysqld is not aware of this child table update. Due to
    this when a select is applied on the child table following a related
    parent table update, the select is fetched from the query cache, which
    turns out to be old data as the update has changed child's tuples also.
    
    This patch fixes that by adding all the child tables of the parent table
    transitively to an internal list when the parent table gets updated. The
    ndb data engine looks at this list to make decisions on whether to use
    the query cache for a particular query or not and in turn informs it to
    the mysqld.

commit b70c4dd42a3b9ff62fa8d7a051a1ff08d50dffef
Author: Yashwant Sahu <yashwant.sahu@oracle.com>
Date:   Fri Feb 3 16:36:18 2017 +0530

    Added more tests.

commit 057c5ea59ecf4417583b251ba8052e212b52641a
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 2 11:36:07 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove the NSS_ALTERED stats of NDB_SHARE_STATE since it no longer
       trigger any special code.
     - prefix a few  "inplace alter" function with inplace_alter__

commit 1882488f61805ea1b608ac7429e12d91f721e095
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 2 11:20:47 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - rewrite ndbcluster_discover() to remove goto logic, improve logging.

commit 6a6618060493c43634a93418bc2926848e5bf033
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 2 10:59:45 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - remove the case where share's state is 'altered' and there is a need
       to read table defintion from disk. There should simply not be such
       a case, either table exist in dictionary of NDB or not.

commit ab2a331d8d0a815523fa75e78b79c18699c6bd0b
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 1 12:15:58 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - add workaround for table being marked as hidden. Since 'hidden'
       status is part of serialized table definition it will otherwise
       be detected as an inconsistency between NDB dictionary and DD when
       opening the table.

commit 11513e54057670dfadddb4c296cbec9ea1f50129
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 1 11:33:37 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - since the serialized table definition contains the table name
       it must be generated and saved to NDB when renaming table during
       copying alter table or rename table.
     - add debug time function which check that serialized table definition
       of table to be renamed matches

commit e311cce9b224c3bfd3ffae39826f8ab9ccd90653
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 1 10:01:05 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - when performing inplace alter table, serialize the table
       definition from data dictionary and save it as extra metadata
       in NDB's dictionary.
     - rename inplace_alter_frm() to inplace_set_sdi_and_alter_in_ndb()
     - reorganize inplace_set_sdi_and_alter_in_ndb() to be a static
       helper function which does not use anything from ha_ndbcluster

commit eea3794d24dbe38a0f7d95cdc7bcd33b4cd42435
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Wed Feb 1 09:06:27 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - when opening table, check that the serialized table definition
       from data dictionary matches the serialized table definition
       in NDB's dictionary

commit 147f42912c5005200ddd777535916d87114bfb24
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Tue Jan 31 15:50:45 2017 +0100

    WL#9185 MySQL Cluster support for new DD
    
     - when creating table, serialize the table definition
       and save it as "extra metadata" with version 2 in the
       dictionary of NDB

commit 9a105d8d11f0cff7d5de52d40068726083706b15
Merge: f321baa 6222a2b
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Feb 3 10:26:51 2017 +0100

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

commit 6222a2bf2ad68bcbe42ad723dc2206cc046ce7b2
Merge: 6c9a930 2c8f3e7
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Feb 3 10:25:42 2017 +0100

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

commit 2c8f3e7e11050d1923f2a7d8d66d92bda14e1395
Author: Ole John Aske <ole.john.aske@oracle.com>
Date:   Fri Feb 3 10:15:07 2017 +0100

    The ATR test 'testSpj -n ScanJoinError' sometimes failes
    with a 600s 'timeout'. Looking at the 'passed' tests, we find
    that the test could take more 9mins to complete, so the 10min
    timeout is probably to low to acount for various hardware,
    
    Increase timeout to 1200sec

commit b42eb92bf3d3a6b389687b62df03df459aa87ebf
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 3 10:03:44 2017 +0100

    Fix compile-cluster for embedded
    
     - remove argumement requesting to build embedded server

commit b30d38d19e2703d1110b2bc7cfaf779ef3907db0
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Fri Feb 3 10:02:26 2017 +0100

    Fix compile-cluster for win
    
     - improve the storage/ndb/compile-cluster script to work
       also on msys shell.
     - default to request x64 architecture on Windows since that
       is the only supported now.
     - change the call to system() to use one arg in order to avoid
       shell quoting problems on msys
     - default to "just configure" on Windows

commit f321baa174d25460070159e2f5445f5969337ef5
Merge: e2a1d77 6c9a930
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Feb 3 00:49:28 2017 +0530

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

commit 6c9a930028861203f9b2a913fe5615c0260a0ea1
Merge: 71b1876 eee674c
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Feb 3 00:46:41 2017 +0530

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

commit eee674c41c551d2d687f149e7e7c8605038bec9b
Author: Lakshmi Narayanan Sreethar <lakshmi.narayanan.sreethar@oracle.com>
Date:   Fri Feb 3 00:44:06 2017 +0530

    Bug#24666177
    
    PARENT TABLE'S HANDLER NOT UPDATED AFTER ADDING A FK DEPENDENCY
    
    When a foreign key is added or dropped from a table using the alter
    table query, the child's metadata is reloaded in the mysqld handler. But
    the parent table's metadata is not reloaded. Due to this the fk
    information in parent's handler becomes obsolete. When a subsequent
    query comes in that depends on this particular foreign key information,
    it might return bad results. Similar problem happens also after a
    foreign key drop.
    
    This patch fixes that by flushing out the cached parent table definition
    after a successful foreign key ddl query.

commit 799f42ed3a8d46fef98622237ca98836a513e6f7
Author: Magnus Blåudd <magnus.blaudd@oracle.com>
Date:   Thu Feb 2 10:45:34 2017 +0100

    Bug#25437227 REMOVE #IFDEF HAVE_NDB_BINLOG
    
     - follow up fix to also remove the WITH_NDB_BINLOG
       compile time option. There is no part of storage/ndb/ or
       ha_ndbcluster that can be compiled without binlog now.

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 e2a1d775657a5e1cba01005e170e56485d70edeb
Merge: 191dccb 71b1876
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 1 10:50:22 2017 +0100

    Merge branch 'mysql-5.7-cluster-7.5' into mysql-5.7-cluster-7.6 (Bug#25480288)

commit 71b187656a51b3dd54b3832630f7e5da58d44304
Merge: afa3423 6e34a7a
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 1 10:49:21 2017 +0100

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

commit 6e34a7afd6448ad1b969355152187df6ac60b817
Merge: d0b85d8 b518ae6
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 1 10:47:50 2017 +0100

    Merge branch 'mysql-5.6-cluster-7.3' into mysql-5.6-cluster-7.4 (Bug#25480288)

commit b518ae664ccbbe2997d40b43e094175448293fba
Merge: 3b00b06 b08866f
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Wed Feb 1 10:45:30 2017 +0100

    Merge branch 'mysql-5.5-cluster-7.2' into mysql-5.6-cluster-7.3 (Bug#25480288)

commit b08866f462b5fc0072b5ce1239cc416de019a957
Author: Mauritz Sundell <mauritz.sundell@oracle.com>
Date:   Tue Jan 31 16:13:46 2017 +0100

    Bug#25480288 DEBUG COMPILED NDB_CPCD CRASH WHEN FAILING TO STOP PROCESS DUE TO ASSERT
    
    Make ndb_cpcd keep processes defined until verified stopped.
    
    Processes could be marked stopped while still running.
    This can cause processes that should be killed to continue after being
    undefined to cpcd, locking up resources such as tcp-ports which can cause
    new jobs fail which tries to use same ports.

commit 83ab6995c3e1b97061624f1b927a67a8c7939160
Merge: 3f1302e 99a4231
Author: Arnab Ray <arnab.r.ray@oracle.com>
Date:   Tue Jan 31 15:55:21 2017 +0530

    Merge branch 'mysql-trunk' into mysql-trunk-cluster

commit 191dccb57b54abd633039b00ea38d8f57e6253e8
Author: Hery Ramilison <hery.ramilison@oracle.com>
Date:   Fri Jan 27 11:07:28 2017 +0100

    Raise version number after cloning 7.6.1

commit 26a9253bf0f5574e280b24c59d839f05fbd1a5c0
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Wed Jan 25 11:47:50 2017 +0100

    Revert WL#10195
    Copyright headers still updated

commit 19b3dc55e0fbb386888d6138621944f0c92e60e7
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:51:00 2017 +0100

    WL#10195
    Fix disk scans properly by ensuring that pages are checked if they
    have been written for this table. If not the page is initialised to
    an empty table to ensure that it can be used for later inserts.

commit 2d925210f15d11804745f861558372999081c025
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:47:12 2017 +0100

    BUG#25353234: Null merge to prepare for real fix of this problem

commit 491334366a7833c61c4b9d8245dc6ea1c0cd676e
Merge: 2b6b2ee afa3423
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:44:55 2017 +0100

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

commit afa3423349c396c6074527200de394f08a1755b1
Merge: 9de6491 d0b85d8
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:44:13 2017 +0100

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

commit d0b85d888d3a268e49cc804d125eeeccb892bcac
Merge: a8490ee 3b00b06
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:44:01 2017 +0100

    Manual merge

commit 3b00b069d8b6d389089d37b130a12cb60a38eca9
Merge: 62613e1 01be464
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:41:49 2017 +0100

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

commit 01be464acfd953d87cf7afccc59909ad1c38704a
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:40:06 2017 +0100

    BUG#25353234
    Disk scan disabled also for backups, it can potentially
    deliver stale data from old tables in the context of
    drop disk data tables and also can cause crash.

commit 2b6b2ee799653a3eed0e9f597fb5b4acabfef273
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:25:59 2017 +0100

    WL#10174
    When we see an IO lag on any of the log parts in an LDM we will
    decide that this is enough to slow down the LCP writing since the
    disk is overloaded. Obviously this condition should be that if
    any log part in any LDM is overloaded then the disk is overloaded.
    So we ensure that this reporting is done for all LDMs and not only
    for one LDM.

commit c97d34048b179a57cb192d40e52560ebcc8a4d1b
Author: Mikael Ronström <mikael.ronstrom@oracle.com>
Date:   Tue Jan 24 21:17:11 2017 +0100

    WL#10188: Remove selected jam's

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
