1. 27 Feb, 2009 1 commit
    • Tatiana A. Nurnberg's avatar
      Bug#40657: assertion with out of range variables and traditional sql_mode · 71913e35
      Tatiana A. Nurnberg authored
      In STRICT mode, out-of-bounds values caused an error message
      to be queued (rather than just a warning), without any further
      error-like processing happening. (The error is queued during
      update, at which time it's too late. For it to be processed
      properly, it would need to be queued during check-stage.)
      The assertion rightfully complains that we're trying to send
      an OK while having an error queued.
      
      Changeset breaks a lot of tests out into check-stage. This also
      allows us to send more correct warnings/error messages.
      
      sql/set_var.cc:
        cleanup: fold get_unsigned() and fix_unsigned() into one,
        as well as all the semi-common code from the ::check
        functions.
      71913e35
  2. 24 Feb, 2009 1 commit
    • Tatiana A. Nurnberg's avatar
      Bug#40657: assertion with out of range variables and traditional sql_mode · 7099d7bc
      Tatiana A. Nurnberg authored
      In STRICT mode, out-of-bounds values caused an error message
      to be queued (rather than just a warning), without any further
      error-like processing happening. (The error is queued during
      update, at which time it's too late. For it to be processed
      properly, it would need to be queued during check-stage.)
      The assertion rightfully complains that we're trying to send
      an OK while having an error queued.
      
      Changeset breaks a lot of tests out into check-stage. This also
      allows us to send more correct warnings/error messages.
      
      
      sql/set_var.cc:
        cleanup: fold get_unsigned() and fix_unsigned() into one,
        as well as all the semi-common code from the ::check
        functions.
      7099d7bc
  3. 03 Feb, 2009 1 commit
    • Tatiana A. Nurnberg's avatar
      Bug#40657: assertion with out of range variables and traditional sql_mode · d1fb6bbc
      Tatiana A. Nurnberg authored
      In STRICT mode, out-of-bounds values caused an error message
      to be queued (rather than just a warning), without any further
      error-like processing happening. (The error is queued during
      update, at which time it's too late. For it to be processed
      properly, it would need to be queued during check-stage.)
      The assertion rightfully complains that we're trying to send
      an OK while having an error queued.
      
      Changeset breaks a lot of tests out into check-stage. This also
      allows us to send more correct warnings/error messages.
      
      mysql-test/r/auto_increment_increment_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/auto_increment_increment_func.result:
        update test results reflecting more correct warnings
      mysql-test/r/auto_increment_offset_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/auto_increment_offset_func.result:
        update test results reflecting more correct warnings
      mysql-test/r/concurrent_insert_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/connect_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/default_week_format_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/delayed_insert_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/div_precision_increment_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/expire_logs_days_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/group_concat_max_len_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/interactive_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_allowed_packet_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_binlog_size_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_connections_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_delayed_threads_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_error_count_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_insert_delayed_threads_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_length_for_sort_data_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_prepared_stmt_count_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_relay_log_size_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_sort_length_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/max_sp_recursion_depth_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/myisam_data_pointer_size_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/net_buffer_length_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/net_read_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/net_write_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/optimizer_prune_level_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/optimizer_search_depth_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/preload_buffer_size_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/ps.result:
        update test results reflecting more correct warnings
      mysql-test/r/read_buffer_size_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/read_rnd_buffer_size_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/slave_net_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/slow_launch_time_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/table_definition_cache_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/table_lock_wait_timeout_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/table_open_cache_basic.result:
        update test results reflecting more correct warnings
      mysql-test/r/variables.result:
        add test case that throws error (rather than warning)
        in the middle of trying to set a system-variable.
      mysql-test/t/variables.test:
        add test case that throws error (rather than warning)
        in the middle of trying to set a system-variable.
      sql/set_var.cc:
        Add comments.
        Prevent double-warnings.
        Through warnings for negative values given to unsigned
        system-variables.
        Process errors and warnings at check() stage rather than
        update() stage, since we may only issue warnings at the latter.
      d1fb6bbc
  4. 28 Nov, 2008 15 commits
    • Ingo Struewing's avatar
      auto-merge · 622db260
      Ingo Struewing authored
      622db260
    • Matthias Leich's avatar
      ec33acf6
    • Matthias Leich's avatar
      Merge of last pushes into GCA tree, no conflicts · 58288b69
      Matthias Leich authored
      Diff to actual 5.0-bugteam is revno: 2725 only
      58288b69
    • Gleb Shchepa's avatar
      86a20bd3
    • Gleb Shchepa's avatar
      Bug #40745: Error during WHERE clause calculation in UPDATE · d15cbc1a
      Gleb Shchepa authored
                  leads to an assertion failure
      
      Any run-time error in stored function (like recursive function
      call or update of table that is already updating by statement
      which invoked this stored function etc.) that was used in some
      expression of the single-table UPDATE statement caused an
      assertion failure.
      Multiple-table UPDATE (as well as INSERT and both single- and
      multiple-table DELETE) are not affected.
      
      
      mysql-test/r/update.result:
        Added test case for bug #40745.
      mysql-test/t/update.test:
        Added test case for bug #40745.
      sql/sql_update.cc:
        Bug #40745: Error during WHERE clause calculation in UPDATE
                    leads to an assertion failure
        
        The mysql_update function has been updated to take into account
        the status of invoked stored functions before setting the status
        of whole UPDATE query to OK.
      d15cbc1a
    • Gleb Shchepa's avatar
      Bug #33461: SELECT ... FROM <view> USE INDEX (...) throws · 41ccbefc
      Gleb Shchepa authored
                  an error
      
      Even after the fix for bug 28701 visible behaviors of
      SELECT FROM a view and SELECT FROM a regular table are
      little bit different:
      
      1. "SELECT FROM regular table USE/FORCE/IGNORE(non
         existent index)" fails with a "ERROR 1176 (HY000):
         Key '...' doesn't exist in table '...'"
      
      2. "SELECT FROM view USING/FORCE/IGNORE(any index)" fails
         with a "ERROR 1221 (HY000): Incorrect usage of
         USE/IGNORE INDEX and VIEW".  OTOH "SHOW INDEX FROM
         view" always returns empty result set, so from the point
         of same behaviour view we trying to use/ignore non
         existent index.
      
      To harmonize the behaviour of USE/FORCE/IGNORE(index)
      clauses in SELECT from a view and from a regular table the
      "ERROR 1221 (HY000): Incorrect usage of USE/IGNORE INDEX
      and VIEW" message has been replaced with the "ERROR 1176
      (HY000): Key '...' doesn't exist in table '...'" message
      like for tables and non existent keys.
      
      
      mysql-test/r/view.result:
        Added test case for bug #33461.
        Updated test case for bug 28701.
      mysql-test/t/view.test:
        Added test case for bug #33461.
        Updated test case for bug 28701.
      sql/sql_view.cc:
        Bug #33461: SELECT ... FROM <view> USE INDEX (...) throws
                    an error
        
        To harmonize the behaviour of USE/FORCE/IGNORE(index)
        clauses in SELECT from a view and from a regular table the
        "ERROR 1221 (HY000): Incorrect usage of USE/IGNORE INDEX
        and VIEW" message has been replaced with the "ERROR 1176
        (HY000): Key '...' doesn't exist in table '...'" message
        like for tables and non existent keys.
      41ccbefc
    • Georgi Kodinov's avatar
      merged bug 37339 to 5.1-bugteam · 552a1bd3
      Georgi Kodinov authored
      552a1bd3
    • Georgi Kodinov's avatar
      merged bug 37339 to 5.0-bugteam · f1a9d567
      Georgi Kodinov authored
      f1a9d567
    • Georgi Kodinov's avatar
      Bug #37339: SHOW VARIABLES not working properly with multi-byte datadir · 8e688a7a
      Georgi Kodinov authored
            
      The SHOW VARIABLES LIKE .../SELECT @@/SELECT ... FROM INFORMATION_SCHEMA.VARIABLES
      were assuming that all the system variables are in system charset (UTF-8).
      However the variables that are settable through command line will have a different
      character set (character_set_filesystem).
      Fixed the server to remember the correct character set of basedir, datadir, tmpdir,
      ssl, plugin_dir, slave_load_tmpdir, innodb variables; init_connect and init_slave 
      variables and use it when processing data.
      
      mysql-test/r/ctype_filesystem.result:
        Bug #37339: test case (should be in utf-8)
      mysql-test/t/ctype_filesystem-master.opt:
        Bug #37339: test case (should be in ISO-8859-1)
      mysql-test/t/ctype_filesystem.test:
        Bug #37339: test case
      sql/mysqld.cc:
        Bug #37339: remember the correct character set for init_slave and init_connect
      sql/set_var.cc:
        Bug #37339: 
          - remember the character set of the relevant variables
          - implement storing and using the correct 
            character set
      sql/set_var.h:
        Bug #37339: implement storing and using the correct 
        character set
      sql/sql_show.cc:
        Bug #37339: implement storing and using the correct 
        character set
      8e688a7a
    • Ingo Struewing's avatar
      merge · f525d35b
      Ingo Struewing authored
      .bzrignore:
        Added autom4te.cache and language directories in sql/share to ignorefile.
      f525d35b
    • Sergey Glukhov's avatar
      automerge · be1e9928
      Sergey Glukhov authored
      be1e9928
    • Sergey Glukhov's avatar
      error code is changed to satisfy Win NT · fef07511
      Sergey Glukhov authored
      fef07511
    • Ingo Struewing's avatar
      merge · 8e9e95f2
      Ingo Struewing authored
      8e9e95f2
    • Sergey Glukhov's avatar
      5.0-bugteam->5.1-bugteam merge · 710b7125
      Sergey Glukhov authored
      sql/slave.cc:
        compiler warning fix
      710b7125
    • Sergey Glukhov's avatar
      pushbuild failure fixes · 78119b2d
      Sergey Glukhov authored
      mysql-test/r/perror-win.result:
        pushbuild failure fix
      mysql-test/t/perror-win.test:
        pushbuild failure fix
      sql/item_func.cc:
        pushbuild failure fix
      78119b2d
  5. 27 Nov, 2008 22 commits