1. 07 Aug, 2009 1 commit
    • Martin Hansson's avatar
      Bug#46454: MySQL wrong index optimisation leads to incorrect result & crashes · 5421a8e8
      Martin Hansson authored
      Problem 1:
      When the 'Using index' optimization is used, the optimizer may still - after
      cost-based optimization - decide to use another index in order to avoid using
      a temporary table. But when this happens, the flag to the storage engine to 
      read index only (not table) was still set. Fixed by resetting the flag in the 
      storage engine and TABLE structure in the above scenario, unless the new index
      allows for the same optimization.
      Problem 2:
      When a 'ref' access method was employed by cost-based optimizer, (when the column
      is non-NULLable), it was assumed that it needed no initialization if 'quick' access
      methods (since they are based on range scan). When ORDER BY optimization overrides 
      the decision, however, it expects to have this initialized and hence crashes. 
      Fixed in 5.1 (was fixed in 6.0 already) by initializing 'quick' even when there's 
      'ref' access. 
      5421a8e8
  2. 01 Aug, 2009 1 commit
  3. 31 Jul, 2009 11 commits
    • Jim Winstead's avatar
      Merge fix to test results · 87784fd0
      Jim Winstead authored
      87784fd0
    • Jim Winstead's avatar
      f5c55bc0
    • Davi Arnaut's avatar
      Test case clean up: Move test cases that depend on the CSV storage · 7049106d
      Davi Arnaut authored
      engine to the partition_csv test. Also remove test case that was
      duplicated. Fix connection procedure with the embedded server.
      7049106d
    • Ignacio Galarza's avatar
      Auto-merge · aa63a16e
      Ignacio Galarza authored
      aa63a16e
    • Tatiana A. Nurnberg's avatar
      auto-merge · b925e40f
      Tatiana A. Nurnberg authored
      b925e40f
    • Ignacio Galarza's avatar
      Auto-merge · 8ef28b49
      Ignacio Galarza authored
      8ef28b49
    • Ignacio Galarza's avatar
      Bug#17270 - mysql client tool could not find ../share/charsets folder and fails. · 6df2af22
      Ignacio Galarza authored
      - Define and pass compile time path variables as pre-processor definitions to 
        mimic the makefile build.
      - Set new CMake version and policy requirements explicitly.
      - Changed DATADIR to MYSQL_DATADIR to avoid conflicting definition in 
        Platform SDK header ObjIdl.h which also defines DATADIR.
      6df2af22
    • Gleb Shchepa's avatar
      Bug# 30946: mysqldump silently ignores --default-character-set · e642140b
      Gleb Shchepa authored
                  when used with --tab
      
      1) New syntax: added CHARACTER SET clause to the
        SELECT ... INTO OUTFILE (to complement the same clause in
        LOAD DATA INFILE).
        mysqldump is updated to use this in --tab mode.
      
      2) ESCAPED BY/ENCLOSED BY field parameters are documented as
         accepting CHAR argument, however SELECT .. INTO OUTFILE
         silently ignored rests of multisymbol arguments.
         For the symmetrical behavior with LOAD DATA INFILE the
         server has been modified to fail with the same error:
      
           ERROR 42000: Field separator argument is not what is
                        expected; check the manual
      
      3) Current LOAD DATA INFILE recognizes field/line separators
         "as is" without converting from client charset to data
         file charset. So, it is supposed, that input file of
         LOAD DATA INFILE consists of data in one charset and
         separators in other charset. For the compatibility with
         that [buggy] behaviour SELECT INTO OUTFILE implementation
         has been saved "as is" too, but the new warning message
         has been added:
      
           Non-ASCII separator arguments are not fully supported
      
         This message warns on field/line separators that contain
         non-ASCII symbols.
      e642140b
    • Davi Arnaut's avatar
      Bug#46265: Can not disable warning about unsafe statements for binary logging · e1c43705
      Davi Arnaut authored
      If using statement based replication (SBR), repeatedly calling
      statements which are unsafe for SBR will cause a warning message
      to be written to the error for each statement. This might lead
      to filling up the error log and there is no way to disable this
      behavior.
      
      The solution is to only log these message (about statements unsafe
      for statement based replication) if the log_warnings option is set.
      
      For example:
      
      SET GLOBAL LOG_WARNINGS = 0;
      INSERT INTO t1 VALUES(UUID());
      SET GLOBAL LOG_WARNINGS = 1;
      INSERT INTO t1 VALUES(UUID());
      
      In this case the message will be printed only once:
      
      [Warning] Statement may not be safe to log in statement format.
                Statement: INSERT INTO t1 VALUES(UUID())
      e1c43705
    • Tatiana A. Nurnberg's avatar
      Bug#40281, partitioning the general log table crashes the server · f6b8b9d2
      Tatiana A. Nurnberg authored
      We disallow the partitioning of a log table. You could however
      partition a table first, and then point logging to it. This is
      not only against the docs, it also crashes the server.
      
      We catch this case now.
      f6b8b9d2
    • Jim Winstead's avatar
      Merge bug fix. · 207584e4
      Jim Winstead authored
      207584e4
  4. 30 Jul, 2009 1 commit
    • Davi Arnaut's avatar
      Bug#43435: LOCK_open does not use MY_MUTEX_INIT_FAST · 8f7a48ff
      Davi Arnaut authored
      Initialize LOCK_open as a adapative mutex on platforms where the
      PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP macro is available. The flag
      indicates that a thread should spin (busy wait) for some time on a
      locked adaptive mutex before blocking (sleeping). It's intended to
      to alleviate performance problems due to LOCK_open being a highly
      contended mutex.
      8f7a48ff
  5. 31 Jul, 2009 1 commit
  6. 30 Jul, 2009 7 commits
  7. 29 Jul, 2009 7 commits
  8. 28 Jul, 2009 8 commits
  9. 27 Jul, 2009 3 commits
    • Davi Arnaut's avatar
      Bug#46385: [Warning] option 'max_join_size': unsigned value 18446744073709551615 adjusted t · 71713f32
      Davi Arnaut authored
      The maximum value of the max_join_size variable is set by converting
      a signed type (long int) with negative value (-1) to a wider unsigned
      type (unsigned long long), which yields the largest possible value of
      the wider unsigned type -- as per the language conversion rules. But,
      depending on build options, the type of the max_join_size might be a
      shorter type (ha_rows - unsigned long) which causes the warning to be
      thrown once the large value is truncated to fit.
      
      The solution is to ensure that the maximum value of the variable is
      always set to the maximum value of integer type of max_join_size.
      
      Furthermore, it would be interesting to always have a fixed type for
      this variable, but this would incur in a change of behavior which is
      not acceptable for a GA version. See Bug#35346.
      71713f32
    • Davi Arnaut's avatar
      Post-merge fix for Bug#43587: Handle failures to execute a statement · 0ddefa60
      Davi Arnaut authored
      during bootstrap on a embedded server.
      0ddefa60
    • Davi Arnaut's avatar
      Merge from mysql-5.0-bugteam. · 4fe66512
      Davi Arnaut authored
      4fe66512