1. 29 Oct, 2007 1 commit
    • unknown's avatar
      Fix for BUG#27610: ALTER TABLE ROW_FORMAT=... does not · d294689a
      unknown authored
      rebuild the table.
      
      The problem was that ROW_FORMAT clause in ALTER TABLE did not trigger
      table reconstruction.
      
      The fix is to rebuild a table if ROW_FORMAT is specified.
      
      
      mysql-test/include/mix1.inc:
        Add a test case for BUG#27610: ALTER TABLE ROW_FORMAT=... does not
        rebuild the table.
      mysql-test/r/innodb_mysql.result:
        Update result file.
      sql/sql_table.cc:
        Rebuild a table if ROW_FORMAT was specified in ALTER TABLE.
      d294689a
  2. 25 Oct, 2007 1 commit
    • unknown's avatar
      Bug#30854 (Tables name show as binary in slave err msg on vm-win2003-64-b) · 88273e80
      unknown authored
      The root cause of this defect is that a call to my_error() is using a
      'LEX_STRING' parameter instead of a 'char*'
      
      This patch fixes the failing calls to my_error(), as well as similar calls
      found during investigation.
      
      This is a compiling bug (see the instrumentation in the bug report), no test cases provided.
      
      
      sql/sql_base.cc:
        Fix broken calls to "..." (va_args) functions.
      sql/sql_table.cc:
        Fix broken calls to "..." (va_args) functions.
      88273e80
  3. 24 Oct, 2007 1 commit
  4. 23 Oct, 2007 1 commit
    • unknown's avatar
      Patch for BUG#30736: Row Size Too Large Error Creating a Table and · cfa54d6d
      unknown authored
      Inserting Data.
      
      The problem was that under some circumstances Field class was not
      properly initialized before calling create_length_to_internal_length()
      function, which led to assert failure.
      
      The fix is to do the proper initialization.
      
      The user-visible problem was that under some circumstances
      CREATE TABLE ... SELECT statement crashed the server or led
      to wrong error message (wrong results).
      
      
      mysql-test/r/select.result:
        Update result file.
      mysql-test/t/select.test:
        Add a test case for BUG#30736: Row Size Too Large Error
        Creating a Table and Inserting Data.
      sql/sql_table.cc:
        Move sql_field->decimals initialization before
        sql_field->create_length_to_internal_length() call.
      cfa54d6d
  5. 22 Oct, 2007 1 commit
  6. 20 Oct, 2007 1 commit
    • unknown's avatar
      Fix for BUG#31148: bool close_thread_table(THD*, TABLE**): · 5fc726d8
      unknown authored
      Assertion `table->key_read == 0' failed.
      
      The problem was that key_read on a table in a sub-select was not
      properly reset. That happens because the code responsible for that
      is copy&pasted all around the server. In some place, it was obviously
      forgotten to be pasted.
      
      The fix is to reset key_read properly.
      
      
      mysql-test/r/key.result:
        Update result file.
      mysql-test/t/key.test:
        A test case for BUG#31148: bool close_thread_table(THD*, TABLE**):
        Assertion `table->key_read == 0' failed.
      sql/sql_select.cc:
        Reset key_read before closing index.
      5fc726d8
  7. 19 Oct, 2007 5 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 8dc3ea52
      unknown authored
      into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
      
      
      sql/sql_class.cc:
        Auto merged
      8dc3ea52
    • unknown's avatar
      Rename: query_error -> is_slave_error. · 6b658b9f
      unknown authored
      Add comments.
      
      
      sql/ha_ndbcluster_binlog.cc:
        query_error -> slave_error
      sql/handler.cc:
        query_error -> slave_error
      sql/log.cc:
        query_error -> slave_error
      sql/log_event.cc:
        query_error -> slave_error
      sql/log_event_old.cc:
        query_error -> slave_error
      sql/mysqld.cc:
        query_error -> slave_error
      sql/protocol.cc:
        query_error -> slave_error
      sql/slave.cc:
        query_error -> slave_error
      sql/sp_head.cc:
        query_error -> slave_error
      sql/sql_class.cc:
        query_error -> slave_error
      sql/sql_class.h:
        Rename: query_error -> is_slave_error, to avoid confusion.
        Add commenta.
      sql/sql_connect.cc:
        Rename: query_error -> is_slave_error, to avoid confusion.
        Originally it was the same code to handle init-connect and init-slave 
        mysqld options. Then init-connect implementation forked off,
        but the one who copy-pasted the code didn't change it to not
        use a replication-specific variable.
      6b658b9f
    • unknown's avatar
      Patch for BUG#31111: --read-only crashes MySQL (events fail to load). · b6e4b103
      unknown authored
      There actually were several problems here:
        - WRITE-lock is required to load events from the mysql.event table,
          but in the read-only mode an ordinary user can not acquire it;
        - Security_context::master_access attribute was not properly
          initialized in Security_context::init(), which led to differences
          in behavior with and without debug configure options.
        - if the server failed to load events from mysql.event, it forgot to
          close the mysql.event table, that led to the coredump, described
          in the bug report.
      
      The patch is to fix all these problems:
        - Use the super-user to acquire WRITE-lock on the mysql.even table;
        - The WRITE-lock is acquired by the event scheduler in two cases:
          - on initial loading of events from the database;
          - when an event has been executed, so its attributes should
            be updated.
          Other cases when WRITE-lock is needed for the mysql.event table
          happen under the user account. So, nothing should be changed there
          for the read-only mode. The user is able to create/update/drop
          an event only if he is a super-user.
        - Initialize Security_context::master_access;
        - Close the mysql.event table in case something went wrong.
      
      
      mysql-test/r/events_bugs.result:
        Update result file.
      mysql-test/t/events_bugs.test:
        A test case for BUG#31111: --read-only crashes MySQL (events fail
        to load).
      sql/event_data_objects.cc:
        When the worker thread is going to drop event after the execution
        we should do it under the super-user privileges in order to be able
        to lock the mysql.event table for writing in the read-only mode.
        
        This is a system operation, where user SQL can not be executed.
        So, there is no risk in compromising security by dropping an event
        under the super-user privileges.
      sql/event_db_repository.cc:
        1. Close tables if something went wrong in simple_open_n_lock_tables();
        2. As soon as the system event scheduler thread is running under
           the super-user privileges, we should always be able to acquire
           WRITE-lock on the mysql.event table. However, let's have an assert
           to check this.
      sql/event_scheduler.cc:
        Run the system event scheduler thread under the super-user privileges.
        In particular, this is needed to be able to lock the mysql.event table
        for writing when the server is running in the read-only mode.
        
        The event scheduler executes only system operations and does not
        execute user SQL (this is what the worker threads for). So, there
        is no risk in compromising security by running the event scheduler
        under the super-user privileges.
      sql/events.cc:
        Open the mysql.event table as the super user to be able to acquire
        WRITE-lock in the read-only mode.
      sql/sql_class.cc:
        Initialize Security_context::master_acces.
      b6e4b103
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-runtime · 9248b192
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-runtime
      
      
      mysql-test/r/udf.result:
        Auto merged
      mysql-test/t/udf.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/udf_example.c:
        Auto merged
      sql/udf_example.def:
        Auto merged
      9248b192
    • unknown's avatar
      Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 696d53e9
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
      
      
      client/mysqltest.c:
        Auto merged
      mysql-test/r/udf.result:
        Auto merged
      mysql-test/t/mysqltest.test:
        Auto merged
      mysql-test/t/udf.test:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/udf_example.c:
        Auto merged
      sql/udf_example.def:
        Auto merged
      696d53e9
  8. 18 Oct, 2007 6 commits
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base · 096f9afa
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
      
      
      client/mysqlcheck.c:
        Auto merged
      client/mysqltest.c:
        Auto merged
      libmysql/libmysql.c:
        Auto merged
      mysql-test/include/mix1.inc:
        Auto merged
      mysql-test/r/innodb_mysql.result:
        Auto merged
      mysql-test/r/udf.result:
        Auto merged
      mysql-test/t/udf.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_class.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      tests/mysql_client_test.c:
        Auto merged
      096f9afa
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-base · d14ada56
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge
      
      
      mysql-test/r/udf.result:
        Auto merged
      mysql-test/t/udf.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/udf_example.c:
        Auto merged
      sql/udf_example.def:
        Auto merged
      d14ada56
    • unknown's avatar
      Merge moksha.com.br:/Users/davi/mysql/bugs/21557-5.1 · 043ea1cf
      unknown authored
      into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
      
      043ea1cf
    • unknown's avatar
      Post merge fix for Bug 21557 · 09755a8a
      unknown authored
      
      mysql-test/r/log_tables.result:
        Update test result, general_log disabled.
      mysql-test/t/log_tables.test:
        Disable the general_log before consulting it.
      09755a8a
    • unknown's avatar
      Merge moksha.com.br:/Users/davi/mysql/bugs/21557-5.1 · d5b81362
      unknown authored
      into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
      
      
      sql/sp_head.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      d5b81362
    • unknown's avatar
      Bug#21557 entries in the general query log truncated at 1000 characters. · e56bf76c
      unknown authored
      The general log write function (general_log_print) uses printf style
      arguments which need to be pre-processed, meaning that the all arguments
      are copied to a single buffer and the problem is that the buffer size is
      constant (1022 characters) but queries can be much larger then this.
      
      The solution is to introduce a new log write function that accepts a
      buffer and it's length as arguments. The function is to be used when
      a formatted output is not required, which is the case for almost all
      query write-to-log calls.
      
      This is a incompatible change with respect to the log format of prepared
      statements.
      
      
      mysql-test/r/log_tables.result:
        Add test case result for Bug#21557
      mysql-test/t/log_tables.test:
        Add test case for Bug#21557
      sql/log.cc:
        Introduce the logger function general_log_write which is similar to
        general_log_print but accepts a single buffer and the buffer length.
        The function doesn't perform any formatting and sends the buffer
        directly to the underlying log handlers.
      sql/log.h:
        Introduce the logger function general_log_write.
      sql/log_event.cc:
        Pass the query buffer directly to the logger function, formatting
        is not required on this case.
      sql/mysql_priv.h:
        Prototype for the logger function general_log_write.
      sql/sp_head.cc:
        Pass the query buffer directly to the logger function, formatting
        is not required on this case.
      sql/sql_parse.cc:
        Pass the buffer directly to the logger function when formatting
        is not required.
      sql/sql_prepare.cc:
        Don't log the statement id, it avoids making a extra copy of the query
        and the query is not truncated anymore if it exceeds the limit.
      e56bf76c
  9. 17 Oct, 2007 13 commits
    • unknown's avatar
      Merge damien-katzs-computer.local:/Users/dkatz/udf50 · 1d5fd522
      unknown authored
      into  damien-katzs-computer.local:/Users/dkatz/mysql-5.1-runtime
      
      
      mysql-test/r/udf.result:
        Auto merged
      mysql-test/t/udf.test:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/udf_example.def:
        Auto merged
      sql/udf_example.c:
        null merge
      1d5fd522
    • unknown's avatar
      Bug #29804 UDF parameters don't contain correct string length · 24cb2b34
      unknown authored
          
      Previously, UDF *_init functions were passed constant strings with erroneous lengths. The length came from the containing variable's size, not the length of the value itself.
          
      Now the *_init functions get the constant as a null terminated string with the correct length supplied too.
      
      
      mysql-test/r/udf.result:
        Test case to check constants passed UDFs.
      mysql-test/t/udf.test:
        Test case to check constants passed UDFs.
      sql/item_func.cc:
        UDF _init functions are now passed the length of the constants, rather than the max length of the var containing the constant.
      sql/udf_example.c:
        Added check_const_len functions. The check_const_len_init functions checks that lengths of constants are correctly passed.
      sql/udf_example.def:
        Add new example functions to windows dll export list.
      24cb2b34
    • unknown's avatar
      Merge moksha.com.br:/Users/davi/mysql/bugs/31608-5.1 · 98cfe75a
      unknown authored
      into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
      
      98cfe75a
    • unknown's avatar
      Bug#31608 missing mysqltest change_user command · d85701d8
      unknown authored
      Post merge fixes: close any open statement before
      the change user command and fix test case output.
      
      
      client/mysqltest.c:
        Close an open statement since it won't work after a change_user command.
      mysql-test/r/change_user.result:
        Fixed test case output.
      mysql-test/t/change_user.test:
        Fix test case output to return 1 or 0.
      d85701d8
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50 · 988fad13
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
      
      
      libmysql/libmysql.c:
        Auto merged
      988fad13
    • unknown's avatar
      Fix syntax error build problem on Windows (variable was defined · 2a65aba5
      unknown authored
      in middle of block)
      
      
      libmysql/libmysql.c:
        Fix syntax error - don't define new variables in the middle of a block.
        
        Also, use size_t instead of uint to avoid unnecessary casting.
      2a65aba5
    • unknown's avatar
      Merge moksha.com.br:/Users/davi/mysql/bugs/31608-5.1 · 0572a2ad
      unknown authored
      into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
      
      0572a2ad
    • unknown's avatar
      Fix result files (BUG#24923). · 4473ec90
      unknown authored
      4473ec90
    • unknown's avatar
      Fix for BUG#24923: Functions with ENUM issues. · af247e22
      unknown authored
      The problem was that the RETURNS column in the mysql.proc was of
      CHAR(64). That was not enough for storing long-named datatypes.
      
      The fix is to change CHAR(64) to LONGBLOB, and to throw warnings
      at the time a stored routine is created if some data is truncated
      during writing into mysql.proc.
      
      
      mysql-test/r/sp.result:
        Update test result.
      mysql-test/t/sp.test:
        Add a test case for BUG#24923.
      scripts/mysql_system_tables.sql:
        Change the data type of column 'returns' from char(64) to longblob.
      scripts/mysql_system_tables_fix.sql:
        Change the data type of column 'returns' from char(64) to longblob.
      sql/sp.cc:
        Produce warnings if any data was truncated during writing
        into mysql.proc.
      sql/sp.h:
        Add new error code.
      sql/share/errmsg.txt:
        Add new error message.
      sql/sql_parse.cc:
        Hande
      af247e22
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/mysql-5.0-maint · 5940e90a
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint
      
      
      mysql-test/r/repair.result:
        Auto merged
      mysql-test/t/repair.test:
        Auto merged
      5940e90a
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/mysql-4.1-maint · 1451a0eb
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
      
      
      mysql-test/r/repair.result:
        Auto merged
      mysql-test/t/repair.test:
        Auto merged
      1451a0eb
    • unknown's avatar
    • unknown's avatar
      Manual merge of 5.0-runtime to 5.1-runtime · 40ea2b48
      unknown authored
      
      mysql-test/r/sp-error.result:
        Manual merge
      mysql-test/r/sp.result:
        Manual merge
      mysql-test/r/udf.result:
        Manual merge
      mysql-test/t/sp.test:
        Manual merge
      mysql-test/t/udf.test:
        Manual merge
      sql/item_create.cc:
        Manual merge
      sql/sp_head.cc:
        Manual merge
      sql/sql_yacc.yy:
        Manual merge
      40ea2b48
  10. 16 Oct, 2007 10 commits
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-runtime · 4466dec3
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
      
      
      mysql-test/t/sp-error.test:
        Auto merged
      mysql-test/t/udf.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/sp.cc:
        Auto merged
      sql/sp_head.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_udf.cc:
        Auto merged
      mysql-test/r/sp-error.result:
        failed auto merge
      mysql-test/r/sp.result:
        failed auto merge
      mysql-test/r/udf.result:
        failed auto merge
      mysql-test/t/sp.test:
        failed auto merge
      sql/sp_head.cc:
        failed auto merge
      sql/sql_yacc.yy:
        failed auto merge
      4466dec3
    • unknown's avatar
      Fixed broken call to my_error · 623e5187
      unknown authored
      
      sql/sql_yacc.yy:
        Fixed error message to use char*, not LEX_STRING
      623e5187
    • unknown's avatar
      Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 66fe631b
      unknown authored
      into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
      
      66fe631b
    • unknown's avatar
      Fixed query_cache_notembedded test program failure because of dependencies between · ed6fe847
      unknown authored
      test programs.
      
      
      mysql-test/r/query_cache.result:
        Reset query cache parameters to prevent dependency between test programs.
      mysql-test/t/query_cache.test:
        Reset query cache parameters to prevent dependency between test programs.
      ed6fe847
    • unknown's avatar
      Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · fd5bd91a
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-28318-rework
      
      fd5bd91a
    • unknown's avatar
      Implementing code review comments · 473e6285
      unknown authored
      
      mysql-test/r/sp.result:
        Added tests for coverage
      mysql-test/t/sp.test:
        Added tests for coverage
      sql/sql_udf.cc:
        Code cleanup
      473e6285
    • unknown's avatar
      Update the client ABI to reflect member rename · 3459ae14
      unknown authored
      (this is a backward-compatible change).
      
      
      include/mysql_h.ic:
        Update the ABI to reflect member rename 
        (this is a backward-compatible change).
      3459ae14
    • unknown's avatar
      Bug#31608 missing mysqltest change_user command · 8fc1ed69
      unknown authored
      The problem is that currently there is no way to test the behavior
      of the mysql_change_user() function using the mysqltest suite because
      there is no internal command for it.
      
      The solution is to introduce a change_user command that can be used
      to test aspects of the MySQL client function mysql_change_user().
      
      
      client/mysqltest.c:
        Add change_user command to mysqltest.
      mysql-test/r/mysqltest.result:
        Add test case result for change_user command
      mysql-test/t/mysqltest.test:
        Add test case for change_user command
      mysql-test/r/change_user.result:
        Add new file with test case results for bugs 20023 and 31418.
      mysql-test/t/change_user.test:
        Add new file with test cases for bugs 20023 and 31418.
      8fc1ed69
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/mysql-5.0-maint · 3a294bf7
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint
      
      
      storage/myisam/sort.c:
        Auto merged
      mysql-test/r/repair.result:
        SCCS merged
      mysql-test/t/repair.test:
        SCCS merged
      3a294bf7
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/mysql-4.1-maint · 47d6d92d
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
      
      
      myisam/sort.c:
        Auto merged
      mysql-test/r/repair.result:
        Auto merged
      mysql-test/t/repair.test:
        Auto merged
      47d6d92d