1. 29 Feb, 2008 2 commits
  2. 28 Feb, 2008 6 commits
    • unknown's avatar
      Merge host.loc:/home/uchum/work/PP/5.0-opt-34620 · fe8dfab5
      unknown authored
      into  host.loc:/home/uchum/work/5.1-opt
      
      
      mysql-test/r/row.result:
        Auto merged
      sql/item.h:
        Auto merged
      fe8dfab5
    • unknown's avatar
      Fixed bug #34620: item_row.cc:50: Item_row::illegal_method_call(const char*): · d05c8d38
      unknown authored
                        Assertion `0' failed
      
      If ROW item is a part of an expression that also has
      aggregate function calls (COUNT/SUM/AVG...), a
      "splitting" with an Item::split_sum_func2 function
      is applied to that ROW item.
      Current implementation of Item::split_sum_func2
      replaces this Item_row with a newly created
      Item_aggregate_ref reference to it.
      Then the row cache tries to work with the
      Item_aggregate_ref object as with the Item_row object:
      row cache calls row-emulation methods such as cols and
      element_index. Item_aggregate_ref (like it's parent
      Item_ref) inherits dummy implementations of those
      methods from the hierarchy root Item, and call to
      them leads to failed assertions and wrong data
      output.
      
      Row-emulation virtual functions (cols, element_index, addr,
      check_cols, null_inside and bring_value) of Item_ref have
      been overloaded to forward calls to an underlying item
      reference.
      
      
      
      
      mysql-test/r/row.result:
        Added test case for bug #34620.
      mysql-test/t/row.test:
        Added test case for bug #34620.
      sql/item.h:
        Fixed bug #34620.
        Row-emulation virtual functions (cols, element_index, addr,
        check_cols, null_inside and bring_value) of Item_ref have
        been overloaded to forward calls to an underlying item
        reference.
      d05c8d38
    • unknown's avatar
      merge of bug 33266 to 5.1-opt · b0bffd04
      unknown authored
      b0bffd04
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/B34747-5.0-opt · ae60f58f
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/B34747-5.1-opt
      
      
      libmysql/libmysql.c:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      mysql-test/r/func_gconcat.result:
        Auto merged
      mysql-test/t/func_gconcat.test:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/log.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      mysql-test/r/subselect.result:
        merged bug 34747 and 33266 5.0-opt->5.1-opt
      mysql-test/t/subselect.test:
        merged bug 34747 and 33266 5.0-opt->5.1-opt
      ae60f58f
    • unknown's avatar
      Bug#32167 another privilege bypass with DATA/INDEX DIRECORY(3rd version for 5.1) · d04c177b
      unknown authored
      added new function test_if_data_home_dir() which checks that
      path does not contain mysql data home directory.
      Using of 'mysql data home'/'any db name' in
      DATA DIRECTORY & INDEX DIRECTORY is disallowed
      
      
      mysql-test/r/partition.result:
        test result
      mysql-test/r/partition_not_windows.result:
        result fix
      mysql-test/r/partition_symlink.result:
        result fix
      mysql-test/r/symlink.result:
        test result update
      mysql-test/t/partition.test:
        test case
      mysql-test/t/partition_not_windows.test:
        test case update
      mysql-test/t/partition_symlink.test:
        test case update
      mysql-test/t/symlink.test:
        test case
      sql/mysql_priv.h:
        new variable mysql_unpacked_real_data_home
      sql/mysqld.cc:
        new variable mysql_unpacked_real_data_home
      sql/partition_info.cc:
        new check_partition_dirs() which checks
        data directory and index directory for partition elements
      sql/partition_info.h:
        new check_partition_dirs() which checks
        data directory and index directory for partition elements
      sql/sql_parse.cc:
        added new function test_if_data_home_dir() which checks that
        path does not contain mysql data home directory.
        Using of 'mysql data home'/'any db name' in
        DATA DIRECTORY & INDEX DIRECTORY is disallowed
      d04c177b
    • unknown's avatar
      Bug #34747: crash in debug assertion check after derived table · 623437f7
      unknown authored
      Was a double-free of the Unique member of Item_func_group_concat.
      This was not causing a crash because the Unique is a descendent of
      Sql_alloc.
      Fixed to free the Unique only if it was allocated for the instance 
      of Item_func_group_concat it was referenced from
      
      
      mysql-test/r/func_gconcat.result:
        Bug #34747: test case
      mysql-test/t/func_gconcat.test:
        Bug #34747: test case
      sql/item_sum.cc:
        Bug #34747: free the Unique only if it was allocated
        for this instance of Item_func_group_concat
      623437f7
  3. 27 Feb, 2008 8 commits
    • unknown's avatar
      Merge kaamos.(none):/data/src/opt/bug33834/my51-bug33834 · c5fbcdc4
      unknown authored
      into  kaamos.(none):/data/src/opt/mysql-5.1-opt
      
      c5fbcdc4
    • unknown's avatar
      Merge kaamos.(none):/data/src/opt/bug33834/my50-bug33834 · 815f5ad5
      unknown authored
      into  kaamos.(none):/data/src/opt/bug33834/my51-bug33834
      
      
      mysql-test/t/func_time.test:
        Auto merged
      815f5ad5
    • unknown's avatar
      Fixed test suite failures with --ps-protocol introduced in PB by · dad47218
      unknown authored
      the patch for bug #33834.
      
      dad47218
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.1-opt · 96a92cab
      unknown authored
      into  mysql.com:/home/hf/work/25097/my51-25097
      
      
      libmysql/libmysql.c:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      sql-common/client.c:
        Auto merged
      sql/log.cc:
        Auto merged
      96a92cab
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.0-opt · de47861e
      unknown authored
      into  mysql.com:/home/hf/work/25097/my50-25097
      
      
      libmysql/libmysql.c:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      sql/log.cc:
        Auto merged
      de47861e
    • unknown's avatar
      merging · d13abd50
      unknown authored
      d13abd50
    • unknown's avatar
      Merge mysql.com:/home/hf/work/25097/my50-25097 · bf9e17b1
      unknown authored
      into  mysql.com:/home/hf/work/25097/my51-25097
      
      
      client/mysql.cc:
        Auto merged
      include/sql_common.h:
        Auto merged
      libmysql/libmysql.c:
        Auto merged
      libmysqld/lib_sql.cc:
        Auto merged
      sql-common/client.c:
        merging
      sql/log.cc:
        merging
      bf9e17b1
    • unknown's avatar
      Bug #25097 mysql_server_init fails silently if no errmsg.sys is present. · 86260744
      unknown authored
      There was no way to return an error from the client library
      if no MYSQL connections was established.
      So here i added variables to store that king of errors and
      made functions like mysql_error(NULL) to return these.
      
      
      client/mysql.cc:
        Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
        
        Show the error message on std_error
      include/sql_common.h:
        Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
        
        cant_connect_sqlstate constant declared
      libmysql/libmysql.c:
        Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
        
        mysql_sqlstate(NULL) returns 'unknown_sqlstate'
      libmysqld/lib_sql.cc:
        Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
        
        EMBEDDED_SERVER version of the vprint_msg_to_log() implemented
      sql-common/client.c:
        Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
        
        mysql_server_last_errno and mysql_server_last_error introduced
        to store errors not related to particular connections.
        
        mysql_error(NULL) and mysql_errno(NULL) now returns these
        mysql_server_last_error and errno respectively
      sql/log.cc:
        Bug #25097 mysql_server_init fails silently if no errmsg.sys is present.
        
        EMBEDDED_LIBRARY implementation of the vprint_msg_to_log() moved
        to lib_sql.cc
      86260744
  4. 26 Feb, 2008 2 commits
  5. 25 Feb, 2008 3 commits
    • unknown's avatar
      Post-merge fixes for bug #33834. · 483fe4ba
      unknown authored
      483fe4ba
    • unknown's avatar
      Merge kaamos.(none):/data/src/opt/bug33834/my50-bug33834 · 8700e53c
      unknown authored
      into  kaamos.(none):/data/src/opt/bug33834/my51-bug33834
      
      
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      sql/sql_yacc.yy:
        Manual merge.
      8700e53c
    • unknown's avatar
      Fix for bug #33834: FRAC_SECOND: Applicability not clear in · fe0eafa5
      unknown authored
                          documentation
      
      While the manual mentions FRAC_SECOND only for the TIMESTAMPADD()
      function, it was also possible to use FRAC_SECOND with DATE_ADD(),
      DATE_SUB() and +/- INTERVAL.
      
      Fixed the parser to match the manual, i.e. using FRAC_SECOND for 
      anything other than TIMESTAMPADD()/TIMESTAMPDIFF() now produces a 
      syntax error.
      
      Additionally, the patch allows MICROSECOND to be used in TIMESTAMPADD/
      TIMESTAMPDIFF and marks FRAC_SECOND as deprecated.
      
      
      mysql-test/r/func_time.result:
        Added a test case for bug #33834.
      mysql-test/t/func_time.test:
        Added a test case for bug #33834.
      sql/sql_yacc.yy:
        Reject FRAC_SECOND for anything other than TIMESTAMPADD() or
        TIMESTAMPDIFF().
        Allow MICROSECOND to be used with TIMESTAMPADD()/TIMESTAMPDIFF().
        Warn about FRAC_SECOND being a deprecated unit.
      fe0eafa5
  6. 24 Feb, 2008 5 commits
    • unknown's avatar
      Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · c981603b
      unknown authored
      into  mysql.com:/misc/mysql/99999/51-99999
      
      
      sql/set_var.cc:
        Auto merged
      sql/sql_acl.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_plugin.cc:
        Auto merged
      c981603b
    • unknown's avatar
      Bug#32757: hang with sql_mode set when setting some global variables · d1d93af3
      unknown authored
      If setting a system-variable provided by a plug-in failed, no OK or
      error was sent in some cases, hanging the client. We now send an error
      in the case from the ticket (integer-argument out of range in STRICT
      mode). We also provide a semi-generic fallback message for possible
      future cases like this where an error is signalled, but no message is
      sent to the client. The error/warning handling is unified so it's the
      same again for variables provided by plugins and those in the server
      proper.
      
      
      mysql-test/r/plugin.result:
        show that on out-of-range values, plugin interface throws errors
        in STRICT mode and warnings otherwise.
      mysql-test/t/plugin.test:
        show that on out-of-range values, plugin interface throws errors
        in STRICT mode and warnings otherwise.
      sql/set_var.cc:
        - handle signedness of values used in warnings
        - in STRICT mode, throw errors rather than warnings
      sql/sql_parse.cc:
        If sql_set_variables() returns with an error but no message
        was sent to the client, send a semi-generic one so the session
        won't hang and we won't fail silently.
      sql/sql_plugin.cc:
        throw a warning if more than just block-size was corrected
        (or an error in STRICT mode). use functions from set_var
        for uniform behaviour of server- and plug-in variables.
      storage/example/ha_example.cc:
        Add a ULONG system variable to example plugin so
        we can test integers in the plugin-interface without
        having to depend on the presence of innobase.
      d1d93af3
    • unknown's avatar
      Bug#32753: PAD_CHAR_TO_FULL_LENGTH is not documented and interferes with grant tables · d6dafaa1
      unknown authored
      SQL-mode PAD_CHAR_TO_FULL_LENGTH affected mysqld's user-table too. If
      enabled, user-name and host were space-padded and no longer matched
      the login-data of incoming connexions.
      
      Patch disregards pad-flag while loading privileges so ability to log
      in does not depend on SQL-mode.
      
      
      mysql-test/r/sql_mode.result:
        show that SQL-mode 'PAD_CHAR_TO_FULL_LENGTH' does not affect
        loading of privileges (and by extension, ability to log in).
      mysql-test/t/sql_mode.test:
        show that SQL-mode 'PAD_CHAR_TO_FULL_LENGTH' does not affect
        loading of privileges (and by extension, ability to log in).
      sql/sql_acl.cc:
        temporarily disable SQL-mode 'PAD_CHAR_TO_FULL_LENGTH' while
        reloading privileges
      d6dafaa1
    • unknown's avatar
      Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · b895c910
      unknown authored
      into  mysql.com:/misc/mysql/20752/51-20752
      
      
      sql/item_func.cc:
        Auto merged
      b895c910
    • unknown's avatar
      Bug#20752: BENCHMARK with many iterations returns too quickly · 1f2c3196
      unknown authored
      In BENCHMARK(count, expr), count could overflow/wrap-around.
      Patch changes to a sufficiently large data-type. Adds a warning
      for negative count values.
      
      
      mysql-test/r/func_str.result:
        show that a negative 'count' for BENCHMARK(count, expr)
        throws a warning and returns NULL.
      mysql-test/t/func_str.test:
        show that a negative 'count' for BENCHMARK(count, expr)
        throws a warning and returns NULL.
      sql/item_func.cc:
        use ulonglong rather than ulong in BENCHMARK(count, expr)
        throw warning on negative 'count'; return SQL-NULL.
      1f2c3196
  7. 22 Feb, 2008 11 commits
  8. 20 Feb, 2008 2 commits
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 5c6738db
      unknown authored
      into  moonbone.local:/work/33266-bug-5.0-opt-mysql
      
      5c6738db
    • unknown's avatar
      Bug#33266: Incorrect test case for the bug#31048 failing on some platforms. · f950ec6a
      unknown authored
      The test case for the bug#31048 checks that there is no crash on stack
      overrun. But due to different stack sizes on different platforms it failed
      on some of them.
      
      The new test case check that a query with at least 4 level subquery nesting
      works without the stack overrun nesting and other levels of nesting doesn't
      cause a crash.
      
      
      mysql-test/t/subselect.test:
        Corrected test case for the bug#31048.
      mysql-test/r/subselect.result:
        Corrected test case for the bug#31048.
      f950ec6a
  9. 19 Feb, 2008 1 commit