1. 09 May, 2006 1 commit
    • dlenev@mysql.com's avatar
      Fix for bugs#12472/#15137 'CREATE TABLE ... SELECT ... which explicitly · 589daad1
      dlenev@mysql.com authored
      or implicitly uses stored function gives "Table not locked" error'
      
      CREATE TABLE ... SELECT ... statement which was explicitly or implicitly
      (through view) using stored function gave "Table not locked" error.
      
      The actual bug resides in the current locking scheme of CREATE TABLE SELECT
      code, which first opens and locks tables of the SELECT statement itself,
      and then, having SELECT tables locked, creates the .FRM, opens the .FRM and
      acquires lock on it. This scheme opens a possibility for a deadlock, which
      was present and ignored since version 3.23 or earlier. This scheme also
      conflicts with the invariant of the prelocking algorithm -- no table can
      be open and locked while there are tables locked in prelocked mode.
      
      The patch makes an exception for this invariant when doing CREATE TABLE ...
      SELECT, thus extending the possibility of a deadlock to the prelocked mode.
      We can't supply a better fix in 5.0.
      589daad1
  2. 05 Apr, 2006 3 commits
    • bar@mysql.com's avatar
      conf_to_src.c: · 52220d2d
      bar@mysql.com authored
        Buffer was too small to load Index.xml.
        So some charsets were not gerenrated.
        Making the buffer bigger, and adding an DBUG_ASSERT,
        to easier catch the problem in the future.
      ctype-extra.c:
        Additional charsets were generated.
      52220d2d
    • evgen@sunlight.local's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0 · d0724059
      evgen@sunlight.local authored
      into sunlight.local:/local_work/16281-bug-5.0-mysql
      d0724059
    • evgen@sunlight.local's avatar
      Fixed bug #16281: Multi-table update broken in 5.0 on tables imported from 4.1 · b9949ed9
      evgen@sunlight.local authored
      Mutli-table uses temporary table to store new values for fields. With the
      new values the rowid of the record to be updated is stored in a Field_string
      field. Table to be updated is set as source table of the rowid field.
      But when the temporary table creates the tmp field for the rowid field it
      converts it to a varstring field because the table to be updated was created by
      the v4.1. Due to this the stored rowids were broken and no records for 
      update were found.
      
      The flag can_alter_field_type is added to Field_string class. When it is set to
      0 the field won't be converted to varstring. The Field_string::type() function 
      now always returns MYSQL_TYPE_STRING if can_alter_field_type is set to 0.
      The multi_update::initialize_tables() function now sets can_alter_field_type
      flag to 0 for the rowid fields denying conversion of the field to a varstring
      field.
      b9949ed9
  3. 04 Apr, 2006 8 commits
  4. 03 Apr, 2006 8 commits
  5. 02 Apr, 2006 1 commit
  6. 01 Apr, 2006 13 commits
  7. 31 Mar, 2006 6 commits
    • kent@mysql.com's avatar
      Makefile.am, yassl.m4: · f5a9cc17
      kent@mysql.com authored
        Enable automake to determine dependency on yaSSL, by explicitly
        listing the .la files in Makefile.am, instead of using
        'yassl_libs_with_path', bug#18273
      f5a9cc17
    • aivanov@mysql.com's avatar
      Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0 · 99f7292b
      aivanov@mysql.com authored
      into  mysql.com:/home/alexi/innodb/mysql-5.0-merged
      99f7292b
    • aivanov@mysql.com's avatar
      Applied innodb-5.0-ss398 snapshot. · 771fb26e
      aivanov@mysql.com authored
       Fixed BUG#15650: DELETE with LEFT JOIN crashes server
       with innodb_locks_unsafe_for_binlog.
       Fixed compilation problem with non-C99 compilers
       in btr0sea.c
      771fb26e
    • timour@mysql.com's avatar
      Fixed a typo. · efdc2fd1
      timour@mysql.com authored
      efdc2fd1
    • timour@mysql.com's avatar
      Merge mysql.com:/home/timka/mysql/src/5.0-virgin · b85bd1e8
      timour@mysql.com authored
      into  mysql.com:/home/timka/mysql/src/5.0-bug-16710
      b85bd1e8
    • timour@mysql.com's avatar
      Fix for BUG#16710. · eed7cf09
      timour@mysql.com authored
      The bug was due to a missed case in the detection of whether an index
      can be used for loose scan. More precisely, the range optimizer chose
      to use loose index scan for queries for which the condition(s) over
      an index key part could not be pushed to the index together with the
      loose scan.
      
      As a result, loose index scan was selecting the first row in the
      index with a given GROUP BY prefix, and was applying the WHERE
      clause after that, while it should have inspected all rows with
      the given prefix, and apply the WHERE clause to all of them.
      
      The fix detects and skips such cases.
      eed7cf09