3916 Iggy Galarza 2012-07-16
Bug 14333093 - MYSQL 5.6 - WINDOWS INSTALLER DOES PROPERLY INSTALL DEFAULT DATABASE FILES
- Ensure that the User Configuration data directory WiX resource is produced before duplicate features are removed by CMake
added:
packaging/WiX/mysql_server_extra.wxs.in
modified:
packaging/WiX/CMakeLists.txt
packaging/WiX/mysql_server.wxs.in
3915 Roy Lyseng 2012-07-11
Remove support for semi-join with multi-table UPDATE and DELETE
mysql-test/r/innodb_explain_json_non_select_all.result
mysql-test/r/innodb_explain_non_select_all.result
mysql-test/r/myisam_explain_json_non_select_all.result
mysql-test/r/myisam_explain_non_select_all.result
mysql-test/r/subquery_mat_all.result
Modified test results with removed semi-join
sql/sql_resolver.cc
Check that command is SELECT or based on a SELECT when transforming
subqueries into semi-join.
modified:
mysql-test/r/innodb_explain_json_non_select_all.result
mysql-test/r/innodb_explain_non_select_all.result
mysql-test/r/myisam_explain_json_non_select_all.result
mysql-test/r/myisam_explain_non_select_all.result
mysql-test/r/subquery_mat_all.result
sql/sql_resolver.cc
=== modified file 'packaging/WiX/CMakeLists.txt'
--- a/packaging/WiX/CMakeLists.txt 2012-06-15 14:47:32 +0000
+++ b/packaging/WiX/CMakeLists.txt 2012-07-16 22:41:31 +0000
@@ -34,7 +34,7 @@ ENDIF()
ADD_SUBDIRECTORY(ca)
-# mysql-server.wxs.in needs DATADIR_MYSQL_FILES and DATADIR_PERFORMANCE_SCHEMA_FILES, i.e
+# mysql_server_extra.wxs.in needs DATADIR_MYSQL_FILES and DATADIR_PERFORMANCE_SCHEMA_FILES, i.e
# Wix-compatible file lists for ${builddir}\sql\data\{mysql,performance_schema}
FOREACH(dir mysql performance_schema)
@@ -78,7 +78,7 @@ ELSE()
ENDIF()
GET_TARGET_PROPERTY(WIXCA_LOCATION wixca LOCATION)
SET(CPACK_WIX_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/CPackWixConfig.cmake)
-SET(CPACK_WIX_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/custom_ui.wxs")
+SET(CPACK_WIX_INCLUDE "${CMAKE_CURRENT_BINARY_DIR}/mysql_server_extra.wxs;${CMAKE_CURRENT_SOURCE_DIR}/custom_ui.wxs")
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
SET(WixWin64 " Win64='yes'")
@@ -86,11 +86,13 @@ ELSE()
SET(WixWin64)
ENDIF()
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_server_extra.wxs.in
+ ${CMAKE_CURRENT_BINARY_DIR}/mysql_server_extra.wxs)
+
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/create_msi.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/create_msi.cmake
@ONLY)
-
IF(CMAKE_GENERATOR MATCHES "Visual Studio")
SET(CONFIG_PARAM "-DCMAKE_INSTALL_CONFIG_NAME=${CMAKE_CFG_INTDIR}")
ENDIF()
=== modified file 'packaging/WiX/mysql_server.wxs.in'
--- a/packaging/WiX/mysql_server.wxs.in 2012-06-15 14:47:32 +0000
+++ b/packaging/WiX/mysql_server.wxs.in 2012-07-16 22:41:31 +0000
@@ -167,140 +167,6 @@
</Directory>
</Directory>
</Directory>
-
- <!-- Include shortcuts -->
- <DirectoryRef Id='INSTALLDIR'>
- <Directory Id="DesktopFolder"/>
- <Directory Id="ProgramMenuFolder">
- <Directory Id="MysqlProgramMenuFolder" Name="MySQL">
- <Directory Id="MysqlProductMenuFolder" Name="MySQL Server @MAJOR_VERSION@.@MINOR_VERSION@">
- <Component Id="MysqlProductMenuFolder" Guid="*" @WixWin64@>
- <!-- Include a shortcut to the mysql command line client -->
- <Shortcut Id="MysqlCommandLineShellShortcut"
- Name="MySQL @MAJOR_VERSION@.@MINOR_VERSION@ Command Line Client"
- Description="The MySQL Command Line Shell"
- Icon="Icon.MysqlCmdShell"
- Target="[D.bin]mysql.exe"
- Arguments='"--defaults-file=[INSTALLDIR]my.ini" "-uroot" "-p"'
- WorkingDirectory="D.bin"/>
- <?if "@MAJOR_VERSION@.@MINOR_VERSION@" != "5.5" ?>
- <!-- Include another shortcut to the mysql command line client with a different name -->
- <Shortcut Id="MysqlCommandLineShellShortcutUnicode"
- Name="MySQL @MAJOR_VERSION@.@MINOR_VERSION@ Command Line Client - Unicode"
- Description="The MySQL Command Line Shell in UTF8 Mode"
- Icon="Icon.MysqlCmdShell"
- Target="[D.bin]mysql.exe"
- Arguments='"--defaults-file=[INSTALLDIR]my.ini" "-uroot" "-p" "--default-character-set=utf8"'
- WorkingDirectory="D.bin"/>
- <!-- Write Console settings for applications with this name to the registry -->
- <RegistryKey Root="HKCU"
- Key="Console\MySQL @MAJOR_VERSION@.@MINOR_VERSION@ Command Line Client - Unicode"
- Action="createAndRemoveOnUninstall">
- <RegistryValue Type="string" Name="FaceName" Value="Lucida Console"/>
- <RegistryValue Type="integer" Name="FontWeight" Value="400"/>
- </RegistryKey>
- <?endif ?>
- <!-- Make sure this gets deleted on uninstall -->
- <RemoveFolder Id="MysqlProductMenuFolder" Directory="MysqlProductMenuFolder" On="uninstall"/>
- <RemoveFolder Id="MysqlProgramMenuFolder" Directory="MysqlProgramMenuFolder" On="uninstall"/>
- <RegistryValue Root="HKCU" Key="Software\MySQL AB\MySQL Server @MAJOR_VERSION@.@MINOR_VERSION@" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
- </Component>
- </Directory>
- </Directory>
- </Directory>
- </DirectoryRef>
- <Feature Id="ProgramMenu" Level="1" Display="hidden" ConfigurableDirectory="INSTALLDIR">
- <ComponentRef Id="MysqlProductMenuFolder"/>
- </Feature>
-
- <!-- Registry -->
- <!-- We still use "MySQL AB" because we don't want to break software that expects it -->
- <DirectoryRef Id='TARGETDIR'>
- <Component Id="RegKeys" Guid="*">
- <RegistryKey
- Id='MySQLKey'
- Root='HKLM'
- Key='SOFTWARE\MySQL AB\[ProductName]'
- Action='createAndRemoveOnUninstall'>
- <RegistryValue
- Type='string'
- Name='Location'
- Value='[INSTALLDIR]'/>
- <RegistryValue
- Type="string"
- Name="Version"
- Value="[ProductVersion]"/>
- <RegistryValue
- Type="string"
- Name="DataLocation"
- Value="[DATADIR]"/>
- </RegistryKey>
- </Component>
- </DirectoryRef>
- <Feature
- Id='RegKeys'
- Display='hidden'
- Level='1'>
- <ComponentRef Id='RegKeys'/>
- </Feature>
-
- <!-- Datafiles that installation will copy to CommonAppData (initial database)
- They are declared Permanent and NeverOverwrite since it is user data -->
- <DirectoryRef Id='TARGETDIR'>
- <Directory Id="CommonAppDataFolder">
- <Directory Id="datadir.mysql" Name="MySQL">
- <Directory Id="datadir.mysql.mysqlserver"
- Name="MySQL Server @MAJOR_VERSION@.@MINOR_VERSION@">
- <Directory Id="DATADIR" Name=".">
- <Component Id="component.datadir" Guid="d3491319-5dbc-4477-95f3-4f809ef1dd2d">
- <CreateFolder>
- <util:PermissionEx User="[LogonUser]" GenericAll="yes" />
- </CreateFolder>
- </Component>
- <Directory Id="datadir.mysql.mysqlserver.data" Name="data">
- <Directory Id="datadir.mysql.mysqlserver.data.mysql" Name="mysql">
- <Component Id="component.datadir.mysql"
- Guid="19ec0f1f-1a7f-424e-a788-b09346c0a709"
- Permanent="yes" NeverOverwrite="yes">
- <CreateFolder>
- <util:PermissionEx User="[LogonUser]" GenericAll="yes" />
- </CreateFolder>
- @DATADIR_MYSQL_FILES@
- </Component>
- </Directory>
- <Directory Id="datadir.mysql.mysqlserver.data.performance_schema"
- Name="performance_schema">
- <Component Id="component.datadir.performance_schema"
- Guid="af2a6776-2655-431f-a748-9e9f4645acc3"
- Permanent="yes" NeverOverwrite="yes">
- <CreateFolder>
- <util:PermissionEx User="[LogonUser]" GenericAll="yes" />
- </CreateFolder>
- @DATADIR_PERFORMANCE_SCHEMA_FILES@
- </Component>
- </Directory>
- <Directory Id="datadir.mysql.mysqlserver.data.test" Name="test">
- <Component Id="component.datadir.test" Guid="52fa9f0a-fcd1-420a-b2ac-95a8f70ad20a">
- <CreateFolder/>
- </Component>
- </Directory>
- </Directory>
- </Directory>
- </Directory>
- </Directory>
- </Directory>
- </DirectoryRef>
-
- <Feature Id='UserEditableDataFiles'
- Title='Server data files'
- Description='Server data files'
- ConfigurableDirectory='DATADIR'
- Level='1'>
- <ComponentRef Id="component.datadir"/>
- <ComponentRef Id="component.datadir.mysql"/>
- <ComponentRef Id="component.datadir.performance_schema"/>
- <ComponentRef Id="component.datadir.test"/>
- </Feature>
<!-- CPACK_WIX_FEATURES -->
@CPACK_WIX_FEATURES@
=== added file 'packaging/WiX/mysql_server_extra.wxs.in'
--- a/packaging/WiX/mysql_server_extra.wxs.in 1970-01-01 00:00:00 +0000
+++ b/packaging/WiX/mysql_server_extra.wxs.in 2012-07-16 22:41:31 +0000
@@ -0,0 +1,157 @@
+<Include xmlns="http://schemas.microsoft.com/wix/2006/wi"
+ xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
+
+<!--
+ Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; version 2 of the License.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+-->
+ <!-- Include shortcuts -->
+ <DirectoryRef Id='INSTALLDIR'>
+ <Directory Id="DesktopFolder"/>
+ <Directory Id="ProgramMenuFolder">
+ <Directory Id="MysqlProgramMenuFolder" Name="MySQL">
+ <Directory Id="MysqlProductMenuFolder" Name="MySQL Server @MAJOR_VERSION@.@MINOR_VERSION@">
+ <Component Id="MysqlProductMenuFolder" Guid="*" @WixWin64@>
+ <!-- Include a shortcut to the mysql command line client -->
+ <Shortcut Id="MysqlCommandLineShellShortcut"
+ Name="MySQL @MAJOR_VERSION@.@MINOR_VERSION@ Command Line Client"
+ Description="The MySQL Command Line Shell"
+ Icon="Icon.MysqlCmdShell"
+ Target="[D.bin]mysql.exe"
+ Arguments='"--defaults-file=[INSTALLDIR]my.ini" "-uroot" "-p"'
+ WorkingDirectory="D.bin"/>
+ <?if "@MAJOR_VERSION@.@MINOR_VERSION@" != "5.5" ?>
+ <!-- Include another shortcut to the mysql command line client with a different name -->
+ <Shortcut Id="MysqlCommandLineShellShortcutUnicode"
+ Name="MySQL @MAJOR_VERSION@.@MINOR_VERSION@ Command Line Client - Unicode"
+ Description="The MySQL Command Line Shell in UTF8 Mode"
+ Icon="Icon.MysqlCmdShell"
+ Target="[D.bin]mysql.exe"
+ Arguments='"--defaults-file=[INSTALLDIR]my.ini" "-uroot" "-p" "--default-character-set=utf8"'
+ WorkingDirectory="D.bin"/>
+ <!-- Write Console settings for applications with this name to the registry -->
+ <RegistryKey Root="HKCU"
+ Key="Console\MySQL @MAJOR_VERSION@.@MINOR_VERSION@ Command Line Client - Unicode"
+ Action="createAndRemoveOnUninstall">
+ <RegistryValue Type="string" Name="FaceName" Value="Lucida Console"/>
+ <RegistryValue Type="integer" Name="FontWeight" Value="400"/>
+ </RegistryKey>
+ <?endif ?>
+ <!-- Make sure this gets deleted on uninstall -->
+ <RemoveFolder Id="MysqlProductMenuFolder" Directory="MysqlProductMenuFolder" On="uninstall"/>
+ <RemoveFolder Id="MysqlProgramMenuFolder" Directory="MysqlProgramMenuFolder" On="uninstall"/>
+ <RegistryValue Root="HKCU" Key="Software\MySQL AB\MySQL Server @MAJOR_VERSION@.@MINOR_VERSION@" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
+ </Component>
+ </Directory>
+ </Directory>
+ </Directory>
+ </DirectoryRef>
+ <Feature Id="ProgramMenu" Level="1" Display="hidden" ConfigurableDirectory="INSTALLDIR">
+ <ComponentRef Id="MysqlProductMenuFolder"/>
+ </Feature>
+
+ <!-- Registry -->
+ <!-- We still use "MySQL AB" because we don't want to break software that expects it -->
+ <DirectoryRef Id='TARGETDIR'>
+ <Component Id="RegKeys" Guid="*">
+ <RegistryKey
+ Id='MySQLKey'
+ Root='HKLM'
+ Key='SOFTWARE\MySQL AB\[ProductName]'
+ Action='createAndRemoveOnUninstall'>
+ <RegistryValue
+ Type='string'
+ Name='Location'
+ Value='[INSTALLDIR]'/>
+ <RegistryValue
+ Type="string"
+ Name="Version"
+ Value="[ProductVersion]"/>
+ <RegistryValue
+ Type="string"
+ Name="DataLocation"
+ Value="[DATADIR]"/>
+ </RegistryKey>
+ </Component>
+ </DirectoryRef>
+ <Feature
+ Id='RegKeys'
+ Display='hidden'
+ Level='1'>
+ <ComponentRef Id='RegKeys'/>
+ </Feature>
+
+ <!-- Datafiles that installation will copy to CommonAppData (initial database)
+ They are declared Permanent and NeverOverwrite since it is user data -->
+ <DirectoryRef Id='TARGETDIR'>
+ <Directory Id="CommonAppDataFolder">
+ <Directory Id="datadir.mysql" Name="MySQL">
+ <Directory Id="datadir.mysql.mysqlserver"
+ Name="MySQL Server @MAJOR_VERSION@.@MINOR_VERSION@">
+ <Directory Id="DATADIR" Name=".">
+ <Component Id="component.datadir" Guid="d3491319-5dbc-4477-95f3-4f809ef1dd2d">
+ <CreateFolder>
+ <util:PermissionEx User="[LogonUser]" GenericAll="yes" />
+ </CreateFolder>
+ </Component>
+ <Directory Id="datadir.mysql.mysqlserver.data" Name="data">
+ <Directory Id="datadir.mysql.mysqlserver.data.mysql" Name="mysql">
+ <Component Id="component.datadir.mysql"
+ Guid="19ec0f1f-1a7f-424e-a788-b09346c0a709"
+ Permanent="yes" NeverOverwrite="yes">
+ <CreateFolder>
+ <util:PermissionEx User="[LogonUser]" GenericAll="yes" />
+ </CreateFolder>
+ @DATADIR_MYSQL_FILES@
+ </Component>
+ </Directory>
+ <Directory Id="datadir.mysql.mysqlserver.data.performance_schema"
+ Name="performance_schema">
+ <Component Id="component.datadir.performance_schema"
+ Guid="af2a6776-2655-431f-a748-9e9f4645acc3"
+ Permanent="yes" NeverOverwrite="yes">
+ <CreateFolder>
+ <util:PermissionEx User="[LogonUser]" GenericAll="yes" />
+ </CreateFolder>
+ @DATADIR_PERFORMANCE_SCHEMA_FILES@
+ </Component>
+ </Directory>
+ <Directory Id="datadir.mysql.mysqlserver.data.test" Name="test">
+ <Component Id="component.datadir.test" Guid="52fa9f0a-fcd1-420a-b2ac-95a8f70ad20a">
+ <CreateFolder/>
+ </Component>
+ </Directory>
+ </Directory>
+ </Directory>
+ </Directory>
+ </Directory>
+ </Directory>
+ </DirectoryRef>
+
+ <Feature Id='UserEditableDataFiles'
+ Title='Server data files'
+ Description='Server data files'
+ ConfigurableDirectory='DATADIR'
+ Level='1'>
+ <ComponentRef Id="component.datadir"/>
+ <ComponentRef Id="component.datadir.mysql"/>
+ <ComponentRef Id="component.datadir.performance_schema"/>
+ <ComponentRef Id="component.datadir.test"/>
+ </Feature>
+
+</Include>
+
+
+
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk branch (iggy.galarza:3915 to 3916) | Iggy Galarza | 17 Jul |