1. 25 Mar, 2009 1 commit
    • Satya B's avatar
      Fix for BUG#41541 - Valgrind warnings on packed MyISAM table · 2005f53c
      Satya B authored
                  
      After the table is compressed by the myisampack utility,
      opening the table by the server produces valgrind warnings.
            
      This happens because when we try to read a record into the buffer
      we alway assume that the remaining buffer to read is always equal 
      to word size(4 or 8 or 2 bytes) we read. Sometimes we have 
      remaining buffer size less than word size and trying to read the 
      entire word size will end up in valgrind errors.
                  
      Fixed by reading byte by byte when we detect the remaining buffer 
      size is less than the word size.
      
      myisam/mi_packrec.c:
        Fixed fill_buffer() to read byte by byte when the remaining 
        buffer size is less than word size.
      mysql-test/r/myisampack.result:
        Result file for BUG#41541
      mysql-test/t/myisampack.test:
        Testcase for BUG#41541
      2005f53c
  2. 23 Mar, 2009 2 commits
    • Tatiana A. Nurnberg's avatar
      auto-merge · 3311d7b8
      Tatiana A. Nurnberg authored
      3311d7b8
    • Tatiana A. Nurnberg's avatar
      Bug#43254: SQL_SELECT_LIMIT=0 crashes command line client · 0263793d
      Tatiana A. Nurnberg authored
      When asking what database is selected, client expected
      to *always* get an answer from the server.
      
      We now handle failure more gracefully.
      
      See comments in ticket for a discussion of what happens,
      and how things interlock.
      
      
      client/mysql.cc:
        Handle empty result-sets gracefully, as opposed
        to just result sets with n>0 items that may themselves
        be empty.
      0263793d
  3. 20 Mar, 2009 1 commit
  4. 19 Mar, 2009 12 commits
    • Davi Arnaut's avatar
      Bug#43461: invalid comparison with string literal in default.c · 2d77ca39
      Davi Arnaut authored
      Don't compare string literals as it results in unspecified behavior.
      
      mysys/default.c:
        Test for a empty string.
      2d77ca39
    • Ignacio Galarza's avatar
      auto-merge · bb1dbe17
      Ignacio Galarza authored
      bb1dbe17
    • Bernt M. Johnsen's avatar
      Bug#43329 merge from 5.0 GCA-branch · cc159d47
      Bernt M. Johnsen authored
      cc159d47
    • Ignacio Galarza's avatar
      auto-merge · fd47377a
      Ignacio Galarza authored
      fd47377a
    • Staale Smedseng's avatar
      Bug #42502 huge memory leak possible with timezone · 96ccd903
      Staale Smedseng authored
      functions
            
      Unknown timezone specifications are properly rejected
      by the server, but are copied into tz_storage before
      rejection, and hence is retained until end of server 
      life. With sufficiently large bogus timezone specs, 
      it is easy to exhaust system memory.
            
      Allocation of memory for a copy of the timezone
      name is delayed until after verification of validity,
      at the cost of a memcpy of the timezone info. This 
      only happens once, future lookups will hit the cached
      structure.
      96ccd903
    • Alexey Kopytov's avatar
      Automerge. · 27e7da48
      Alexey Kopytov authored
      27e7da48
    • Alexey Kopytov's avatar
      Fixed test failures in 5.1/6.0 introduced by the patch · 326cb98b
      Alexey Kopytov authored
      for bug #41486. Session max_allowed_packet is read-only
      as of MySQL 5.1.31. In addition, the global variable
      now has no effect on the current session.
      326cb98b
    • Sergey Glukhov's avatar
      automerge · 162f96be
      Sergey Glukhov authored
      162f96be
    • Sergey Glukhov's avatar
      Bug#41268 Help Text for \c is misleading in client command line interface · 97ab8b97
      Sergey Glukhov authored
      fixed help message
      
      
      client/mysql.cc:
        fixed help message
      97ab8b97
    • Satya B's avatar
      merge to 5.0-bugteam · 97dc0534
      Satya B authored
      97dc0534
    • Sergey Glukhov's avatar
      Bug#41627 Illegal mix of collations in LEAST / GREATEST / CASE · 49f6675c
      Sergey Glukhov authored
      Don't throw an error after checking the first and the second arguments.
      Continue with checking the third and higher arguments and if some of
      them is stronger according to coercibility rules,
      then this argument's collation is set as result collation.
      
      
      mysql-test/r/ctype_collate.result:
        test result
      mysql-test/t/ctype_collate.test:
        test case
      sql/item.cc:
        Don't throw an error after checking the first and the second arguments.
        Continue with checking the third and higher arguments and if some of
        them is stronger according to coercibility rules,
        then this argument's collation is set as result collation.
      49f6675c
    • Satya B's avatar
      Fix for BUG#21360 - mysqldump error on federated tables · b696ba1f
      Satya B authored
                              
      When loading dump created by mysqldump tool an error is
      thrown saying storage engine for the table doesn't have 
      an option.
                              
      mysqldump tries to re-insert the data into the federated
      table which causes the error. Since the data is already
      available on the remote server, mysqldump shouldn't try
      to dump the data again for FEDERATED tables.
                              
      As stated in the bug page, it can be considered similar
      to the MERGE ENGINE with "view only" nature.
                              
      Fixed by adding the "FEDERATED ENGINE" to the exception
      list to ignore the data.
      
      client/mysqldump.c:
        Fixed check_if_ignore_table() to ignore FEDERATED engine
        when dumping the table data.
      mysql-test/r/federated.result:
        Result file for BUG#21360
      mysql-test/t/federated.test:
        Testcase for BUG#21360
      b696ba1f
  5. 18 Mar, 2009 3 commits
    • Bernt M. Johnsen's avatar
      Bug#43329 prepared for commit on 5.0 · b944a179
      Bernt M. Johnsen authored
      b944a179
    • Alexey Kopytov's avatar
      Automerge. · 9da759e8
      Alexey Kopytov authored
      9da759e8
    • Alexey Kopytov's avatar
      Fix for bug#41486: extra character appears in BLOB for every · e7feb6f7
      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.
      e7feb6f7
  6. 17 Mar, 2009 1 commit
  7. 15 Mar, 2009 1 commit
  8. 13 Mar, 2009 1 commit
    • Georgi Kodinov's avatar
      Bug #22047 : Time in SHOW PROCESSLIST for SQL thread in replication · c46f872e
      Georgi Kodinov authored
      seems to become negative
      
      THD::start_time has a dual meaning : it's either the time since the process
      entered a given state or is the transaction time returned by e.g. NOW().
      This causes problems, as sometimes THD::start_time may be set to a value
      that is correct and needed when used as a base for NOW(), but these times
      may be arbitrary (SET @@timestamp) or non-local (coming from the master 
      through the replication feed).
      If one such non-local time is set there's no way to return a correct value
      for e.g. SHOW PROCESSLIST or SELECT ... FROM INFORMATION_SCHEMA.PROCESSLIST.
      Fixed by making the Time column in SHOW PROCESSLIST SIGNED LONG instead of 
      UNSIGNED LONG and doing the correct conversions.
            
      Note that no reliable test suite can be constructed, since it would require
      knowing the local time and can't be achieved by the means of the current test
      suite.
      
      sql/sql_show.cc:
        Bug #22047: make the Time in SHOW PROCESSLIST LONG from 
        LONG UNSIGNED
      c46f872e
  9. 12 Mar, 2009 1 commit
  10. 11 Mar, 2009 3 commits
  11. 10 Mar, 2009 2 commits
  12. 09 Mar, 2009 3 commits
    • Chad MILLER's avatar
      Bug#42635: mysqldump includes views that were excluded using the \ · a99cd3df
      Chad MILLER authored
      	--ignore-table option
      
      mysqldump would correctly omit temporary tables for views, but would
      incorrectly still emit all CREATE VIEW statements.
      
      Backport a fix from 5.1, where we capture the names we want to emit
      views for in one pass (the placeholder tables) and in the pass where
      we actually emit the views, we don't emit a view if it wasn't in that
      list.
      a99cd3df
    • Chad MILLER's avatar
      Fix non-DBUG return. · 911109a0
      Chad MILLER authored
      911109a0
    • Georgi Kodinov's avatar
      Bug #42434: license of mysys MD5 implementation is not GPL-compatible · 028e731d
      Georgi Kodinov authored
      Took the Xfree implementation (based on the same rewrite as the NDB one)
      and added it instead of the current implementation.
      Added a macro to make the calls to MD5 more streamlined. 
      
      client/mysqlmanager-pwgen.c:
        Bug #42434: changed to call the macro
      include/my_md5.h:
        Bug #42434: use the Xfree implementation
      mysys/md5.c:
        Bug #42434: use the Xfree implementation
      sql/item_strfunc.cc:
        Bug #42434: changed to call the macro
      sql/table.cc:
        Bug #42434: changed to call the macro
      tools/mysqlmanager.c:
        Bug #42434: changed to call the macro
      028e731d
  13. 11 Mar, 2009 2 commits
    • Georgi Kodinov's avatar
      merged 5.0-main -> 5.0-bugteam · e2bb4177
      Georgi Kodinov authored
      e2bb4177
    • Georgi Kodinov's avatar
      Bug #43354: Use key hint can crash server in explain extended query · 32e258d7
      Georgi Kodinov authored
            
      The copy of the original arguments of a aggregate function was not
      initialized until after fix_fields().
      Sometimes (e.g. when there's an error processing the statement)
      the print() can be called with no corresponding fix_fields() call.
            
      Fixed by adding a check if the Item is fixed before using the arguments
      copy.
      
      mysql-test/r/explain.result:
        Bug #43354: test case
      mysql-test/t/explain.test:
        Bug #43354: test case
      sql/item_sum.cc:
        Bug #43354: use the argument list copy only if it's initialized
      32e258d7
  14. 09 Mar, 2009 6 commits
  15. 06 Mar, 2009 1 commit