1. 28 Jul, 2009 2 commits
    • Alexey Kopytov's avatar
      Manual merge. · aacfd6dd
      Alexey Kopytov authored
      aacfd6dd
    • Alexey Kopytov's avatar
      Bug #45031: invalid memory reads in my_real_read using protocol · 53434623
      Alexey Kopytov authored
                  compression 
       
      Since uint3korr() may read 4 bytes depending on build flags and 
      platform, allocate 1 extra "safety" byte in the network buffer 
      for cases when uint3korr() in my_real_read() is called to read
      last 3 bytes in the buffer. 
       
      It is practically hard to construct a reliable and reasonably 
      small test case for this bug as that would require constructing 
      input stream such that a certain sequence of bytes in a 
      compressed packet happens to be the last 3 bytes of the network 
      buffer. 
      53434623
  2. 16 Jul, 2009 8 commits
  3. 15 Jul, 2009 9 commits
    • Kristofer Pettersson's avatar
      Bug#45781 infinite hang/crash in "opening tables" after handler tries to open merge · c9df2a13
      Kristofer Pettersson authored
                table
      
      The MERGE table storage engine does not support the HA_CAN_SQL_HANDLE feature
      and any attempt to open the merge table will fail with ER_ILLEGAL_HA.
      
      After an error occurred the tables that was opened must be closed again
      or they will be left in an inconsistent state. However, the assumption
      made in the code for closing and register handler tables was that only
      one table will be opened, and this is not true for MERGE tables which
      will cause multiple tables to open.
      
      The next time a SELECT operation was issued on the merge table it
      caused the system to freeze.
      
      This patch fixes this issue by making sure that all tables which
      are opened also are closed in the event of an error.
      c9df2a13
    • Davi Arnaut's avatar
      Bug#44495: Prepared Statement: CALL p(<x>) - `thd->protocol == &thd->protocol_text' failed · 0830a3be
      Davi Arnaut authored
      Merge Konstantin's patch and add a test case.
      0830a3be
    • Konstantin Osipov's avatar
      A fix for Bug#44495 "Prepared Statement: CALL p(<x>) - `thd->protocol == &thd->protocol_text' · e601194c
      Konstantin Osipov authored
      failed"
      
      Do not assume that SQL prepared statements always run in text protocol.
      When invoked from a stored procedure, which is itself invoked
      by means of prepared CALL statement, the protocol may be binary.
      Juggle with the protocol only when we want to change it
      to binary in COM_STMT_EXECUTE, COM_STMT_PREPARE.
      
      This is a backport from 5.4/6.0, where the bug was fixed
      as part of WL#4264 "Backup: Stabilize Service Interface" 
      e601194c
    • Georgi Kodinov's avatar
      automerge · 1b7754a5
      Georgi Kodinov authored
      1b7754a5
    • Georgi Kodinov's avatar
      Bug #45287: phase 1 : 32 bit compilation warnings · 8acf778e
      Georgi Kodinov authored
      Fixed the following problems:
      1. cmake 2.6 warning because of a changed default on
      how the dependencies to libraries with a specified 
      path are resolved.
      Fixed by requiring cmake 2.6.
      2. Removed an obsolete pre-NT4 hack including defining
      Windows system defines to alter the behavior of windows.h.
      3. Disabled warning C4065 on compiling sql_yacc.cc because
      of a know incompatibility in some of the newer bison binaries.
      8acf778e
    • Ramil Kalimullin's avatar
      bb4f24bf
    • Anurag Shekhar's avatar
      merging with 5.0 bugteam tree · 064c990b
      Anurag Shekhar authored
      064c990b
    • Anurag Shekhar's avatar
      Bug#37740 Server crashes on execute statement with full text search and · 7c670fc3
      Anurag Shekhar authored
                match against.
      
      
      Server crashes when executing prepared statement with duplicating
      MATCH() function calls in SELECT and ORDER BY expressions, e.g.:
      SELECT MATCH(a) AGAINST('test') FROM t1 ORDER BY MATCH(a) AGAINST('test')
      
      This query gets optimized by the server, so the value returned
      by MATCH() from the SELECT list is reused for ORDER BY purposes.
      To make this optimization server is comparing items from
      SELECT and ORDER BY lists. We were getting server crash because
      comparision function for MATCH() item is not intended to be called
      at this point of execution.
      
      In 5.0 and 5.1 this problem is workarounded by resetting MATCH()
      item to the state as it was during PREPARE.
      
      In 6.0 correct comparision function will be implemented and
      duplicating MATCH() items from the ORDER BY list will be
      optimized.
      7c670fc3
    • Ramil Kalimullin's avatar
      Auto-merge · 7a305e31
      Ramil Kalimullin authored
      7a305e31
  4. 14 Jul, 2009 6 commits
  5. 13 Jul, 2009 9 commits
  6. 12 Jul, 2009 1 commit
  7. 11 Jul, 2009 1 commit
    • Gleb Shchepa's avatar
      Bug #41156: List of derived tables acts like a chain of · 8724706a
      Gleb Shchepa authored
                  mutually-nested subqueries
      
      Queries of the form
      
        SELECT * FROM (SELECT 1) AS t1,
                      (SELECT 2) AS t2,...
                      (SELECT 32) AS t32
      
      caused the "Too high level of nesting for select" error
      as if the query has a form
      
        SELECT * FROM (SELECT 1 FROM (SELECT 2 FROM (SELECT 3 FROM...
      
      
      The table_factor parser rule has been modified to adjust
      the LEX::nest_level variable value after every derived table.
      8724706a
  8. 10 Jul, 2009 4 commits