1. 16 Oct, 2009 4 commits
    • Martin Hansson's avatar
      Bug#46019: ERROR 1356 When selecting from within another · c6a11dff
      Martin Hansson authored
                  view that has Group By
            
      When SELECT'ing from a view that mentions another,
      materialized, view, access was being denied. The issue was
      resolved by lifting a special case which avoided such access
      checking in check_single_table_access. In the past, this was
      necessary since if such a check were performed, the error
      message would be downgraded to a warning in the case of SHOW
      CREATE VIEW. The downgrading of errors was meant to handle
      only that scenario, but could not distinguish the two as it
      read only the error messages.
            
      The special case was needed in the fix of bug no 36086.
      Before that, views were confused with derived tables.
            
      After bug no 35996 was fixed, the manipulation of errors
      during SHOW CREATE VIEW execution is not dependent on the
      actual error messages in the queue, it rather looks at the
      actual cause of the error and takes appropriate
      action. Hence the aforementioned special case is now
      superfluous and the bug is fixed.
      c6a11dff
    • Joerg Bruehe's avatar
      9c76415a
    • Georgi Kodinov's avatar
      merge · 757e641d
      Georgi Kodinov authored
      757e641d
    • Georgi Kodinov's avatar
  2. 15 Oct, 2009 8 commits
  3. 14 Oct, 2009 12 commits
    • Jorgen Loland's avatar
      merge · aea42df6
      Jorgen Loland authored
      aea42df6
    • Jorgen Loland's avatar
      Followup patch for BUG#47280 · a91b1826
      Jorgen Loland authored
      Temporary tables may set join->group to 0 even though there is 
      grouping. Also need to test if sum_func_count>0 when JOIN::exec() 
      decides whether to present results in a grouped manner.
      a91b1826
    • Georgi Kodinov's avatar
      merge · a820c732
      Georgi Kodinov authored
      a820c732
    • Georgi Kodinov's avatar
      merge · 88aa7af8
      Georgi Kodinov authored
      88aa7af8
    • Georgi Kodinov's avatar
      version change · 8fc8d661
      Georgi Kodinov authored
      8fc8d661
    • Georgi Kodinov's avatar
      merge · 9449be58
      Georgi Kodinov authored
      9449be58
    • Georgi Kodinov's avatar
      merged main to mysql-5.0-bugteam · b251cbd5
      Georgi Kodinov authored
      b251cbd5
    • Georgi Kodinov's avatar
      merged 5.1-main · 4bc86808
      Georgi Kodinov authored
      4bc86808
    • He Zhenxing's avatar
      Attempt to fix Windows testcase output issue · adab17b9
      He Zhenxing authored
      adab17b9
    • Jorgen Loland's avatar
      Bug#47280 - strange results from count(*) with order by multiple · bf0aa2bd
      Jorgen Loland authored
                  columns without where/group
                           
      Simple SELECT with implicit grouping used to return many rows if
      the query was ordered by the aggregated column in the SELECT
      list. This was incorrect because queries with implicit grouping
      should only return a single record.
                                    
      The problem was that when JOIN:exec() decided if execution needed
      to handle grouping, it was assumed that sum_func_count==0 meant
      that there were no aggregate functions in the query. This
      assumption was not correct in JOIN::exec() because the aggregate
      functions might have been optimized away during JOIN::optimize().
                        
      The reason why queries without ordering behaved correctly was
      that sum_func_count is only recalculated if the optimizer chooses
      to use temporary tables (which it does in the ordered case).
      Hence, non-ordered queries were correctly treated as grouped.
                        
      The fix for this bug was to remove the assumption that
      sum_func_count==0 means that there is no need for grouping. This
      was done by introducing variable "bool implicit_grouping" in the
      JOIN object.
      bf0aa2bd
    • sunanda.menon@sun.com's avatar
      85f00a96
    • 's avatar
      Bug#46640: output from mysqlbinlog command in 5.1 breaks replication · 0ece5891
      authored
            
      The BINLOG statement was sharing too much code with the slave SQL thread, introduced with
      the patch for Bug#32407. This caused statements to be logged with the wrong server_id, the
      id stored inside the events of the BINLOG statement rather than the id of the running 
      server.
            
      Fix by rearranging code a bit so that only relevant parts of the code are executed by
      the BINLOG statement, and the server_id of the server executing the statements will 
      not be overrided by the server_id stored in the 'format description BINLOG statement'.
      0ece5891
  4. 13 Oct, 2009 7 commits
  5. 12 Oct, 2009 5 commits
    • Satya B's avatar
      Applying Innodb Plugin 1.0.5 snapshot, part 14 · 672c04d6
      Satya B authored
      Sync the storage/innodb_plugin/mysql-test directory
      with Innodb_plugin-1.0.5/mysql-test directory
      
      Update the README file
      672c04d6
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot, part 13 · d0c28265
      Satya B authored
      1. Undo r6031 btr/btr0btr.c changes
      
      2. apply skipped Plug.in changes and missed revisions
      
      Detailed revision comments:
      
      r5865 | vasil | 2009-09-12 02:26:03 -0500 (Sat, 12 Sep 2009) | 10 lines
      branches/zip:
      
      Simplify the compile time checks by splittig them into 5 independent checks:
      
      * Whether GCC atomics are available
      * Whether pthread_t can be used by GCC atomics
      * Whether Solaris libc atomics are available
      * Whether pthread_t can be used by Solaris libs atomics
      * Checking the size of pthread_t
      
      r5869 | vasil | 2009-09-12 03:33:11 -0500 (Sat, 12 Sep 2009) | 15 lines
      branches/zip:
      
      Include ut0auxconf.h only if none of the macros it would define is defined.
      The check when to include this header was outdated from the time when there
      was only one macro involved.
      
      Move the atomics checks that are in univ.i outside of
      #if windows ... #else ... #endif
      This simplifies the code and removes some duplicates like defining
      HAVE_ATOMIC_BUILTINS if HAVE_WINDOWS_ATOMICS is defined in both branches.
      
      Do not define the same macro HAVE_ATOMIC_PTHREAD_T for different events.
      Instead define HAVE_IB_ATOMIC_PTHREAD_T_GCC and
      HAVE_IB_ATOMIC_PTHREAD_T_SOLARIS.
      
      r5871 | vasil | 2009-09-12 04:25:44 -0500 (Sat, 12 Sep 2009) | 6 lines
      branches/zip:
      
      Rename HAVE_SOLARIS_ATOMICS to HAVE_IB_SOLARIS_ATOMICS and 
      IB_HAVE_PAUSE_INSTRUCTION to HAVE_IB_PAUSE_INSTRUCTION so they
      all follow the same HAVE_IB_* convention.
      
      r5888 | vasil | 2009-09-14 03:38:45 -0500 (Mon, 14 Sep 2009) | 40 lines
      branches/zip:
      
      Back-merge c5880 and c5881 from branches/embedded-1.0:
      
        ------------------------------------------------------------------------
        r5880 | vasil | 2009-09-12 17:28:44 +0300 (Sat, 12 Sep 2009) | 18 lines
        Changed paths:
           M /branches/embedded-1.0/configure.in
           M /branches/embedded-1.0/include/os0sync.h
           M /branches/embedded-1.0/srv/srv0start.c
        
        branches/embedded-1.0:
        
        Clean up and simplify the code that surrounds the atomic ops:
        
        * Simplify the code that prints what atomics are used:
        Instead of repeating the same conditions on which each atomics are used
        use just one printf that prints a variable defined by the code which
        chooses what atomics to use.
        
        * In os0sync.h pick up each atomic variant only if it has been selected
        by autoconf (based on IB_ATOMIC_MODE_* macros). Define the startup message
        to be printed.
        
        * In configure.in: check what user has chosen and if he has chosen
        something that is not available, emit an error. If nothing has been chosen
        explicitly by the user, auto select an option according to the described
        logic in configure.in.
        
        ------------------------------------------------------------------------
        r5881 | vasil | 2009-09-12 20:08:27 +0300 (Sat, 12 Sep 2009) | 4 lines
        Changed paths:
           M /branches/embedded-1.0/configure.in
        
        branches/embedded-1.0:
        
        Fix syntax error in test program.
        
        ------------------------------------------------------------------------
      
      r5889 | vasil | 2009-09-14 04:17:18 -0500 (Mon, 14 Sep 2009) | 5 lines
      branches/zip:
      
      Add missing return statement in the test program that could have
      caused a warning.
      
      r5893 | inaam | 2009-09-14 10:20:48 -0500 (Mon, 14 Sep 2009) | 10 lines
      branches/zip  rb://159
      
      In case of pages that are not made young the counter is incremented
      only when the page in question is 'old'. In case of pages that are
      made young the counter is incremented in case of all pages. For apple
      to apple comparison this patch changes the 'young-making' counter to
      consider only 'old' blocks.
      
      Approved by: Marko
      
      r5537 | vasil | 2009-07-21 04:31:26 -0500 (Tue, 21 Jul 2009) | 5 lines
      branches/zip:
      
      Fixups in ChangeLog: sort filenames alphabetically and wrap to 78 chars per
      line.
      r5870 | vasil | 2009-09-12 04:13:44 -0500 (Sat, 12 Sep 2009) | 7 lines
      branches/zip:
      
      Define HAVE_ATOMIC_BUILTINS and INNODB_RW_LOCKS_USE_ATOMICS in os0sync.h
      instead of in univ.i. The code expects os_*() macros to be present if
      HAVE_ATOMIC_BUILTINS and INNODB_RW_LOCKS_USE_ATOMICS are defined. So define
      them next to defining the os_*() macros.
      
      r5696 | vasil | 2009-08-26 08:15:59 -0500 (Wed, 26 Aug 2009) | 14 lines
      branches/zip:
      
      Merge a change from MySQL:
      
       http://lists.mysql.com/commits/80832
      
       2968 Jonathan Perkin	2009-08-14
            Build fixes for Windows, AIX, HP/UX and Sun Studio11, from Timothy Smith.
            modified:
              CMakeLists.txt
              cmd-line-utils/readline/util.c
              storage/innodb_plugin/handler/i_s.cc
              storage/innodb_plugin/include/univ.i
      
      r5897 | marko | 2009-09-15 03:29:00 -0500 (Tue, 15 Sep 2009) | 8 lines
      branches/zip: Avoid bogus messages about latching order violations when
      UNIV_SYNC_DEBUG is defined.
      
      sync_thread_levels_g(): Add the parameter "warn".  Do not print
      anything unless it is set.
      
      sync_thread_add_level(): Pass warn=TRUE to sync_thread_levels_g()
      when the check is within an assertion; FALSE if it is not.
      
      r5899 | marko | 2009-09-15 06:26:01 -0500 (Tue, 15 Sep 2009) | 4 lines
      branches/zip: ut0ut.h: Do not #include "os0sync.h" #ifdef UNIV_HOTBACKUP.
      Since r5872, the InnoDB Hot Backup build was broken.
      Fix it by not defining any thread synchronization primitives in ut0ut.h.
      InnoDB Hot Backup is a single-threaded program.
      d0c28265
    • V Narayanan's avatar
      Bug#46448 trailing spaces are not ignored when user collation maps space != 0x20 · 7ad93d9b
      V Narayanan authored
      changing year in copyright header to 2009.
      7ad93d9b
    • V Narayanan's avatar
      Bug#46448 trailing spaces are not ignored when user collation maps space != 0x20 · db4e61ac
      V Narayanan authored
      Fixing copyright header in test collation file.
      db4e61ac
    • V Narayanan's avatar
      Bug#46448 trailing spaces are not ignored when user collation maps space != 0x20 · 3b02f76a
      V Narayanan authored
      In MySQL when the mapping for space is changed to something other than
      0x20 by defining a different collation, then space is not ignored when
      comparing two strings.
      
      This was happening because the function that performs the comparison
      of two strings while ignoring ending spaces, was comparing the collation
      value of a space with the ascii value of the ' ' character. This should
      be changed to do comparison between the collated values.
      3b02f76a
  6. 09 Oct, 2009 4 commits
    • Joerg Bruehe's avatar
      Fix Bug #47957 · 0f1547a0
      Joerg Bruehe authored
        A build "--without-server" fails if using "--with-ssl" (YaSSL)
      
      The problem was the lack of directory "extra" in a build
      which did not include the server.
      0f1547a0
    • Sergey Vojtovich's avatar
      Merge fix for BUG47073. · ff485672
      Sergey Vojtovich authored
      ff485672
    • Sergey Vojtovich's avatar
      BUG#47073 - valgrind errs, corruption,failed repair of partition, · 858713ed
      Sergey Vojtovich authored
                  low myisam_sort_buffer_size
      
      Repair by sort (default) or parallel repair of a MyISAM table
      (doesn't matter partitioned or not) as well as bulk inserts
      and enable indexes some times didn't failover to repair with
      key cache.
      
      The problem was that after unsuccessful attempt, data file was
      closed. Whereas repair with key cache requires open data file.
      Fixed by reopening data file.
      
      Also fixed a valgrind warning, which may appear during repair
      by sort or parallel repair with certain myisam_sort_buffer_size
      number of rows and length of an index entry (very dependent).
      858713ed
    • Martin Hansson's avatar
      Merge of bug#42846 · 5e0f9604
      Martin Hansson authored
      5e0f9604