List:Commits« Previous MessageNext Message »
From:Iggy Galarza Date:June 15 2012 2:48pm
Subject:bzr push into mysql-trunk branch (iggy.galarza:4019 to 4020)
View as plain text  
 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 Galarza18 Jun