4020 Iggy Galarza 2012-06-15
Remove Instance Config Wizard and it's associated UI elements from the Windows MSI package.
added:
packaging/WiX/mysqlcommandlineshell.ico
modified:
packaging/WiX/CMakeLists.txt
packaging/WiX/mysql_server.wxs.in
4019 kevin.lewis@stripped 2012-06-15
Bug #14169459 INNODB; DROP TABLE DOES NOT DELETE THE IBD FILE
FOR A TEMPORARY TABLE.
This patch has a number of changes. The main one to fix this problem
is an extra test in row_drop_table_for_mysql() for '!temp' before
calling fil_space_for_table_exists_in_mem() to check for 'unknown or
discarded' tablespaces.
The patch also adds the ibd extension to the temporary tablespace path
before creating a fil_space_t. This is how 5.5 does it.
Another change is in fil_delete_file(), a new function associated with
the worklog 5522, where fil_make_cfg_name() and fil_make_ibt_name() are
called with a tablename instead of a path as they should.
This caused the function to not work at all for cfg and ibt files.
Because of this, innodb-index-online.test was leaving a 't1.ibt' file
behind in the data directory.
Also, in fil_delete_tablespace(), where it is called with rename=true,
the logic was slightly wrong so that if an ibt file already existed, the
code would fail to rename the ibd tablespace to the ibt extention.
The function os_file_delete_if_exists() is improved so that if a directory
does not exist on Windows, it behaves just a s if the file does not exist.
Some related functions were changed to use bool instead of ibool.
And row_drop_table_for_mysql() was cleaned up in its use of multiple
tablename variables.
added:
mysql-test/suite/innodb/r/innodb_bug14169459.result
mysql-test/suite/innodb/t/innodb_bug14169459.test
modified:
storage/innobase/fil/fil0fil.cc
storage/innobase/include/fil0fil.h
storage/innobase/include/os0file.h
storage/innobase/os/os0file.cc
storage/innobase/row/row0mysql.cc
storage/innobase/srv/srv0start.cc
storage/innobase/trx/trx0sys.cc
=== modified file 'packaging/WiX/CMakeLists.txt'
--- a/packaging/WiX/CMakeLists.txt 2011-06-30 15:50:45 +0000
+++ b/packaging/WiX/CMakeLists.txt 2012-06-15 14:47:32 +0000
@@ -1,4 +1,4 @@
-# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 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
@@ -34,7 +34,7 @@ ENDIF()
ADD_SUBDIRECTORY(ca)
-# extra.wxs.in needs DATADIR_MYSQL_FILES and DATADIR_PERFORMANCE_SCHEMA_FILES, i.e
+# mysql-server.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,12 +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_BINARY_DIR}/extra.wxs;${CMAKE_CURRENT_SOURCE_DIR}/custom_ui.wxs")
-
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/create_msi.cmake.in
- ${CMAKE_CURRENT_BINARY_DIR}/create_msi.cmake
- @ONLY)
-
+SET(CPACK_WIX_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/custom_ui.wxs")
IF(CMAKE_SIZEOF_VOID_P EQUAL 8)
SET(WixWin64 " Win64='yes'")
@@ -91,8 +86,10 @@ ELSE()
SET(WixWin64)
ENDIF()
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/extra.wxs.in
- ${CMAKE_CURRENT_BINARY_DIR}/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}")
=== modified file 'packaging/WiX/mysql_server.wxs.in'
--- a/packaging/WiX/mysql_server.wxs.in 2011-06-30 15:50:45 +0000
+++ b/packaging/WiX/mysql_server.wxs.in 2012-06-15 14:47:32 +0000
@@ -2,7 +2,7 @@
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<!--
- Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2010, 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
@@ -123,6 +123,9 @@
<Icon
Id="icon.ico"
SourceFile="@CMAKE_CURRENT_SOURCE_DIR@/MySQLServer.ico"/>
+ <Icon
+ Id="Icon.MysqlCmdShell"
+ SourceFile='@CMAKE_CURRENT_SOURCE_DIR@/mysqlcommandlineshell.ico' />
<Property
Id="ARPPRODUCTICON"
Value="icon.ico" />
@@ -165,6 +168,140 @@
</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/mysqlcommandlineshell.ico'
Binary files a/packaging/WiX/mysqlcommandlineshell.ico 1970-01-01 00:00:00 +0000 and b/packaging/WiX/mysqlcommandlineshell.ico 2012-06-15 14:47:32 +0000 differ
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk branch (iggy.galarza:4019 to 4020) | Iggy Galarza | 18 Jun |