1. 27 Jul, 2007 6 commits
    • unknown's avatar
      Merge ibm.:/home/alik/Documents/MySQL/devel/5.0-rt · 4596ef83
      unknown authored
      into  ibm.:/home/alik/Documents/MySQL/devel/5.1-rt-merge
      
      
      mysql-test/r/mysqldump-max.result:
        Auto merged
      mysql-test/r/openssl_1.result:
        Auto merged
      mysql-test/t/show_check.test:
        Auto merged
      sql/sp.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      client/mysqldump.c:
        Manual merge.
      mysql-test/r/mysqldump.result:
        Manual merge + use local.
      4596ef83
    • unknown's avatar
      Fix test so that it will be environment-independent. · 818b0b84
      unknown authored
      
      mysql-test/r/mysqldump.result:
        Update result file.
      818b0b84
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 6a77dbae
      unknown authored
      into  janus.mylan:/usr/home/serg/Abk/mysql-5.1
      
      
      6a77dbae
    • unknown's avatar
      Fix for BUG#30027: mysqldump does not dump views properly. · e030b5dc
      unknown authored
      mysqldump generates view defitions in two stages:
      
        - dump CREATE TABLE statements for the temporary tables.  For each view a
          temporary table, that has the same structure as the view is created.
      
        - dump DROP TABLE statements for the temporary tables and CREATE VIEW
          statements for the view.
      
      This approach is required because views can have dependencies on each other
      (a view can use other views). So, they should be created in the particular
      order. mysqldump however is not smart enough, so in order to resolve
      dependencies it creates temporary tables first of all.
      
      The problem was that mysqldump might have generated incorrect dump for the
      temporary table when a view has non-ASCII column name. That happened when
      default-character-set is not utf8.
      
      The fix is to:
      
        1. Switch character_set_client for the mysqldump's connection to binary
           before issuing SHOW FIELDS statement in order to avoid conversion.
          
        2. Dump switch character_set_client statements to UTF8 and back for
           CREATE TABLE statement that is issued to create temporary table.
      
      
      client/mysqldump.c:
        1. Switch character_set_results for mysqldump's connection to
        binary before SHOW FIELDS in order to avoid conversion to client
        character set.
        
        2. Dump switch character_set_client statements to UTF8 and back
        for CREATE TABLE statement.
      mysql-test/r/mysqldump.result:
        Update result file.
      mysql-test/t/mysqldump.test:
        Test case for BUG#30027.
      e030b5dc
    • unknown's avatar
      Fix for BUG#28030: test im_instance_conf fails with an assert. · 339ea316
      unknown authored
      The problem was a race condition on shutdown -- when IM got shutdown
      request while a guarded mysqld is starting. In this case the Guardian
      thread tried to stop the mysqld, but might fail if the mysqld hadn't
      created pid-file so far. When this happened, the mysqld-monitor thread
      didn't stop, so the assert in Thread_registry happened.
      
      The fix is to make several attempts to stop mysqld if it is active.
      
      
      server-tools/instance-manager/guardian.cc:
        Try to stop mysqld several times if it is still active.
      server-tools/instance-manager/instance.cc:
        Make Instance::kill_mysqld() to return operation status.
      server-tools/instance-manager/instance.h:
        Make Instance::kill_mysqld() to return operation status.
      server-tools/instance-manager/thread_registry.cc:
        Log unregistered thread ids.
      339ea316
    • unknown's avatar
      Bug #30094 mi_test_all: assertion failure · a09787e8
      unknown authored
      updated to keypart_map api
      
      
      storage/myisam/mi_test2.c:
        Bug #30094 mi_test_all: assertion failure
        updated to keypart_map api
        prefix char keys are not supported anymore
      a09787e8
  2. 26 Jul, 2007 1 commit
    • unknown's avatar
      Fix for BUG#30029: mysql_upgrade fails for 5.0 -> 5.1.21, · 1336b0eb
      unknown authored
      5.1.20 -> 5.1.21 upgrades.
      
      We generate mysql_fix_privilege.sql file, which contains SQL
      statements required to upgrade the system database. This script
      is generated by concatenation of mysql_system_tables.sql and
      mysql_system_tables_fix.sql.
      
      The problem was that
        - in order to create general_log and slow_log tables we use
          stored programs in mysql_system_tables.sql;
        - we upgrade mysql.proc table in mysql_system_tables_fix.sql;
      
      So, if mysql.proc table needs to be upgraded, stored procedures
      can not be used in mysql_system_tables.sql.
      
      In other words, in mysql_system_tables.sql stored programs must
      not be used because they may be unavailable at this point.
      
      The fix is to use dynamic SQL instead of stored programs.
      
      There is no test case for this bug because our test suite
      is not suitable for such test cases. system_mysql_db_fix* test
      cases play with the database "test". Here we need to modify
      the system database and we can not do that in the test suite.
      
      
      scripts/mysql_system_tables.sql:
        Use dynamic SQL instead of stored programs.
      1336b0eb
  3. 25 Jul, 2007 10 commits
    • unknown's avatar
      Patch inspired by BUG#10491: Server returns data as charset · 2612fc43
      unknown authored
      binary SHOW CREATE TABLE or SELECT FROM I_S.
      
      The problem is that mysqldump generates incorrect dump for a table
      with non-ASCII column name if the mysqldump's character set is
      ASCII.
      
      The fix is to:
        1. Switch character_set_client for the mysqldump's connection
        to binary before issuing SHOW CREATE TABLE statement in order
        to avoid conversion.
        
        2. Dump switch character_set_client statements to UTF8 and back
        for CREATE TABLE statement.
      
      
      client/mysqldump.c:
        1. Switch character_set_client for the mysqldump's connection
        to binary before issuing SHOW CREATE TABLE statement in order
        to avoid conversion.
        
        2. Dump switch character_set_client statements to UTF8 and back
        for CREATE TABLE statement.
      mysql-test/r/mysqldump-max.result:
        Update result file.
      mysql-test/r/mysqldump.result:
        Update result file.
      mysql-test/r/openssl_1.result:
        Update result file.
      mysql-test/r/show_check.result:
        Update result file.
      mysql-test/t/show_check.test:
        Test case:
          - create a table with non-ASCII column name;
          - dump the database by mysqldump using ASCII character set;
          - drop the database;
          - load the dump;
          - check that the table has been re-created properly.
      2612fc43
    • unknown's avatar
      Allow mysql.proc to have extra (unknown) fields. · 48e879f9
      unknown authored
      This allows 5.0 to work with 5.1 databases.
      
      
      48e879f9
    • unknown's avatar
      Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · cf81182c
      unknown authored
      into  weblab.(none):/home/marcsql/TREE/mysql-5.0-29959
      
      
      cf81182c
    • unknown's avatar
      Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · ef7cf7d0
      unknown authored
      into  naruto.:C:/cpp/mysql-5.1-runtime
      
      
      ef7cf7d0
    • unknown's avatar
      Fix of build errors for windows. · 696b001a
      unknown authored
      
      server-tools/instance-manager/parse_output.cc:
        * Fixed merge error: retval -> op_status
        * Fixed warning: unsigned compared with signed.
      696b001a
    • unknown's avatar
      Temporary enable IM tests in 5.1-runtime tree. · 5e0e5e5e
      unknown authored
      Enable assert in Thread_registry.
      
      
      mysql-test/t/disabled.def:
        Temporary enable IM tests in the team tree.
      server-tools/instance-manager/thread_registry.cc:
        Uncomment assert.
      5e0e5e5e
    • unknown's avatar
      Merge adventure.(none):/home/thek/Development/cpp/bug28641/my51-bug28641 · 3232f483
      unknown authored
      into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
      
      
      mysql-test/r/events_bugs.result:
        Auto merged
      3232f483
    • unknown's avatar
      Bug#28641 CREATE EVENT with '2038.01.18 03:00:00' let server crash. · cfdd2035
      unknown authored
      Creating an EVENT to be executed at a time close to the end of the allowed
      range (2038.01.19 03:14:07 UTC) would cause the server to crash. The
      expected behavior is to accept all calendar times within the interval and
      reject all other values without crashing.
      
      This patch replaces the function 'sec_to_epoch_TIME' with a Time_zone API call.
      This function was broken because it invoked the internal function 'sec_to_epoch'
      without respecting the restrictions on the function parameters (and this caused
      assertion failure). It also was used as a reverse function to
      Time_zone_utc::gmt_sec_to_TIME which it isn't.
      
      
      mysql-test/r/events_bugs.result:
        Added test case
      mysql-test/t/events_bugs.test:
        Added test case
      sql/event_data_objects.cc:
        Replaced function 'sec_since_epoch_TIME' since it was implemented as
        a wrapper around 'sec_since_epoch' without taking parameter restrictions
        into account. The function was used to load information about event
        execution time from mysql.events table. Further more, the function wasn't
        the inverse function of Time_zone_utc::gmt_sec_to_TIME() which was used
        by events code to store information about event execution time.
      sql/event_db_repository.cc:
        Replaced my_tz_UTC object with my_tz_OFFSET0 object because the first one
        doesn't supply us with a bijective MYSQL_TIME<->my_time_t translation. Instead
        the function sec_since_epoch_TIME was used as a reverse function to the method
        my_tz_UTC::gmt_sec_to_TIME.
      sql/event_queue.cc:
        Replaced my_tz_UTC object with my_tz_OFFSET0 object because the first one
        doesn't supply us with a bijective MYSQL_TIME<->my_time_t translation. Instead
        the function sec_since_epoch_TIME was used as a reverse function to the method
        my_tz_UTC::gmt_sec_to_TIME.
      sql/tztime.cc:
        * Remove function 'sec_since_epoch_TIME' since it was implemented as
        a wrapper around 'sec_since_epoch' without taking parameter restrictions
        into account. The function was used to load information about event
        execution time from mysql.events table. Further more, the function wasn't
        the inverse function of Time_zone_utc::gmt_sec_to_TIME() which was used
        by events code to store information about event execution time.
        
        * Added static Time_zone object for UTC+0 time zone.
      sql/tztime.h:
        Include extern pointer to static Time_zone object.
      cfdd2035
    • unknown's avatar
      Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 35438afb
      unknown authored
      into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
      
      
      35438afb
    • unknown's avatar
      Merge adventure.(none):/home/thek/Development/cpp/bug28012/my51-bug28012 · 206575ab
      unknown authored
      into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
      
      
      206575ab
  4. 24 Jul, 2007 5 commits
  5. 23 Jul, 2007 2 commits
    • unknown's avatar
      Bug#29959 (Non-standard bison syntax in sql_yacc.yy) · 04fc8b71
      unknown authored
      In sql/sql_yacc.yy, use the %prec construct at the end of rule join_table
      
      
      sql/sql_yacc.yy:
        In sql/sql_yacc.yy, use the %prec construct at the end of rule join_table
      04fc8b71
    • unknown's avatar
      Bug#28012 Patch : IM crashes instead of reporting an error when mysqldpath is bad · 4ffd997a
      unknown authored
        
      On the windows platform, if an instance object failed to initialize during
      program start, the instance manager would crash.
      This could happen if an incorrect mysqld path was supplied in the 
      defaults configuration file.
      The patch prevents the program from crashing and makes it show an
      error message instead.
      
      
      mysql-test/r/im_options.result:
        - Options have changed names.
      server-tools/instance-manager/instance.cc:
        - Added code to verify that the instance object was initialized
          before any attempt is made to start the associated process.
        - Instance::complete_initialization method will now return TRUE
          on an error during instance initialization.
      server-tools/instance-manager/instance_options.cc:
        - Parsed result byte sequence from executed process doesn't contain a new line
          character anymore.
      server-tools/instance-manager/parse_output.cc:
        - 'popen' didn't behave as intended on the windows platform.
        - The function parse_output_and_get_value was completly rewritten to correct the
          error in the windows built and to be more easily maintained across platforms.
      server-tools/instance-manager/parse_output.h:
        - 'popen' didn't behave as intended on the windows platform.
        - The function parse_output_and_get_value was completly rewritten to correct the
          error in the windows built and to be more easily maintained across platforms.
      server-tools/instance-manager/portability.h:
        - Add more portability constants for convenience.
      4ffd997a
  6. 21 Jul, 2007 4 commits
    • unknown's avatar
      Merge bodhi.(none):/opt/local/work/mysql-5.0-runtime · b0fcdce3
      unknown authored
      into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
      
      
      mysql-test/r/create.result:
        Auto merged
      mysql-test/t/create.test:
        Auto merged
      sql/sql_class.h:
        Auto merged
      b0fcdce3
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1 · 60854457
      unknown authored
      into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
      
      
      mysql-test/r/create.result:
        Auto merged
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/t/create.test:
        Auto merged
      mysql-test/t/innodb.test:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      60854457
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · be7b4043
      unknown authored
      into  bodhi.(none):/opt/local/work/mysql-5.0-runtime
      
      
      mysql-test/r/create.result:
        Auto merged
      mysql-test/t/create.test:
        Auto merged
      sql/sql_class.h:
        Auto merged
      be7b4043
    • unknown's avatar
      Merge trift2.:/MySQL/M50/push-5.0 · ce203858
      unknown authored
      into  trift2.:/MySQL/M51/push-5.1
      
      
      libmysql/libmysql.c:
        Auto merged
      scripts/make_binary_distribution.sh:
        Auto merged
      sql/field.cc:
        Auto merged
      ce203858
  7. 20 Jul, 2007 12 commits