1. 19 Nov, 2010 7 commits
    • Vladislav Vaintroub's avatar
      Bug#58313: CMake stops with VS Express if -DBUILD_CONFIG=mysql_release.cmake · 86197142
      Vladislav Vaintroub authored
      Bug : -DBUILD_CONFIG=mysql_release sets SIGNCODE parameter which requires 
      singtool.exe (part of Windows SDK)  in order to be able to sign the binaries (
      only if valid certificate is found). However singtool is not a part of the SDK shipped
      with Visual Studio Express, so the build fails claiming missing singtools.exe
      
      Fix: Do not  use SIGNCODE  wiith VC Express.
      
      Also, fix broken nmake build (*.rc files could not be compiled due to ADD_DEFINITIONS
      contaning C/C++ compiler specific flags)
      86197142
    • Vladislav Vaintroub's avatar
      merge · be0ff408
      Vladislav Vaintroub authored
      be0ff408
    • Dmitry Lenev's avatar
      Fix tree name which was accidentally changed · 86da427a
      Dmitry Lenev authored
      during the merge.
      86da427a
    • Dmitry Lenev's avatar
      Merged recent change from mysql-5.5-bugteam into · df2c54f2
      Dmitry Lenev authored
      mysql-5.5-runtime tree.
      df2c54f2
    • Dmitry Lenev's avatar
      Suppress false-positive uninitialized variable use · ce16c4fb
      Dmitry Lenev authored
      warnings in Event_queue::get_top_for_execution_if_time()
      method which has caused -Werror build to fail.
      ce16c4fb
    • Dmitry Lenev's avatar
      Fix for bug #57985 "ONLINE/FAST ALTER PARTITION can fail and · 602a2225
      Dmitry Lenev authored
      leave the table unusable".
       
      Failing ALTER statement on partitioned table could have left
      this table in an unusable state. This has happened in cases
      when ALTER was executed using "fast" algorithm, which doesn't 
      involve copying of data between old and new versions of table, 
      and the resulting new table was incompatible with partitioning
      function in some way.
       
      The problem stems from the fact that discrepancies between new 
      table definition and partitioning function are discovered only 
      when the table is opened. In case of "fast" algorithm this has
      happened too late during ALTER's execution, at the moment when
      all changes were already done and couldn't have been reverted.
       
      In the cases when "slow" algorithm, which copies data, is used 
      such discrepancies are detected at the moment new table
      definition is opened implicitly when new version of table is
      created in storage engine. As result ALTER is aborted before 
      any changes to table were done.
       
      This fix tries to address this issue by ensuring that "fast"
      algorithm behaves similarly to "slow" algorithm and checks
      compatibility between new definition and partitioning function 
      by trying to open new definition after .FRM file for it has 
      been created.
       
      Long term we probably should implement some way to check
      compatibility between partitioning function and new table
      definition which won't involve opening it, as this should
      allow much cleaner fix for this problem.
      
      mysql-test/r/partition_innodb.result:
        Added test for bug #57985 "ONLINE/FAST ALTER PARTITION can
        fail and leave the table unusable".
      mysql-test/t/partition_innodb.test:
        Added test for bug #57985 "ONLINE/FAST ALTER PARTITION can
        fail and leave the table unusable".
      sql/sql_table.cc:
        Ensure that in cases when .FRM for partitioned table is
        created without creating table in storage engine (e.g.
        during "fast" ALTER TABLE) we still open table definition. 
        This allows to check that definition of created table/.FRM 
        is compatible with its partitioning function.
      602a2225
    • Alexander Barkov's avatar
      Bug#57306 SHOW PROCESSLIST does not display string literals well. · ee66d905
      Alexander Barkov authored
      A post-patch fixing test failures on Windows.
      
      Host name in "SHOW PROCESSLIST" is displayed with port number
      for some reasons.
      ee66d905
  2. 18 Nov, 2010 14 commits
  3. 17 Nov, 2010 5 commits
    • Vladislav Vaintroub's avatar
      Bug#58272: -DBUILD_CONFIG=mysql_release is broken with cmake 2.8.3 · bd15ec00
      Vladislav Vaintroub authored
      The reason  for the bug is that :
      -  we use system checks in cmake/os/mysql_release.cmake 
      -  we include cmake/os/mysql_release.cmake using CMAKE_USER_MAKE_RULES_OVERRIDE 
      -  this  (having system checks based on TRY_COMPILE inside file pointed by 
         CMAKE_USER_MAKE_RULES_OVERRIDE  does not work with cmake 2.8.3,
         and  according to Kitware was never meant to work, it just happened to work by accident
         until 2.8.2 release (though, it seems not to work wiith 2.6.0 either)
      
      Related CMake bug discussing the situation:
      http://public.kitware.com/Bug/view.php?id=11469  
      
      The fix is to use INCLUDE instead of CMAKE_USER_MAKE_RULES_OVERRIDE as suggested
      by Kitware. The downside is that compile flags are not in cache, but this is  pure cosmetics.
      The functionality is the same,  flags are used for compiling are correct using INCLUDE.
      bd15ec00
    • Davi Arnaut's avatar
      Fix a debug assertion caused by a missing DBUG_RETURN macro. · c4545852
      Davi Arnaut authored
      sql/sql_acl.cc:
        Must use DBUG_RETURN in a function instrumented with DBUG_ENTER.
      c4545852
    • Tor Didriksen's avatar
      Bug #58137 char(0) column cause: my_gcvt: Assertion `width > 0 && to != ((void *)0)' failed · 36ab2574
      Tor Didriksen authored
      
      
      mysql-test/r/func_math.result:
        Add test for Bug #58137
      mysql-test/t/func_math.test:
        Add test for Bug #58137
      sql/field.cc:
        Skip calling my_gcvt() if we are trying to insert a double into a char(0) column.
      36ab2574
    • Davi Arnaut's avatar
      cd9bee8d
    • Davi Arnaut's avatar
      Bug#57994: Compiler flag change build error : my_redel.c · c3246242
      Davi Arnaut authored
      Use __builtin_stpcpy only if the system supports stpcpy.
      This is necessary as in some cases a call to stpcpy will
      be emitted if the built-in can not optimized.
      
      include/m_string.h:
        The expansion of stpcpy (in glibc) causes warnings if the
        return value of strmov is not being used. Since stpcpy is
        a GNU extension and the expansion ends up using a built-in
        provided by GCC, use the compiler provided built-in directly
        when possible. Nonetheless, the C library must have stpcpy
        as a call be emitted if the built-in can not optimized.
      c3246242
  4. 16 Nov, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#57058: SERVER_QUERY_WAS_SLOW not wired up. · 247a696d
      Davi Arnaut authored
      Finalize the server flags after any kind of command is executed.
      To avoid updating the flag multiple times, reorganize code so that
      its invoked only once for each command.
      
      sql/log_event.cc:
        Explicit update after the query is executed in the slave.
      sql/sql_parse.cc:
        Reorganize so that the status flag is updated for any command and
        not done twice for a query command.
      247a696d
  5. 17 Nov, 2010 2 commits
    • Jon Olav Hauglid's avatar
      Merge from mysql-5.5-bugteam to mysql-5.5-runtime · b5ec3607
      Jon Olav Hauglid authored
      No conflicts
      b5ec3607
    • Jon Olav Hauglid's avatar
      Bug #57663 Concurrent statement using stored function and DROP DATABASE · 1e9f239e
      Jon Olav Hauglid authored
                 breaks SBR
      
      The problem was that DROP DATABASE ignored any metadata locks on stored
      functions and procedures held by other connections. This made it
      possible for DROP DATABASE to drop functions/procedures that were in use
      by other connections and therefore break statement based replication.
      (DROP DATABASE could appear in the binlog before a statement using a
      dropped function/procedure.)
      
      This problem was an issue left unresolved by the patch for Bug#30977
      where metadata locks for stored functions/procedures were introduced.
      
      This patch fixes the problem by making sure DROP DATABASE takes
      exclusive metadata locks on all stored functions/procedures to be
      dropped.
      
      Test case added to sp-lock.test.
      1e9f239e
  6. 16 Nov, 2010 10 commits
  7. 15 Nov, 2010 1 commit