1. 18 Mar, 2009 2 commits
    • Alexey Kopytov's avatar
      Manual merge. · 2b253395
      Alexey Kopytov authored
      2b253395
    • Alexey Kopytov's avatar
      Fix for bug#41486: extra character appears in BLOB for every · 73a7d993
      Alexey Kopytov authored
                         ~40Mb after mysqldump/import 
              
      When the input string exceeds the maximum allowed size for the 
      internal buffer, batch_readline() returns a truncated string. 
      Since there was no way for a caller to determine whether the 
      string was truncated or not, the command line client assumed 
      batch_readline() to always return the whole input string and 
      appended a newline character. This resulted in garbled data 
      when importing dumps containing strings longer than the 
      maximum input buffer size. 
        
      Fixed by adding a flag to the batch_readline() interface to 
      signal a truncated string to the caller. 
        
      Other minor problems fixed during patch implementation: 
       
      - The maximum allowed buffer size for batch_readline() was set 
      up depending on the client's max_allowed_packet value. It does 
      not actully make any sense, as those variables are not 
      related. The input buffer size limit is now always set to 1 
      MB. 
        
      - fill_buffer() did not always set the EOF flag. 
       
      - The input buffer could actually grow twice as the specified 
      limit due to insufficient checks in intern_read_line(). 
      
      client/my_readline.h:
        Changed the interface of batch_readline().
      client/mysql.cc:
        Honor the truncated flag returned by batch_readline() and do  
        not append the newline character if it was set. Since we can't 
        change the interfaces for readline()/fgets() used in the  
        interactive mode, always assume the returned string was not  
        truncated. In addition, always set the batch_readline()  
        internal buffer to 1 MB, independently from the client's  
        max_allowed_packet.
      client/readline.cc:
        Added the 'truncated' argument do batch_readline() to signal 
        truncated string to a caller. 
        Fixed fill_buffer() to set the EOF flag correctly. 
        Fixed checks in intern_read_line() to not allow the internal  
        buffer grow past the specified limit.
      mysql-test/r/mysql.result:
        Added a test case for bug #41486.
      mysql-test/t/mysql.test:
        Added a test case for bug #41486.
      73a7d993
  2. 25 Feb, 2009 16 commits
  3. 24 Feb, 2009 22 commits
    • Anurag Shekhar's avatar
      Bug #38103 myisamchk: --help output incomplete · da3c7731
      Anurag Shekhar authored
      In the output message for --help entry for -H --HELP was missing.
      Added this entry while printing the help text.
      
      storage/myisam/myisamchk.c:
        Added entry for -H --HELP while printing message for -? --help
      da3c7731
    • Andrei Elkin's avatar
      5b072178
    • Andrei Elkin's avatar
      merging from 5.0-bt rep to a local branch · a6ac350b
      Andrei Elkin authored
      a6ac350b
    • Patrick Crews's avatar
      Bug#40178: Test main.completion_type_func does not clean up / needs to be rewritten · df09ddac
      Patrick Crews authored
      Revised the test to include a test of completion_type = 1 as well as making the test more readable / worthwhile
      Removed the master.opt file as it was redundant / unnecessary.
      
      mysql-test/suite/sys_vars/t/completion_type_func-master.opt:
        Removed as redundant.  Test uses include/have_innodb.inc.
      df09ddac
    • Andrei Elkin's avatar
    • Georgi Kodinov's avatar
      Bug #31060: MySQL CLI parser bug 2 · 4b05db5c
      Georgi Kodinov authored
            
      There was a problem when a DELIMITER COMMAND is not the first 
      command on the line. I this case an extra line feed was added
      to the glob buffer and this was causing subsequent attempts 
      to enter this delimiter to fail.
      Fixed by not adding a new line to the glob buffer if the 
      command being added is a DELIMITER
      
      client/mysql.cc:
        Bug #31060: Don't add a new line if DELIMTER is added to
        the glob buffer
      mysql-test/r/mysql.result:
        Bug #31060: test case
      mysql-test/t/mysql.test:
        Bug #31060: test case
      4b05db5c
    • Georgi Kodinov's avatar
      Bug #31060: MySQL CLI parser bug 2 · 85ea3740
      Georgi Kodinov authored
            
      There was a problem when a DELIMITER COMMAND is not the first 
      command on the line. I this case an extra line feed was added
      to the glob buffer and this was causing subsequent attempts 
      to enter this delimiter to fail.
      Fixed by not adding a new line to the glob buffer if the 
      command being added is a DELIMITER
      
      client/mysql.cc:
        Bug #31060: Don't add a new line if DELIMTER is added to
        the glob buffer
      mysql-test/r/mysql.result:
        Bug #31060: test case
      mysql-test/t/mysql.test:
        Bug #31060: test case
      85ea3740
    • Alexey Botchkov's avatar
      merging. · e641a297
      Alexey Botchkov authored
      e641a297
    • Alexey Botchkov's avatar
      merging. · a34bb2b8
      Alexey Botchkov authored
      a34bb2b8
    • Alexey Botchkov's avatar
      merging. · f94eafb2
      Alexey Botchkov authored
      f94eafb2
    • Alexey Botchkov's avatar
      merging. · 5a7d6382
      Alexey Botchkov authored
      5a7d6382
    • Chad MILLER's avatar
      Null-merge 39370 fix. Unnecessary in 5.1. · 58cb9641
      Chad MILLER authored
      58cb9641
    • Chad MILLER's avatar
      Merge bug 39370 fix from bug tree. · e2eed1c5
      Chad MILLER authored
      e2eed1c5
    • Chad MILLER's avatar
      Bug#39370: wrong output for error code 153 · 00aa5ad5
      Chad MILLER authored
      Add all HA error numbers and descriptions to perror.
      
      Add reminder to header.
      
      This is already fixed in smarter ways in future codebases, and this 
      codebase is unlikely to change, since new development is forbidden
      here.
      00aa5ad5
    • Davi Arnaut's avatar
      Bug#41110: crash with handler command when used concurrently with alter table · e4f47653
      Davi Arnaut authored
      Bug#41112: crash in mysql_ha_close_table/get_lock_data with alter table
      
      The problem is that the server wasn't handling robustly failures
      to re-open a table during a HANDLER .. READ statement. If the
      table needed to be re-opened due to it's storage engine being
      altered to one that doesn't support HANDLER, a reference (dangling
      pointer) to a closed table could be left in place and accessed in
      later attempts to fetch from the table using the handler. Also,
      if the server failed to set a error message if the re-open
      failed. These problems could lead to server crashes or hangs.
      
      The solution is to remove any references to a closed table and
      to set a error if reopening a table during a HANDLER .. READ
      statement fails.
      
      mysql-test/include/handler.inc:
        Add test case for Bug#41110 and Bug#41112
      mysql-test/r/handler_innodb.result:
        Add test case result for Bug#41110 and Bug#41112
      mysql-test/r/handler_myisam.result:
        Add test case result for Bug#41110 and Bug#41112
      sql/sql_handler.cc:
        Remove redundant reopen check.
        Set errors even if reopening table.
        Reset TABLE_LIST::table reference when the table is closed.
      e4f47653
    • Davi Arnaut's avatar
      Bug#41110: crash with handler command when used concurrently with alter table · 11b20f27
      Davi Arnaut authored
      Bug#41112: crash in mysql_ha_close_table/get_lock_data with alter table
      
      The problem is that the server wasn't handling robustly failures
      to re-open a table during a HANDLER .. READ statement. If the
      table needed to be re-opened due to it's storage engine being
      altered to one that doesn't support HANDLER, a reference (dangling
      pointer) to a closed table could be left in place and accessed in
      later attempts to fetch from the table using the handler. Also,
      if the server failed to set a error message if the re-open
      failed. These problems could lead to server crashes or hangs.
      
      The solution is to remove any references to a closed table and
      to set a error if reopening a table during a HANDLER .. READ
      statement fails.
      
      There is no test case in this change set as the test depends on
      a testing feature only available on 5.1 and later.
      
      sql/sql_handler.cc:
        Remove redundant reopen check.
        Set errors even if reopening table.
        Reset TABLE_LIST::table reference when the table is closed.
      11b20f27
    • Tatiana A. Nurnberg's avatar
      automerge · 87fcb23d
      Tatiana A. Nurnberg authored
      87fcb23d
    • Tatiana A. Nurnberg's avatar
      automerge · 982f88fc
      Tatiana A. Nurnberg authored
      982f88fc
    • Tatiana A. Nurnberg's avatar
      automerge · 565660ed
      Tatiana A. Nurnberg authored
      565660ed
    • Tatiana A. Nurnberg's avatar
      automerge · 491db675
      Tatiana A. Nurnberg authored
      491db675
    • Tatiana A. Nurnberg's avatar
      automerge · 7efa0aa7
      Tatiana A. Nurnberg authored
      7efa0aa7
    • Tatiana A. Nurnberg's avatar
      automerge · 7a264c73
      Tatiana A. Nurnberg authored
      7a264c73