1. 28 Oct, 2009 1 commit
    • Sergey Vojtovich's avatar
      BUG#43171 - Assertion failed: thd->transaction.xid_state.xid.is_null() · 17ed7089
      Sergey Vojtovich authored
      XA START may cause assertion failure/server crash when it is called
      after unilateral roll back issued by the Resource Manager (both
      in regular transaction and after XA transaction).
      
      The problem was that rm_error variable wasn't set/reset properly.
      
      mysql-test/r/xa.result:
        A test case for BUG#43171.
      mysql-test/t/xa.test:
        A test case for BUG#43171.
      sql/handler.cc:
        Setting rm_error when we're out of XA transaction has no
        special meaning. But it blocks reset of thd->transaction.xid
        structure later.
      sql/sql_parse.cc:
        Reset rm_error before we enter ha_rollback(), so
        thd->transaction.xid strucure is reinitialized.
      17ed7089
  2. 24 Oct, 2009 1 commit
  3. 23 Oct, 2009 8 commits
  4. 22 Oct, 2009 2 commits
  5. 21 Oct, 2009 5 commits
    • Ramil Kalimullin's avatar
      Fix for bug#47019: Assertion failed: 0, file .\rt_mbr.c, · 17ed6b9a
      Ramil Kalimullin authored
      line 138 when forcing a spatial index
      
      Problem: "Spatial indexes can be involved in the search 
      for queries that use a function such as MBRContains() 
      or MBRWithin() in the WHERE clause".
      Using spatial indexes for JOINs with =, <=> etc.
      predicates is incorrect.
      
      Fix: disable spatial indexes for such queries.
      
      
      mysql-test/r/select.result:
        Fix for bug#47019: Assertion failed: 0, file .\rt_mbr.c, 
        line 138 when forcing a spatial index
          - test result.
      mysql-test/t/select.test:
        Fix for bug#47019: Assertion failed: 0, file .\rt_mbr.c, 
        line 138 when forcing a spatial index
          - test case.
      sql/sql_select.cc:
        Fix for bug#47019: Assertion failed: 0, file .\rt_mbr.c, 
        line 138 when forcing a spatial index
          - disable spatial indexes for queries which use 
        non-spatial conditions (e.g. NATURAL JOINs).
      17ed6b9a
    • Georgi Kodinov's avatar
      Bug #47780: crash when comparing GIS items from subquery · 19ffe230
      Georgi Kodinov authored
            
      If the first argument to GeomFromWKB function is a geometry
      field then the function just returns its value.
      However in doing so it's not preserving first argument's 
      null_value flag and this causes unexpected null value to
      be returned to the calling function.
            
      Fixed by updating the null_value of the GeomFromWKB function
      in such cases (and all other cases that return a NULL e.g.
      because of not enough memory for the return buffer).
      19ffe230
    • Bjorn Munch's avatar
      merge from 5.1-mtr · 20674b1a
      Bjorn Munch authored
      20674b1a
    • Tatiana A. Nurnberg's avatar
      auto-merge · b25cc8f2
      Tatiana A. Nurnberg authored
      b25cc8f2
    • Tatiana A. Nurnberg's avatar
      auto-merge · 495cde34
      Tatiana A. Nurnberg authored
      495cde34
  6. 20 Oct, 2009 14 commits
    • Tatiana A. Nurnberg's avatar
      manual merge of 28141 · 3f0d0d06
      Tatiana A. Nurnberg authored
      3f0d0d06
    • Bjorn Munch's avatar
      merge 48149 · 0777ef56
      Bjorn Munch authored
      0777ef56
    • Luis Soares's avatar
      BUG#34582: FLUSH LOGS does not close and reopen the binlog index · 6395cb8e
      Luis Soares authored
      file
            
      Issuing 'FLUSH LOGS' does not close and reopen indexfile.
      Instead a SEEK_SET is performed.
            
      This patch makes index file to be closed and reopened whenever a
      rotation happens (FLUSH LOGS is issued or binary log exceeds 
      maximum configured size).
      
      mysql-test/suite/binlog/r/binlog_delete_and_flush_index.result:
        Result file.
      mysql-test/suite/binlog/t/binlog_delete_and_flush_index.test:
        Test case.
      sql/log.cc:
        Added LOG_CLOSE_INDEX flag when calling MYSQL_BIN_LOG::close
        from within MYSQL_BIN_LOG::new_file_impl (which should just be
        called whenever a rotation is to happen - FLUSH LOGS issued or
        binlog size exceeds the maximum configured).
      6395cb8e
    • Alexander Barkov's avatar
      A post fix for BUG#45645 Mysql server close all connection and restart using lower function · c12dad02
      Alexander Barkov authored
      - Initialized caseinfo only if it is NULL
      c12dad02
    • Kristofer Pettersson's avatar
      Automerge · e942adb2
      Kristofer Pettersson authored
      e942adb2
    • Satya B's avatar
      merge mysql-5.0-bugteam to mysql-5.1-bugteam · f6048130
      Satya B authored
      f6048130
    • Satya B's avatar
      merge to mysql-5.0-bugteam · 034627ae
      Satya B authored
      034627ae
    • Satya B's avatar
      merge mysql-5.0-bugteam to mysql-5.1-bugteam · 362aaccb
      Satya B authored
      362aaccb
    • Kristofer Pettersson's avatar
      automerge · c310a5c9
      Kristofer Pettersson authored
      c310a5c9
    • Satya B's avatar
      Fix for Bug #41597 - After rename of user, there are additional grants when · 88253542
      Satya B authored
                           grants are reapplied.
      
      
      After renaming a user and trying to re-apply grants results in additional
      grants.
      
      This is because we use username as part of the key for GRANT_TABLE structure.
      When the user is renamed, we only change the username stored and the hash key
      still contains the old user name and this results in the extra privileges
      
      Fixed by rebuilding the hash key and updating the column_priv_hash structure
      when the user is renamed
      
      mysql-test/r/grant3.result:
        Bug #41597 - After rename of user, there are additional grants when 
                     grants are reapplied.
        
        Testcase for BUG#41597
      mysql-test/t/grant3.test:
        Bug #41597 - After rename of user, there are additional grants when 
                     grants are reapplied.
        
        Testcase for BUG#41597
      sql/sql_acl.cc:
        Bug #41597 - After rename of user, there are additional grants when 
                     grants are reapplied.
        
        Fixed handle_grant_struct() to update the hash key when the user is renamed.
        Added to set_user_details() method to GRANT_NAME class
      88253542
    • Sergey Vojtovich's avatar
      Merge 5.1-bugteam -> 5.1-bugteam-local. · 2fb59724
      Sergey Vojtovich authored
      2fb59724
    • Sergey Vojtovich's avatar
      Merge 5.1-bugteam -> 5.1-bugteam-local. · 0ae6a35e
      Sergey Vojtovich authored
      0ae6a35e
    • unknown's avatar
      Bug #34777 mysqlbinlog: --help output for --base64-output is hard to understand · 52db2f36
      unknown authored
      There are some problems about help text:
      - It is stated that "auto" is the default twice. It need be stated only once.
      - It is stated that --base64-output is short for --base64-output=always. But that sounds
      like the default is "always", not "auto".
      
      Make the help text clear as following:
      Determine when the output statements should be base64-encoded BINLOG 
      statements: 'never' disables it and works only for binlogs without 
      row-based events; 'auto' prints base64 only when necessary (i.e., 
      for row-based events and format description events); 'always' prints 
      base64 whenever possible. 'always' is for debugging only and should 
      not be used in a production system. If this argument is not given, 
      the default is 'auto'; if it is given with no argument, 'always' is used.
      52db2f36
    • Tatiana A. Nurnberg's avatar
      Bug#28141: Control C on query waiting on lock causes ERROR 1053 (server shutdown) · 5ef63a4f
      Tatiana A. Nurnberg authored
      If a thread is killed in the server, we throw "shutdown" only if one is actually in
      progress; otherwise, we throw "query interrupted".
      
      Control-C in the mysql command-line client is "incremental" now.
      First Control-C sends KILL QUERY (when connected to 5.0+ server, otherwise, see next)
      Next  Control-C sends KILL CONNECTION
      Next  Control-C aborts client.
      
      As the first two steps only pertain to an existing query,
      Control-C will abort the client right away if no query is running.
      
      client will give more detailed/consistent feedback on Control-C now.
      
      
      client/mysql.cc:
        Extends Control-C handling; enhances up feedback to user.
        
        On 5.0+ servers, we try to be nice and send KILL QUERY first
        if Control-C is pressed in the command-line client, but if
        that doesn't work, we now give the user the opportunity to
        send KILL CONNECTION with another Control-C (and to kill the
        client with another Control-C if that somehow doesn't work
        either).
      mysql-test/t/flush_read_lock_kill.test:
        we're getting correct "thread killed" rather than
        "in shutdown" error now
      mysql-test/t/kill.test:
        we're getting correct "thread killed" rather than
        "in shutdown" error now
      mysql-test/t/rpl000001.test:
        we're getting correct "thread killed" rather than
        "in shutdown" error now
      mysql-test/t/rpl_error_ignored_table.test:
        we're getting correct "thread killed" rather than
        "in shutdown" error now
      sql/records.cc:
        make error messages on KILL uniform for rr_*()
        by folding that handling into rr_handle_error()
      sql/sql_class.h:
        Only throw "shutdown" when we have one flagged as being in progress;
        otherwise, throw "query interrupted" as it's likely to be "KILL CONNECTION"
        or related.
      5ef63a4f
  7. 19 Oct, 2009 8 commits
  8. 18 Oct, 2009 1 commit
    • Ramil Kalimullin's avatar
      Fix for bug#47963: Wrong results when index is used · 0b43c4e7
      Ramil Kalimullin authored
      Problem: using null microsecond part in a WHERE condition 
      (e.g. WHERE date_time_field <= "YYYY-MM-DD HH:MM:SS.0000") 
      may lead to wrong results due to improper DATETIMEs 
      comparison in some cases.
      
      Fix: comparing DATETIMEs as strings we must trim trailing 0's
      in such cases.
      
      
      mysql-test/r/innodb_mysql.result:
        Fix for bug#47963: Wrong results when index is used
          - test result.
      mysql-test/t/innodb_mysql.test:
        Fix for bug#47963: Wrong results when index is used
          - test case.
      sql/item.cc:
        Fix for bug#47963: Wrong results when index is used
          - comparing DATETIMEs as strings we must trim trailing 0's in the 
        microsecond part to ensure
        'YYYY-MM-DD HH:MM:SS.000' == 'YYYY-MM-DD HH:MM:SS'
      0b43c4e7