GitHub user rhtyd opened a pull request:

    https://github.com/apache/cloudstack/pull/1517

    engine/schema: fix upgrade path to work with MySQL 5.7

    Found this issue when using MySQL 5.7 with Ubuntu 16.04. The upgrade path 
fix removes an invalid `IGNORE` param that is deprecated now, in the upgrade 
path we run the alter statement to add an index only if it does not exist so 
we're good.
    
    For MySQL 5.7, we'll also need to update the docs at some point to include 
`server-id` along with other parameters. Some of the SQL statements used 
throughout engine/schema don't adhere to SQL 99 standard which is enforced by 
default in MySQL 5.7, therefore the following sql-mode (for backward 
compatibility with mysql 5.6 modes) will be necessary for anyone willing to use 
MySQL 5.7 (until we fix codebase wide raw and generated sql statements to be 
SQL99 compliant):
    
    
sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_ENGINE_SUBSTITUTION"
    server-id   = 1
    innodb_rollback_on_timeout=1
    innodb_lock_wait_timeout=600
    max_connections=350
    log-bin=mysql-bin
    binlog-format = 'ROW'
    
    /cc @swill @jburwell @agneya2001 @wido @DaanHoogland  and others

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/shapeblue/cloudstack mysql-5.7-upgradefix

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cloudstack/pull/1517.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1517
    
----
commit c63ea0a240df0c5af2802b424d70083bbfd0e919
Author: Rohit Yadav <rohit.ya...@shapeblue.com>
Date:   2016-04-25T09:17:22Z

    engine/schema: fix upgrade path to work with MySQL 5.7
    
    Found this issue when using MySQL 5.7 with Ubuntu 16.04 with following 
settings:
    
    
sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,ERROR_FOR_DIVISION_BY_ZERO,NO_ZERO_DATE,NO_ZERO_IN_DATE,NO_ENGINE_SUBSTITUTION"
    server-id   = 1
    innodb_rollback_on_timeout=1
    innodb_lock_wait_timeout=600
    max_connections=350
    log-bin=mysql-bin
    binlog-format = 'ROW'
    
    Signed-off-by: Rohit Yadav <rohit.ya...@shapeblue.com>

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to