1. 01 Oct, 2008 2 commits
  2. 30 Sep, 2008 1 commit
  3. 29 Sep, 2008 2 commits
    • Davi Arnaut's avatar
      Merge from parent branch. · b976918c
      Davi Arnaut authored
      b976918c
    • Davi Arnaut's avatar
      Bug#34306: Can't make copy of log tables when server binary log is enabled · 35ffaf10
      Davi Arnaut authored
      The problem is that when statement-based replication was enabled,
      statements such as INSERT INTO .. SELECT FROM .. and CREATE TABLE
      .. SELECT FROM need to grab a read lock on the source table that
      does not permit concurrent inserts, which would in turn be denied
      if the source table is a log table because log tables can't be
      locked exclusively.
      
      The solution is to not take such a lock when the source table is
      a log table as it is unsafe to replicate log tables under statement
      based replication. Furthermore, the read lock that does not permits
      concurrent inserts is now only taken if statement-based replication
      is enabled and if the source table is not a log table.
      35ffaf10
  4. 26 Sep, 2008 1 commit
  5. 20 Sep, 2008 1 commit
  6. 19 Sep, 2008 3 commits
  7. 18 Sep, 2008 4 commits
    • Mattias Jonsson's avatar
      Bug#30573: Ordered range scan over partitioned tables returns some rows twice · 0494d585
      Mattias Jonsson authored
      and
      Bug#33555: Group By Query does not correctly aggregate partitions
      
      Backport of bug-33257 which is the same bug.
      
      read_range_*() calls was not passed to the partition handlers,
      but was translated to index_read/next family calls.
      Resulting in duplicates rows and wrong aggregations.
      0494d585
    • Georgi Kodinov's avatar
      Bug #39353: Multiple conditions on timestamp column crashes server · 0a61c6d7
      Georgi Kodinov authored
            
      The fix for bug 31887 was incomplete : it assumes that all the 
      field types returned by the IS_NUM macro are descendants of 
      Item_num and tries to zero-fill the values before doing constant
      substitution with such fields when they are compared to constant string
      values.
      The only exception to this is Field_timestamp : it's in the IS_NUM
      macro, but is not a descendant of Field_num.
      Fixed by excluding timestamp fields (Field_timestamp) when zero-filling
      when converting the constant to compare with to a string.
      Note that this will not exclude the timestamp columns from const 
      propagation.
      0a61c6d7
    • Gleb Shchepa's avatar
      Post-push fix for bug #26020: User-Defined Variables are not consistence with columns data types. · cb8a39e7
      Gleb Shchepa authored
      --ps-protocol problem has been fixed.
      cb8a39e7
    • Gleb Shchepa's avatar
      Bug#26020: User-Defined Variables are not consistent with · db1d38c9
      Gleb Shchepa authored
                 columns data types
      
      The "SELECT @lastId, @lastId := Id FROM t" query returns
      different result sets depending on the type of the Id column
      (INT or BIGINT).
      
      Note: this fix doesn't cover the case when a select query
      references an user variable and stored function that
      updates a value of that variable, in this case a result
      is indeterminate.
      
      
      The server uses incorrect assumption about a constantness of
      an user variable value as a select list item: 
      
      The server caches a last query number where that variable
      was changed and compares this number with a current query
      number. If these numbers are different, the server guesses,
      that the variable is not updating in the current query, so
      a respective select list item is a constant. However, in some
      common cases the server updates cached query number too late.
      
      
      The server has been modified to memorize user variable
      assignments during the parse phase to take them into account
      on the next (query preparation) phase independently of the
      order of user variable references/assignments in a select
      item list.
      db1d38c9
  8. 16 Sep, 2008 2 commits
  9. 11 Sep, 2008 3 commits
    • Tatiana A. Nurnberg's avatar
      Bug#35981: ALTER EVENT causes the server to change the PRESERVE option. · 5de76e39
      Tatiana A. Nurnberg authored
      If [NOT] PRESERVE was not given, parser always defaulted to NOT
      PRESERVE, making it impossible for the "not given = no change"
      rule to work in ALTER EVENT. Leaving out the PRESERVE-clause
      defaults to NOT PRESERVE on CREATE now, and to "no change" in
      ALTER.
      5de76e39
    • Tatiana A. Nurnberg's avatar
      Bug#31434 mysqldump dumps view as table · 4b0ab1e0
      Tatiana A. Nurnberg authored
      mysqldump creates stand-in tables before dumping the actual view.
      Those tables were of the default type; if the view had more columns
      than that (a pathological case, arguably), loading the dump would
      fail. We now make the temporary stand-ins MyISAM tables to prevent
      this.
      4b0ab1e0
    • Tatiana A. Nurnberg's avatar
      Bug#31434 mysqldump dumps view as table · 743149bc
      Tatiana A. Nurnberg authored
      mysqldump creates stand-in tables before dumping the actual view.
      Those tables were of the default type; if the view had more columns
      than that (a pathological case, arguably), loading the dump would
      fail. We now make the temporary stand-ins MyISAM tables to prevent
      this.
      743149bc
  10. 10 Sep, 2008 4 commits
  11. 09 Sep, 2008 7 commits
  12. 08 Sep, 2008 5 commits
    • Mattias Jonsson's avatar
      Bug#38804: Query deadlock causes all tables to be inaccessible. · 5b164964
      Mattias Jonsson authored
      Problem was a mutex added in bug n 27405 for solving a problem
      with auto_increment in partitioned innodb tables.
      (in ha_partition::write_row over partitions file->ha_write_row)
      
      Solution is to use the patch for bug#33479, which refines the
      usage of mutexes for auto_increment.
      
      Backport of bug-33479 from 6.0:
      
      Bug-33479: auto_increment failures in partitioning
      
      Several problems with auto_increment in partitioning
      (with MyISAM, InnoDB. Locking issues, not handling
      multi-row INSERTs properly etc.)
      
      Changed the auto_increment handling for partitioning:
      Added a ha_data variable in table_share for storage engine specific data
      such as auto_increment value handling in partitioning, also see WL 4305
      and using the ha_data->mutex to lock around read + update.
      
      The idea is this:
      Store the table's reserved auto_increment value in
      the TABLE_SHARE and use a mutex to, lock it for reading and updating it
      and unlocking it, in one block. Only accessing all partitions
      when it is not initialized.
      Also allow reservations of ranges, and if no one has done a reservation
      afterwards, lower the reservation to what was actually used after
      the statement is done (via release_auto_increment from WL 3146).
      The lock is kept from the first reservation if it is statement based
      replication and a multi-row INSERT statement where the number of
      candidate rows to insert is not known in advance (like INSERT SELECT,
      LOAD DATA, unlike INSERT VALUES (row1), (row2),,(rowN)).
      
      This should also lead to better concurrancy (no need to have a mutex
      protection around write_row in all cases)
      and work with any local storage engine.
      5b164964
    • Georgi Kodinov's avatar
      f81c25e8
    • Ramil Kalimullin's avatar
      Merge · 9b8aa468
      Ramil Kalimullin authored
      9b8aa468
    • Martin Hansson's avatar
      Bug#36086: Auto merge. · 3b9948ed
      Martin Hansson authored
      3b9948ed
    • Ramil Kalimullin's avatar
      Merge · 3d31690a
      Ramil Kalimullin authored
      3d31690a
  13. 05 Sep, 2008 5 commits