1. 02 Aug, 2007 1 commit
    • unknown's avatar
      CMakeLists.txt (several), make_win_bin_dist: · 7bd93758
      unknown authored
        Aligned client library build and use with the Unix version when it
        comes to what source to include directly in the builds, and what
        libraries to link with (bug#30118).
      
        Also reviewed, corrected and made more clear when static or dynamic
        Thread Local Storage is to be used. Some code duplication was removed,
        and some redundant library usage were removed, reducing the risk of
        incorrect TLS usage.
      
      
      client/CMakeLists.txt:
        - Removed code duplication by moving build of "mysqlclient" to
          the "libmysql" directory
        - Link clients with the new "mysqlclient_notls", to protect for
          the case the clients use more than the client API, and access
          thread data directly.
        - Synced explicit target addition of sources with Unix.
      dbug/CMakeLists.txt:
        No need to set CXX flags, no C++ code
      libmysql/CMakeLists.txt:
        - Aligned more with Unix version when it comes to included source files
        - Build both DLL and static library in this directory
        - Produce separe static TLS version of the static client library, for
           use when building clients in this build that might access TLS
           storage directly.
      mysys/CMakeLists.txt:
        We only have to build the static TLS version, as no clients are
        linking directly with the "mysys" library.
      scripts/make_win_bin_dist:
        Ajusted paths to new "mysqlclient.lib" location in source tree
      sql/CMakeLists.txt:
        Removed duplicate "ha_blackhole.cc" in file listing
        Removed explicit link to "dbug.lib" not needed
        Link with the static TLS "mysqlclient_notls"
      tests/CMakeLists.txt:
        Removed explicit link to "dbug", "mysys", "yassl", "taocrypt" and
        "zlib" not needed.
        Added explicit source addition "../mysys/my_memmem.c".
        No need for setting CXX flags, no C++ code.
        Use the static TLS "mysqlclient_notls" for linkage.
      zlib/CMakeLists.txt:
        No need for a dynamic TLS version of this library, no access to thread
        storage is done from it. Also no need to define MYSQL_CLIENT, not used,
        or __WIN32__ that is handled by the library header without this define.
      7bd93758
  2. 27 Jul, 2007 3 commits
    • unknown's avatar
      Merge jperkin@bk-internal.mysql.com:/home/bk/mysql-5.0-build · 9116d540
      unknown authored
      into  production.mysql.com:/usersnfs/jperkin/bk/mysql-5.0
      
      9116d540
    • unknown's avatar
      Merge jperkin@bk-internal.mysql.com:/home/bk/mysql-5.0-build · b58c571f
      unknown authored
      into  production.mysql.com:/usersnfs/jperkin/bk/mysql-5.0
      
      b58c571f
    • unknown's avatar
      More fixes and cleanups for bug#28585: · ef03ebd7
      unknown authored
        - make the 'dist-hook' from top-level Makefile work again.
        - we can find my_print_defaults from --basedir by parsing command
          line arguments prior to running my_print_defaults.
        - take advantage of additional command line parsing and allow the
          --no-defaults etc arguments to work anywhere rather than having
          to be the first argument.
        - find SQL files either from binary archive or source install.
        - consolidate and tidy code and error messages.
      
      
      scripts/mysql_install_db.sh:
        Consolidate error messages.
      ef03ebd7
  3. 26 Jul, 2007 11 commits
    • unknown's avatar
      Merge debian.(none):/M50/rowlock-5.0 · 513755db
      unknown authored
      into  debian.(none):/M50/push-5.0
      
      513755db
    • unknown's avatar
      Remove the "row_lock" suite from the sources. · 98624f58
      unknown authored
      For more information, see WL#3866 and the bugs numbered 28685 and 20390.
      
      
      BitKeeper/deleted/.del-readme.txt:
        Delete: mysql-test/suite/row_lock/readme.txt
      BitKeeper/deleted/.del-summary_of_sel_test.txt:
        Delete: mysql-test/suite/row_lock/summary_of_sel_test.txt
      BitKeeper/deleted/.del-innodb_row_lock_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_1.result
      BitKeeper/deleted/.del-innodb_row_lock_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_2.result
      BitKeeper/deleted/.del-innodb_row_lock_3.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_3.result
      BitKeeper/deleted/.del-innodb_row_lock_4.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_4.result
      BitKeeper/deleted/.del-innodb_row_lock_5.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_5.result
      BitKeeper/deleted/.del-innodb_row_lock_big_tab.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_big_tab.result
      BitKeeper/deleted/.del-innodb_row_lock_big_tab_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_1.result
      BitKeeper/deleted/.del-innodb_row_lock_big_tab_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_big_tab_2.result
      BitKeeper/deleted/.del-innodb_row_lock_trig_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_trig_1.result
      BitKeeper/deleted/.del-innodb_row_lock_trig_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_trig_2.result
      BitKeeper/deleted/.del-innodb_row_lock_view_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_1.result
      BitKeeper/deleted/.del-row_lock.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock.inc
      BitKeeper/deleted/.del-row_lock_big_tab.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_big_tab.inc
      BitKeeper/deleted/.del-row_lock_big_tab_1.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_big_tab_1.inc
      BitKeeper/deleted/.del-row_lock_big_tab_2.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_big_tab_2.inc
      BitKeeper/deleted/.del-row_lock_trig.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_trig.inc
      BitKeeper/deleted/.del-row_lock_view.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_view.inc
      BitKeeper/deleted/.del-row_lock_view_mix.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_view_mix.inc
      BitKeeper/deleted/.del-row_lock_view_storedp.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_view_storedp.inc
      BitKeeper/deleted/.del-row_lock_view_trig.inc:
        Delete: mysql-test/suite/row_lock/include/row_lock_view_trig.inc
      BitKeeper/deleted/.del-innodb_row_lock_view_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_2.result
      BitKeeper/deleted/.del-innodb_row_lock_view_mix_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_1.result
      BitKeeper/deleted/.del-innodb_row_lock_view_mix_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_mix_2.result
      BitKeeper/deleted/.del-innodb_row_lock_view_storedp_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_1.result
      BitKeeper/deleted/.del-innodb_row_lock_view_storedp_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_storedp_2.result
      BitKeeper/deleted/.del-innodb_row_lock_view_trig_1.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_1.result
      BitKeeper/deleted/.del-innodb_row_lock_view_trig_2.result:
        Delete: mysql-test/suite/row_lock/r/innodb_row_lock_view_trig_2.result
      BitKeeper/deleted/.del-ndb_row_lock_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_1.result
      BitKeeper/deleted/.del-ndb_row_lock_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_2.result
      BitKeeper/deleted/.del-ndb_row_lock_3.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_3.result
      BitKeeper/deleted/.del-ndb_row_lock_4.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_4.result
      BitKeeper/deleted/.del-ndb_row_lock_5.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_5.result
      BitKeeper/deleted/.del-ndb_row_lock_big_tab.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_big_tab.result
      BitKeeper/deleted/.del-ndb_row_lock_big_tab_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_1.result
      BitKeeper/deleted/.del-ndb_row_lock_big_tab_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_big_tab_2.result
      BitKeeper/deleted/.del-ndb_row_lock_trig_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_trig_1.result
      BitKeeper/deleted/.del-ndb_row_lock_trig_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_trig_2.result
      BitKeeper/deleted/.del-ndb_row_lock_view_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_1.result
      BitKeeper/deleted/.del-ndb_row_lock_view_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_2.result
      BitKeeper/deleted/.del-innodb_row_lock_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_1.test
      BitKeeper/deleted/.del-innodb_row_lock_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_2.test
      BitKeeper/deleted/.del-innodb_row_lock_3.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_3.test
      BitKeeper/deleted/.del-innodb_row_lock_4.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_4.test
      BitKeeper/deleted/.del-innodb_row_lock_5.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_5.test
      BitKeeper/deleted/.del-innodb_row_lock_big_tab.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_big_tab.test
      BitKeeper/deleted/.del-innodb_row_lock_big_tab_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_1.test
      BitKeeper/deleted/.del-innodb_row_lock_big_tab_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_big_tab_2.test
      BitKeeper/deleted/.del-innodb_row_lock_trig_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_trig_1.test
      BitKeeper/deleted/.del-innodb_row_lock_trig_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_trig_2.test
      BitKeeper/deleted/.del-innodb_row_lock_view_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_1.test
      BitKeeper/deleted/.del-innodb_row_lock_view_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_2.test
      BitKeeper/deleted/.del-innodb_row_lock_view_mix_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_1.test
      BitKeeper/deleted/.del-ndb_row_lock_view_mix_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_1.result
      BitKeeper/deleted/.del-ndb_row_lock_view_mix_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_mix_2.result
      BitKeeper/deleted/.del-ndb_row_lock_view_storedp_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_1.result
      BitKeeper/deleted/.del-ndb_row_lock_view_storedp_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_storedp_2.result
      BitKeeper/deleted/.del-ndb_row_lock_view_trig_1.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_1.result
      BitKeeper/deleted/.del-ndb_row_lock_view_trig_2.result:
        Delete: mysql-test/suite/row_lock/r/ndb_row_lock_view_trig_2.result
      BitKeeper/deleted/.del-innodb_row_lock_view_mix_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_mix_2.test
      BitKeeper/deleted/.del-innodb_row_lock_view_storedp_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_1.test
      BitKeeper/deleted/.del-innodb_row_lock_view_storedp_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_storedp_2.test
      BitKeeper/deleted/.del-innodb_row_lock_view_trig_1.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_1.test
      BitKeeper/deleted/.del-innodb_row_lock_view_trig_2.test:
        Delete: mysql-test/suite/row_lock/t/innodb_row_lock_view_trig_2.test
      BitKeeper/deleted/.del-ndb_row_lock_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_1.test
      BitKeeper/deleted/.del-ndb_row_lock_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_2.test
      BitKeeper/deleted/.del-ndb_row_lock_3.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_3.test
      BitKeeper/deleted/.del-ndb_row_lock_4.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_4.test
      BitKeeper/deleted/.del-ndb_row_lock_5.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_5.test
      BitKeeper/deleted/.del-ndb_row_lock_big_tab.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_big_tab.test
      BitKeeper/deleted/.del-ndb_row_lock_big_tab_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_1.test
      BitKeeper/deleted/.del-ndb_row_lock_big_tab_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_big_tab_2.test
      BitKeeper/deleted/.del-ndb_row_lock_trig_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_trig_1.test
      BitKeeper/deleted/.del-ndb_row_lock_trig_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_trig_2.test
      BitKeeper/deleted/.del-ndb_row_lock_view_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_1.test
      BitKeeper/deleted/.del-ndb_row_lock_view_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_2.test
      BitKeeper/deleted/.del-ndb_row_lock_view_mix_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_1.test
      BitKeeper/deleted/.del-ndb_row_lock_view_mix_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_mix_2.test
      BitKeeper/deleted/.del-ndb_row_lock_view_storedp_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_1.test
      BitKeeper/deleted/.del-ndb_row_lock_view_storedp_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_storedp_2.test
      BitKeeper/deleted/.del-ndb_row_lock_view_trig_1.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_1.test
      BitKeeper/deleted/.del-ndb_row_lock_view_trig_2.test:
        Delete: mysql-test/suite/row_lock/t/ndb_row_lock_view_trig_2.test
      Makefile.am:
        Remove the "row_lock" suite from the "test-bt" target.
        
        Also, a formatting change: empty line for better readability.
      98624f58
    • unknown's avatar
      Merge debian.(none):/M41/push-4.1 · 8bf73ba5
      unknown authored
      into  debian.(none):/M50/push-5.0
      
      8bf73ba5
    • unknown's avatar
      Merge debian.(none):/M50/bug16635-5.0 · 725eb6f0
      unknown authored
      into  debian.(none):/M50/push-5.0
      
      725eb6f0
    • unknown's avatar
      Merge debian.(none):/M50/mysql-5.0 · fed20aac
      unknown authored
      into  debian.(none):/M50/push-5.0
      
      fed20aac
    • unknown's avatar
      Merge debian.(none):/M41/bug16635-4.1 · 54fec5cc
      unknown authored
      into  debian.(none):/M41/push-4.1
      
      54fec5cc
    • unknown's avatar
      Merge debian.(none):/M41/bug16635-4.1 · fb8d3533
      unknown authored
      into  debian.(none):/M50/bug16635-5.0
      
      
      BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e:
        Auto merged
      fb8d3533
    • unknown's avatar
      mysql_install_db.sh: · 69d2328a
      unknown authored
        Fix error in previous change, correct --language argument.
      
      
      scripts/mysql_install_db.sh:
        Fix error in previous change, correct --language argument.
      69d2328a
    • unknown's avatar
      Apply a few more cleanups to improve the robustness of mysql_install_db · 22141bf5
      unknown authored
      
      scripts/mysql_install_db.sh:
        Put back variable initialisation for those which could be passed
        in via the environment and confuse the script.
      22141bf5
    • unknown's avatar
      Clean up the mysql_install_db script to ensure that a sane environment is · 3b8dca23
      unknown authored
      available and reduce the chance of failure.  This should fix bug#28585
      which is caused by the script being quite random in how it finds files it
      requires and not giving very good feedback to the user about what went
      wrong.
      
      Also update make_binary_distribution so that it provides the correct path
      to the required SQL scripts when generating mysql_install_db.  The script
      only previously worked because of the permissive behaviour which looked
      around the current working directory before the "correct" location.  This
      could lead to severe problems if the user happened to run the script from
      a location which contained older or even broken copies of the SQL scripts.
      
      We now require either a complete binary release (and the mysql_install_db
      script ran from inside the extracted archive), or an installed compiled
      tree, as this is the only way we can be sure everything that we need is
      available and ready to run.
      
      While working on this fix, also clean up the mysql_install_db script a lot
      to make it simpler, easier to read, and hopefully less prone to bugs in
      the future.
      
      
      scripts/make_binary_distribution.sh:
        SQL files live in ./share not ./support-files in binary distribution.
      scripts/mysql_install_db.sh:
        Use a consistent shell indentation style.
      3b8dca23
    • unknown's avatar
      Raise the 64 character limit for path names in the error messages · 08a3c0ff
      unknown authored
      to 150 or 107 characters for those messages which are generated
      by the embedded server during release builds.
      
      This fixes bug#16635:
         Error messages wrong: absolute path names, "%s" format code
      
      See the bug report or the changelog for "sql/share/english/errmsg.txt"
      for instructions how to do that with other languages, 
      even at the customer site, and for the restrictions to keep.
      
      
      sql/share/english/errmsg.txt:
        The embedded server uses absolute path names in its error messages,
        in the release build environment these exceed the 64 character limit
        which the format strings for the error messages impose (bug#16635).
        
        But when the messages are output, the server does the "printf()" 
        internally in a 256 character buffer; the constant text and the
        expanded variables (strings, error number) must fit into this.
        
        (If the buffer would overflow, a format specification will not be
        expanded but just copied with its code, and the message output
        will just contain '%s' or '%d' where a value is expected.)
        
        So the string lengths are increased to 150 characters in those messages
        which are issued by the embedded server during release tests
        and contain 1 (one) path name,
        but only to 107 in the "rename" message which contains 2 (two).
        
        This solves bug#16635 for the release builds.
        
        For other languages used by OEM customers, similar fixes may be needed,
        but we cannot test them.
        
        These fixes can be done even in a binary installation at the customer site
        by following these steps:
           cd <<install-root>>/share
           $EDITOR <<lang>>/errmsg.txt
           ../../bin/comp_err -C./charsets/ <<lang>>/errmsg.txt <<lang>>/errmsg.sys
        and then restarting the server.
      08a3c0ff
  4. 25 Jul, 2007 3 commits
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0 · 85958a80
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      mysql-test/t/create.test:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      mysql-test/r/create.result:
        Merge with 5.0 (main).
      85958a80
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/4.1-opt · 7193ebc0
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      7193ebc0
    • unknown's avatar
      Updated/fixed test and result files to 5.0.46 · c1ca7f87
      unknown authored
      Note datadict files do not include wrong is_updatable wrong value 
           as a result of bug 30020.
      
      
      mysql-test/suite/funcs_1/datadict/datadict_master.inc:
        Updated test file
      mysql-test/suite/funcs_1/r/innodb__datadict.result:
        Updated test file
      mysql-test/suite/funcs_1/r/innodb_func_view.result:
        Updated test file
      mysql-test/suite/funcs_1/r/innodb_trig_0102.result:
        Updated test file
      mysql-test/suite/funcs_1/r/innodb_trig_08.result:
        Updated test file
      mysql-test/suite/funcs_1/r/innodb_trig_09.result:
        Updated test file
      mysql-test/suite/funcs_1/r/innodb_views.result:
        Updated test file
      mysql-test/suite/funcs_1/r/memory__datadict.result:
        Updated test file
      mysql-test/suite/funcs_1/r/memory_func_view.result:
        Updated test file
      mysql-test/suite/funcs_1/r/memory_trig_0102.result:
        Updated test file
      mysql-test/suite/funcs_1/r/memory_trig_08.result:
        Updated test file
      mysql-test/suite/funcs_1/r/memory_trig_09.result:
        Updated test file
      mysql-test/suite/funcs_1/r/memory_views.result:
        Updated test file
      mysql-test/suite/funcs_1/r/myisam__datadict.result:
        Updated test file
      mysql-test/suite/funcs_1/r/myisam_func_view.result:
        Updated test file
      mysql-test/suite/funcs_1/r/myisam_trig_0102.result:
        Updated test file
      mysql-test/suite/funcs_1/r/myisam_trig_08.result:
        Updated test file
      mysql-test/suite/funcs_1/r/myisam_trig_09.result:
        Updated test file
      mysql-test/suite/funcs_1/r/myisam_views.result:
        Updated test file
      mysql-test/suite/funcs_1/triggers/triggers_0102.inc:
        Updated test file
      mysql-test/suite/funcs_1/views/func_view.inc:
        Updated test file
      c1ca7f87
  5. 24 Jul, 2007 2 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 40932e9f
      unknown authored
      into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
      
      40932e9f
    • unknown's avatar
      Bug#15130: CREATE .. SELECT was denied to use advantages of the SQL_BIG_RESULT. · 7fc76f30
      unknown authored
      When the SQL_BIG_RESULT flag is specified SELECT should store items from the
      select list in the filesort data and use them when sending to a client.
      The get_addon_fields function is responsible for creating necessary structures
      for that. But this function was allowed to do so only for SELECT and
      INSERT .. SELECT queries. This makes the SQL_BIG_RESULT useless for
      the CREATE .. SELECT queries.
      
      Now the get_addon_fields allows storing select list items in the filesort
      data for the CREATE .. SELECT queries.
      
      
      mysql-test/t/create.test:
        Added a test case for the bug#15130: CREATE .. SELECT was denied to use
        advantages of the SQL_BIG_RESULT.
      mysql-test/r/create.result:
        Added a test case for the bug#15130: CREATE .. SELECT was denied to use
        advantages of the SQL_BIG_RESULT.
      sql/filesort.cc:
        Bug#15130: CREATE .. SELECT was denied to use advantages of the SQL_BIG_RESULT.
        Now the get_addon_fields allows storing select list items in the filesort
        data for the CREATE .. SELECT queries.
      7fc76f30
  6. 23 Jul, 2007 4 commits
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 2e4369ca
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B29644-5.0-opt
      
      
      sql/ha_innodb.cc:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      mysql-test/r/innodb_mysql.result:
        5.0-opt merge
      mysql-test/t/innodb_mysql.test:
        5.0-opt merge
      2e4369ca
    • unknown's avatar
      Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · b3557f8d
      unknown authored
      into  olga.mysql.com:/home/igor/mysql-5.0-opt
      
      b3557f8d
    • unknown's avatar
      table.cc, sql_select.cc: · 0b208f59
      unknown authored
        Limit the fix for bug 28591 to InnoDB only
      
      
      sql/sql_select.cc:
        Limit the fix for bug 28591 to InnoDB only
      sql/table.cc:
        Limit the fix for bug 28591 to InnoDB only
      0b208f59
    • unknown's avatar
      Fixed bug #29611. · 51f919dc
      unknown authored
      If a primary key is defined over column c of enum type then 
      the EXPLAIN command for a look-up query of the form
        SELECT * FROM t WHERE c=0
      said that the query was with an impossible where condition though the
      query correctly returned non-empty result set when the table indeed 
      contained rows with error empty strings for column c. 
      
      This kind of misbehavior was due to a bug in the function 
      Field_enum::store(longlong,bool) that erroneously returned 1 if
      the the value to be stored was equal to 0. 
      Note that the method 
      Field_enum::store(const char *from,uint length,CHARSET_INFO *cs)
      correctly returned 0 if a value of the error empty string 
      was stored. 
      
      
      mysql-test/r/type_enum.result:
        Added a test case for bug #29661.
      mysql-test/t/type_enum.test:
        Added a test case for bug #29661.
      sql/field.cc:
        Fixed bug #29611.
        If a primary key was defined over column c of enum type then 
        the EXPLAIN command for a look-up query of the form
          SELECT * FROM t WHERE c=0
        said that the query was with an impossible where condition though the
        query correctly returned non-empty result set when the table indeed 
        contained rows with error empty strings for column c. 
        
        This kind of misbehavior was due to a bug in the function 
        Field_enum::store(longlong,bool) that erroneously returned 1 if
        the the value to be stored was equal to 0. 
        Note that the method 
        Field_enum::store(const char *from,uint length,CHARSET_INFO *cs)
        correctly returned 0 if a value of the error empty string 
        was stored.
      51f919dc
  7. 22 Jul, 2007 4 commits
  8. 21 Jul, 2007 9 commits
  9. 20 Jul, 2007 3 commits
    • unknown's avatar
      Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.0 · 3417df72
      unknown authored
      into  mysql.com:/home/kent/bk/tmp3/mysql-5.0-build
      
      
      libmysql/libmysql.c:
        Auto merged
      scripts/make_binary_distribution.sh:
        Auto merged
      sql/field.cc:
        Auto merged
      3417df72
    • unknown's avatar
      Fixed bug #29788. · ce57b531
      unknown authored
      After dumping triggers mysqldump copied 
      the value of the OLD_SQL_MODE variable to the SQL_MODE
      variable. If the --compact option of the mysqldump was
      not set the OLD_SQL_MODE variable had the value
      of the uninitialized SQL_MODE variable. So
      usually the NO_AUTO_VALUE_ON_ZERO option of the
      SQL_MODE variable was discarded.
      
      This fix is for non-"--compact" mode of the mysqldump,
      because mysqldump --compact never set SQL_MODE to the
      value of NO_AUTO_VALUE_ON_ZERO.
      
      The dump_triggers_for_table function has been modified
      to restore previous value of the SQL_MODE variable after
      dumping triggers using the SAVE_SQL_MODE temporary
      variable.
      
      
      client/mysqldump.c:
        Fixed bug #29788.
        The dump_triggers_for_table function has been modified
        to restore previous value of the SQL_MODE variable after
        dumping triggers using the SAVE_SQL_MODE temporary
        variable.
      mysql-test/r/mysqldump.result:
        Updated test case for bug #29788.
      mysql-test/t/mysqldump.test:
        Updated test case for bug #29788.
      ce57b531
    • unknown's avatar
      Bug #28591: MySQL need not sort the records in case of · a3c979b0
      unknown authored
      ORDER BY primary_key on InnoDB table
      
      Queries that use an InnoDB secondary index to retrieve
      data don't need to sort in case of ORDER BY primary key
      if the secondary index is compared to constant(s).
      They can also skip sorting if ORDER BY contains both the
      the secondary key parts and the primary key parts (in
      that order).
      This is because InnoDB returns the rows in order of the
      primary key for rows with the same values of the secondary
      key columns.
      Fixed by preventing temp table sort for the qualifying 
      queries.
      
      
      mysql-test/r/innodb_mysql.result:
        Bug #28591: test case
      mysql-test/t/innodb_mysql.test:
        Bug #28591: test case
      sql/sql_select.cc:
        Bug #28591: Use the primary key as suffix when testing
        if the key can be used for ORDER BY on supporting engines.
      sql/table.cc:
        Bug #28591: can use the primary key
        as a suffix for the secondary keys
      a3c979b0