1. 18 Oct, 2007 4 commits
    • 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
  2. 17 Oct, 2007 8 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 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
      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
  3. 16 Oct, 2007 11 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 kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · 0deedab4
      unknown authored
      into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
      
      0deedab4
    • unknown's avatar
      Bug#30710 query_cache.test fails on embedded - per-column privs test · 27324e11
      unknown authored
      The embedded version of the server doesn't use column level grants, and 
      the compile directive NO_EMBEDDED_ACCESS_CHECKS should be checked instead of
      the redundant HAVE_QUERY_CACHE (which is always the case) to determine if 
      column level grants should be compiled or not.
      
      
      mysql-test/r/query_cache.result:
        Updated result file
      mysql-test/r/query_cache_notembedded.result:
        Updated result file
      mysql-test/t/query_cache.test:
        Moved test with GRANT to query_cache_notembedded test.
      mysql-test/t/query_cache_notembedded.test:
        Moved test with GRANT to query_cache_notembedded test.
      sql/sql_cache.cc:
        Changed the conditional compilation directive to only compile column level grant
        checks if NO_EMBEDDED_ACCESS_CHECKS isn't defined.
      27324e11
    • unknown's avatar
      Bug#28318 (CREATE FUNCTION (UDF) requires a schema) -- part II · 739d2417
      unknown authored
      The root cause of the issue was that the CREATE FUNCTION grammar,
      for User Defined Functions, was using the sp_name rule.
      The sp_name rule is intended for fully qualified stored procedure names,
      like either ident.ident, or just ident but with a default database
      implicitly selected.
      
      A UDF does not have a fully qualified name, only a name (ident), and should
      not use the sp_name grammar fragment during parsing.
      
      The fix is to re-organize the CREATE FUNCTION grammar, to better separate:
      - creating UDF (no definer, can have AGGREGATE, simple ident)
      - creating Stored Functions (definer, no AGGREGATE, fully qualified name)
      
      With the test case provided, another issue was exposed which is also fixed:
      the DROP FUNCTION statement was using sp_name and also failing when no database
      is implicitly selected, when droping UDF functions.
      The fix is also to change the grammar so that DROP FUNCTION works with
      both the ident.ident syntax (to drop a stored function), or just the ident
      syntax (to drop either a UDF or a Stored Function, in the current database)
      
      
      mysql-test/r/sp-error.result:
        Adjust test results
      mysql-test/r/udf.result:
        Adjust test results
      mysql-test/t/sp-error.test:
        Adjust test results
      mysql-test/t/udf.test:
        Adjust test results
      sql/sql_parse.cc:
        CREATE UDF FUNCTION does not use a fully qualified name.
      sql/sql_yacc.yy:
        Fix grammar for CREATE / DROP FUNCTION, FOR udf
        Improve error messages for select no_such_function()
      739d2417
  4. 15 Oct, 2007 6 commits
  5. 12 Oct, 2007 4 commits
  6. 11 Oct, 2007 7 commits
    • unknown's avatar
      Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime · fba72eb8
      unknown authored
      into  weblab.(none):/home/marcsql/TREE/mysql-5.1-27858-b
      
      
      mysql-test/r/log_tables.result:
        Auto merged
      fba72eb8
    • unknown's avatar
      Bug#27858 (Failing to log to a log table doesn't log anything to error log) · 411eba91
      unknown authored
      Before this patch, failures to write to the log tables (mysql.slow_log
      and mysql.general_log) were improperly printed (the time was printed twice),
      or not printed at all.
      
      With this patch, failures to write to the log tables is reported in the
      error log, for all cases of failures.
      
      
      mysql-test/r/log_tables.result:
        Bug#27858 (Failing to log to a log table doesn't log anything to error log)
      mysql-test/t/log_tables.test:
        Bug#27858 (Failing to log to a log table doesn't log anything to error log)
      sql/log.cc:
        Bug#27858 (Failing to log to a log table doesn't log anything to error log)
      411eba91
    • unknown's avatar
      Bug#29223 declare cursor c for SHOW ..... · 2170dd08
      unknown authored
      "DECLARE CURSOR FOR SHOW ..." is a syntax that currently appears to work,
      but is untested for some SHOW commands and does not work for other SHOW
      commands.
      
      Since this is an un-intended feature that leaked as a result of a coding bug
      (in the parser grammar), the correct fix is to fix the grammar to not accept
      this construct.
      
      In other words, "DECLARE CURSOR FOR SHOW <other commands that don't work>"
      is not considered a bug, and we will not implement other features to make all
      the SHOW commands usable inside a cursor just because someone exploited a bug.
      
      
      mysql-test/r/sp-error.result:
        Only allow declaring cursors for SELECT statements to avoid
        possible further confusion/problems.
      mysql-test/t/information_schema.test:
        Only SELECT statements are allowed in cursors.
      mysql-test/t/sp-error.test:
        Add test case for Bug#29223. Non-SELECT statements in cursors now
        yields a parser error.
      sql/sql_yacc.yy:
        Rework DECLARE CURSOR statement to not allow non-SELECT statements.
      2170dd08
    • unknown's avatar
      A patch for BUG#31418: User locks misfunctioning after · 8d51a6a5
      unknown authored
      mysql_change_user().
      
      The problem was that THD::ull was not reset in THD::cleanup().
      
      The fix is to reset it.
      
      
      sql/sql_class.cc:
        Reset THD::ull after cleanup to prevent memory corruption.
      tests/mysql_client_test.c:
        Add test case for BUG#31418.
      8d51a6a5
    • unknown's avatar
      Post-merge test case for Bug 31409 · f8bc525a
      unknown authored
      
      mysql-test/include/handler.inc:
        Add test case for Bug 31409
      mysql-test/r/handler_innodb.result:
        Add test case result for InnoDB run of the handler test for Bug 31409
      mysql-test/r/handler_myisam.result:
        Add test case result for MyISAM run of the handler test for Bug 31409
      f8bc525a
    • unknown's avatar
      Merge moksha.com.br:/Users/davi/mysql/mysql-5.0-runtime · f7509e97
      unknown authored
      into  moksha.com.br:/Users/davi/mysql/bugs/31409-5.1
      
      
      sql/sql_base.cc:
        Auto merged
      sql/sql_handler.cc:
        Auto merged
      f7509e97
    • unknown's avatar
      Mismerge broken 5.1-runtime compilation because do_command was defined · 6899d5ce
      unknown authored
      static but it's still used by another compilation unit.
      
      Remove static qualifier from do_command definition.
      
      
      sql/sql_parse.cc:
        do_command is also used by sql_connect.c in 5.1
      6899d5ce