1. 30 May, 2009 1 commit
  2. 29 May, 2009 10 commits
    • Tatiana A. Nurnberg's avatar
      auto-merge · 81eb3383
      Tatiana A. Nurnberg authored
      81eb3383
    • Tatiana A. Nurnberg's avatar
      auto-merge · d5b22e16
      Tatiana A. Nurnberg authored
      d5b22e16
    • Tatiana A. Nurnberg's avatar
      auto-merge · 41abbf9b
      Tatiana A. Nurnberg authored
      41abbf9b
    • Kristofer Pettersson's avatar
      Automerge · 049f998f
      Kristofer Pettersson authored
      049f998f
    • Kristofer Pettersson's avatar
      Automerge · dc4feaa4
      Kristofer Pettersson authored
      dc4feaa4
    • Tatiana A. Nurnberg's avatar
      Bug#39200: optimize table does not recognize ROW_FORMAT=COMPRESSED · 7b4c6979
      Tatiana A. Nurnberg authored
      When doing ALTER TABLE, we forgot to point out that we actually have
      ROW_FORMAT information (from the original table), so we dropped to
      "sensible defaults". This affects both ALTER TABLE and OPTIMIZE TABLE
      which may fall back on ALTER TABLE for InnoDB.
      
      We now flag that we do indeed know the row-type, thereby preserving
      compression-type etc.
      
      No .test in 5.1 since we'd need a reasonable new plugin from InnoDB to
      show this properly; in higher versions, maria can demonstrate this.
      7b4c6979
    • Alexey Kopytov's avatar
      Automerge · f1fb5aa2
      Alexey Kopytov authored
      f1fb5aa2
    • Kristofer Pettersson's avatar
      Bug#44658 Create procedure makes server crash when user does not have ALL privilege · a6455554
      Kristofer Pettersson authored
      MySQL crashes if a user without proper privileges attempts to create a procedure.
      
      The crash happens because more than one error state is pushed onto the Diagnostic
      area. In this particular case the user is denied to implicitly create a new user
      account with the implicitly granted privileges ALTER- and EXECUTE ROUTINE.
      
      The new account is needed if the original user account contained a host mask.
      A user account with a host mask is a distinct user account in this context.
      An alternative would be to first get the most permissive user account which
      include the current user connection and then assign privileges to that
      account. This behavior change is considered out of scope for this bug patch.
      
      The implicit assignment of privileges when a user creates a stored routine is a
      considered to be a feature for user convenience and as such it is not
      a critical operation. Any failure to complete this operation is thus considered
      non-fatal (an error becomes a warning).
      
      The patch back ports a stack implementation of the internal error handler interface.
      This enables the use of multiple error handlers so that it is possible to intercept
      and cancel errors thrown by lower layers. This is needed as a error handler already
      is used in the call stack emitting the errors which needs to be converted.
      a6455554
    • Narayanan V's avatar
      merging with mysql-5.1-bugteam tree · 90939fc5
      Narayanan V authored
      90939fc5
    • Narayanan V's avatar
      Bug#44811 Tests with utf8 charset fail with ibmdb2i on 64bit MySQL · 5a644923
      Narayanan V authored
      wmemset was being used to fill the row buffers.
      wmemset was intended  to  fill the buffer with
      16-bit UCS2 pad values.  However,  the  64-bit
      version of wmemset uses 32-bit wide characters
      and thus filled the buffer incorrectly. In some
      cases, the null  byte  map would be overwritten,
      causing ctype_utf8.test and ibmdb2i_rir.test to
      fail, giving the error message CPF5035.
      
      This patch eliminates the use of wmemset to fill
      the row buffer. wmemset has  been  replaced with
      memset16, which always  fills  memory with 16-bit
      values.
      5a644923
  3. 28 May, 2009 5 commits
  4. 27 May, 2009 10 commits
  5. 26 May, 2009 1 commit
  6. 25 May, 2009 4 commits
    • Bjorn Munch's avatar
      merge from 5.1-mtr · bec841ce
      Bjorn Munch authored
      bec841ce
    • Staale Smedseng's avatar
      Bug #44736 mysqld_safe's my_which() is broken and · 986bcb5f
      Staale Smedseng authored
      doesn't find 'logger'
      
      Due to a variable quoting mistake, the $PATH environment
      variable isn't parsed correctly when searching for the
      existence of the desired executable(s) (logger in this 
      case).
      
      This patch removes the quotes.
      986bcb5f
    • Davi Arnaut's avatar
      Bug#42158: leak: SSL_get_peer_certificate() doesn't have matching X509_free() · 981ff94d
      Davi Arnaut authored
      The problem is that the server failed to follow the rule that
      every X509 object retrieved using SSL_get_peer_certificate()
      must be explicitly freed by X509_free(). This caused a memory
      leak for builds linked against OpenSSL where the X509 object
      is reference counted -- improper counting will prevent the
      object from being destroyed once the session containing the
      peer certificate is freed.
      
      The solution is to explicitly free every X509 object used.
      981ff94d
    • Georgi Kodinov's avatar
      Bug #44399 : crash with statement using TEXT columns, aggregates, GROUP BY, and · 8fb82e3f
      Georgi Kodinov authored
      HAVING
                  
      When calculating GROUP BY the server caches some expressions. It does
      that by allocating a string slot (Item_copy_string) and assigning the 
      value of the expression to it. This effectively means that the result
      type of the expression can be changed from whatever it was to a string.
      As this substitution takes place after the compile-time result type 
      calculation for IN but before the run-time type calculations, 
      it causes the type calculations in the IN function done at run time 
      to get unexpected results different from what was prepared at compile time.
                        
      In the CASE ... WHEN ... THEN ... statement there was a similar problem
      and it was solved by artificially adding a STRING argument to the set of 
      types of the IN/CASE arguments at compile time, so if any of the 
      arguments of the CASE function changes its type to a string it will 
      still be covered by the information prepared at compile time.
      8fb82e3f
  7. 23 May, 2009 1 commit
  8. 22 May, 2009 6 commits
    • Luis Soares's avatar
      BUG#41725: upmerge: 5.0-bt --> 5.1-bt · e2aad850
      Luis Soares authored
      e2aad850
    • Luis Soares's avatar
      BUG#41725: slave crashes when inserting into temporary table after · 2b4fcc1d
      Luis Soares authored
      stop/start slave
            
      When stopping and restarting the slave while it is replicating
      temporary tables, the server would crash or raise an assertion
      failure. This was due to the fact that although temporary tables are
      saved between slave threads restart, the reference to the thread in
      use (table->in_use) was not being properly updated when the restart
      happened (it would still reference the old/invalid thread instead of
      the new one).
            
      This patch addresses this issue by resetting the reference to the new
      slave thread on slave thread restart.
      2b4fcc1d
    • Patrick Crews's avatar
      merge · 321189c7
      Patrick Crews authored
      321189c7
    • Patrick Crews's avatar
      merge 5.0-> 5.1 · 53c09b3a
      Patrick Crews authored
      53c09b3a
    • Patrick Crews's avatar
      Bug#40465 - mysqldump.test does no checking of dump or restore · 6c31d59b
      Patrick Crews authored
      Created new .test file - mysqldump_restore that does test restore from mysqldump
      output for a limited number of basic cases.
      Create new .inc file - mysqldump.inc - renames original table and uses mysqldump
      output to recreate the table, then uses diff_tables.inc to compare the two tables.
      Backported include/diff_tables.inc to facilitate this testing.
      New patch incorporating review feedback prior to push.
      
      mysqldump.test - removed redundant call to include/have_log_bin.inc (was used twice in the test!)
      6c31d59b
    • Gleb Shchepa's avatar
      Bug #42778: delete order by null global variable causes · f5c93081
      Gleb Shchepa authored
                  assertion .\filesort.cc, line 797
      
      Minor fix to test case (embedded server failure).
      f5c93081
  9. 21 May, 2009 2 commits
    • Gleb Shchepa's avatar
      Bug #42778: delete order by null global variable causes · 387a54fb
      Gleb Shchepa authored
                  assertion .\filesort.cc, line 797
      
      A query with the "ORDER BY @@some_system_variable" clause,
      where @@some_system_variable is NULL, causes assertion
      failure in the filesort procedures.
      
      The reason of the failure is in the value of
      Item_func_get_system_var::maybe_null: it was unconditionally
      set to false even if the value of a variable was NULL.
      387a54fb
    • Patrick Crews's avatar
      Bug#40465: mysqldump.test does no checking of dump or restore. · 2bb44aef
      Patrick Crews authored
      Created new .test file - mysqldump_restore that does this for a limited number
      of basic cases.
      Created new .inc file - mysqldump.inc - renames original table and uses mysqldump
      output to recreate the table, then uses diff_tables.inc to compare the two tables.
      Backported include/diff_tables.inc to facilitate this testing.
      2bb44aef