1. 03 Aug, 2006 2 commits
    • svoj@may.pils.ru's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1 · 395d3c39
      svoj@may.pils.ru authored
      into  may.pils.ru:/home/svoj/devel/mysql/BUG7391/mysql-4.1
      395d3c39
    • svoj@may.pils.ru's avatar
      BUG#7391 - Cross-database multi-table UPDATE uses active database · 67db270c
      svoj@may.pils.ru authored
                 privileges
      
      This problem is 4.1 specific. It doesn't affect 4.0 and was fixed
      in 5.x before.
      
      Having any mysql user who is allowed to issue multi table update
      statement and any column/table grants, allows this user to update
      any table on a server (mysql grant tables are not exception).
      
      check_grant() accepts number of tables (in table list) to be checked
      in 5-th param. While checking grants for multi table update, number
      of tables must be 1. It must never be 0 (actually we have
      DBUG_ASSERT(number > 0) in 5.x in grant_check() function).
      67db270c
  2. 02 Aug, 2006 7 commits
  3. 01 Aug, 2006 2 commits
  4. 31 Jul, 2006 5 commits
  5. 30 Jul, 2006 1 commit
  6. 29 Jul, 2006 2 commits
  7. 28 Jul, 2006 4 commits
  8. 27 Jul, 2006 1 commit
  9. 26 Jul, 2006 6 commits
    • gkodinov/kgeorge@rakia.(none)'s avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-4.1-opt · e2a082aa
      gkodinov/kgeorge@rakia.(none) authored
      into  rakia.(none):/home/kgeorge/mysql/autopush/B20792-4.1-opt
      e2a082aa
    • gkodinov/kgeorge@macbook.gmz's avatar
      * Bug #20792: Incorrect results from aggregate subquery · 565d4959
      gkodinov/kgeorge@macbook.gmz authored
      When processing aggregate functions all tables values are reset
      to NULLs at the end of each group. 
      When doing that if there are no rows found for a group
      the const tables must not be reset as they are not recalculated 
      by do_select()/sub_select() for each group.
      565d4959
    • gkodinov/kgeorge@rakia.(none)'s avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-4.1-opt · 49f8ec4c
      gkodinov/kgeorge@rakia.(none) authored
      into  rakia.(none):/home/kgeorge/mysql/autopush/B21019-4.1-opt
      49f8ec4c
    • kroki/tomash@moonlight.intranet's avatar
      BUG#21206: memory corruption when too many cursors are opened at once · 4e845ccc
      kroki/tomash@moonlight.intranet authored
      Too many cursors (more than 1024) could lead to memory corruption.
      This affects both, stored routines and C API cursors, and the
      threshold is per-server, not per-connection.  Similarly, the
      corruption could happen when the server was under heavy load
      (executing more than 1024 simultaneous complex queries), and this is
      the reason why this bug is fixed in 4.1, which doesn't support
      cursors.
      
      The corruption was caused by a bug in the temporary tables code, when
      an attempt to create a table could lead to a write beyond allocated
      space.  Note, that only internal tables were affected (the tables
      created internally by the server to resolve the query), not tables
      created with CREATE TEMPORARY TABLE.  Another pre-condition for the
      bug is TRUE value of --temp-pool startup option, which, however, is a
      default.
      
      The cause of a bug was that random memory was overwritten in
      bitmap_set_next() due to out-of-bound memory access.
      4e845ccc
    • gkodinov/kgeorge@macbook.gmz's avatar
      Bug #21019: First result of SELECT COUNT(*) different than consecutive runs · 6766cfcd
      gkodinov/kgeorge@macbook.gmz authored
       When optimizing conditions like 'a = <some_val> OR a IS NULL' so that they're
       united into a single condition on the key and checked together the server must 
       check which value is the NULL value in a correct way : not only using ->is_null 
       but also check if the expression doesn't depend on any tables referenced in the 
       current statement. 
       This additional check must be performed because that optimization takes place 
       before the actual execution of the statement, so if the field was initialized 
       to NULL from a previous statement the optimization would be applied incorrectly.
      6766cfcd
    • aivanov@mysql.com's avatar
      Applied innodb-4.1-ss32 snapshot. · 765ed29c
      aivanov@mysql.com authored
      765ed29c
  10. 25 Jul, 2006 2 commits
  11. 24 Jul, 2006 6 commits
  12. 23 Jul, 2006 1 commit
  13. 21 Jul, 2006 1 commit