1. 15 Apr, 2005 1 commit
    • unknown's avatar
      Fix for bug #9486 "Can't perform multi-update in stored procedure". · 34983181
      unknown authored
      New more SP-locking friendly approach to handling locks in multi-update.
      Now we mark all tables of multi-update as needing write lock at parsing
      stage and if possible downgrade lock at execution stage (For its work
      SP-locking mechanism needs to know all lock types right after parsing
      stage).
      
      
      mysql-test/r/sp-threads.result:
        Added test for bug #9486 "Can't perform multi-update in stored procedure".
      mysql-test/t/sp-threads.test:
        Added test for bug #9486 "Can't perform multi-update in stored procedure".
      sql/sp_head.cc:
        SP_TABLE, sp_head::merge_table_list()/add_used_tables_to_table_list():
          Since some queries during their execution (e.g. multi-update)
          may change type of lock for some of their tables and thus change
          lock_type member for some of elements of table list, we should
          store type of lock in SP_TABLE struct explicitly instead of using
          lock_type member of TABLE_LIST object pointed by SP_TABLE::table.
      sql/sql_lex.h:
        Removed no longer used LEX::multi_lock_option member.
      sql/sql_prepare.cc:
        mysql_test_update():
          We don't need to bother about LEX::multi_lock_option if we convert
          multi-update to update anymore. Since nowdays multi-update uses 
          TABLE_LIST::lock_type for specifying lock level of updated tables
          instead of LEX::multi_lock_option.
      sql/sql_update.cc:
        mysql_update()/mysql_multi_update_prepare():
         Now we mark all tables of multi-update as needing write lock at parsing
         stage and if possible downgrade lock at execution stage. Old approach
         (don't set lock type until execution stage) was not working well with
         SP-locking (For its work SP-locking mechanism needs to know all lock 
         types right after parsing stage).
        
        mysql_multi_update():
          We should return FALSE if no error occurs.
      sql/sql_yacc.yy:
        update:
         Now we mark all tables of multi-update as needing write lock at parsing
         stage and if possible downgrade lock at execution stage. Old approach
         (don't set lock type until execution stage) was not working well with
         SP-locking (For its work SP-locking mechanism needs to know all lock 
         types right after parsing stage).
      34983181
  2. 12 Apr, 2005 16 commits
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · aa2c93a6
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-5.0
      
      
      sql/sql_parse.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      aa2c93a6
    • unknown's avatar
      mysql-test/r/flush_block_commit.result · 33d26895
      unknown authored
          correct result after bugfix
      sql/sql_class.cc
          initialize net.query_cache_query
      
      
      mysql-test/r/flush_block_commit.result:
        correct result after bugfix
      sql/sql_class.cc:
        initialize net.query_cache_query
      sql/sql_yacc.yy:
        oops
      33d26895
    • unknown's avatar
      Bit type: code clean-up. · bd5c737c
      unknown authored
      
      sql/field.h:
        Field_bit_as_char::size_of() added - we use it in the ::new_key_field().
      sql/sql_table.cc:
        We have to set pack_flag for bit fields in the mysql_prepare_table()
        as we use it in the create_length_to_internal_length().
      bd5c737c
    • unknown's avatar
      Merge mysql.com:/usr/local/bk/mysql-5.0 · ebd0964c
      unknown authored
      into mysql.com:/home/pem/work/mysql-5.0
      
      ebd0964c
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · 069c62a7
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-5.0
      
      
      sql/handler.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      069c62a7
    • unknown's avatar
      FLUSH TABLES WITH READ LOCK should block writes to binlog too · 784847d9
      unknown authored
      
      mysql-test/r/flush_block_commit.result:
        FLUSH TABLES WITH READ LOCK should block writes to binlog too
        it does not yet
      mysql-test/t/flush_block_commit.test:
        FLUSH TABLES WITH READ LOCK should block writes to binlog too
        it does not yet
      784847d9
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 8b88f3e5
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      8b88f3e5
    • unknown's avatar
      Bit type: code cleanup. · 5900eb79
      unknown authored
      
      sql/field.cc:
        We have to use memcmp() here to get determinate results.
      sql/sql_table.cc:
        Should set pack_flag here instead of doing |=
      5900eb79
    • unknown's avatar
      Fixed BUG#7185: Stored procedure crash if identifier is AVG · 97307798
      unknown authored
      
      mysql-test/r/sp.result:
        Added test case for BUG#7185.
      mysql-test/t/sp.test:
        Added test case for BUG#7185.
      sql/sql_yacc.yy:
        Allow non-reserved words as stored procedure names.
      97307798
    • unknown's avatar
      Fixed BUG#6663: Stored Procedures code report non-selected DB · 3bda6e58
      unknown authored
                      when CREATE but not when ALTER
      
      
      sql/sql_parse.cc:
        Return more consistent error message for alter/drop procedure/function
        when no current database and no qualified name.
      3bda6e58
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 31ae09fc
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      mysql-test/r/heap.result:
        Auto merged
      mysql-test/t/heap.test:
        Auto merged
      31ae09fc
    • unknown's avatar
      Merge grichter@bk-internal.mysql.com:/home/bk/mysql-5.0 · 3135c9c0
      unknown authored
      into lmy002.wdf.sap.corp:/home/georg/work/mysql/prod/mysql-5.0
      
      3135c9c0
    • unknown's avatar
      BUG#8924 'Explain' shows different strategy · d1cf60d1
      unknown authored
       - If number of records in table is 4, the calculated cost for using "index" and "range" become so close so that any rounding errors becomes visible.
       - Added one more record to the tables for heap test and expoect "range" to be selected
       - Decrease number of records in t1 for range and expect "index" to be choosen.
      
      
      mysql-test/r/heap.result:
        Add one more record to table t1 and expect explain to use "range"
      mysql-test/r/heap_btree.result:
        Add one more record to table t1 and expect explain to use "range"
      mysql-test/r/heap_hash.result:
        Add one more record to table t1 and expect explain to use "range"
      mysql-test/r/range.result:
        Update results
      mysql-test/t/heap.test:
        Add one more record to table t1 and expect explain to use "range"
      mysql-test/t/heap_btree.test:
        Add one more record to table t1 and expect explain to use "range"
      mysql-test/t/heap_hash.test:
        Add one more record to table t1 in order for optimizer to select use of "range" deterministic
      mysql-test/t/range.test:
        Remove one record from table t1 to avoid that cost for "index" and "range" are so close that rounding error become visible.
      d1cf60d1
    • unknown's avatar
      Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0 · adca9c41
      unknown authored
      into mysql.com:/usr/home/ram/work/5.0.bit_class
      
      
      sql/field.cc:
        Auto merged
      sql/ha_innodb.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      adca9c41
    • unknown's avatar
      Bit type support for non-MyISAM tables. · 8be051ae
      unknown authored
      8be051ae
    • unknown's avatar
      Fix for verification tests: loss of decimal places should not · 39ed5c44
      unknown authored
      return an error
      
      39ed5c44
  3. 11 Apr, 2005 22 commits
  4. 10 Apr, 2005 1 commit
    • unknown's avatar
      Fix for bug #9796 "Query Cache caches queries with CURRENT_USER() · b73ed3d7
      unknown authored
      function".
      
      We should not cache queries using CURRENT_USER() function as we do it
      for some other functions, e.g. USER() function.
      
      
      mysql-test/r/query_cache.result:
        Let us test that queries with CURRENT_USER() function are not cached.
      mysql-test/t/query_cache.test:
        Let us test that queries with CURRENT_USER() function are not cached.
      sql/item_create.cc:
        create_func_current_user():
          We should not cache queries which use CURRENT_USER() function.
      b73ed3d7