1. 01 Oct, 2008 3 commits
    • Ingo Struewing's avatar
      Bug#37958 - test main.plugin crash on Mac OS X when selecting from EXAMPLE engine. · acaf211d
      Ingo Struewing authored
      This patch contains fixes for two problems:
      
      1. As originally reported, the server crashed on Mac OS X when trying to access
         an EXAMPLE table after the EXAMPLE plugin was installed.
      
         It turned out that the dynamically loaded EXAMPLE plugin called the
         function hash_earch() from a Mac OS X system library, instead of
         hash_earch() from MySQL's mysys library. Makefile.am in storage/example
         does not include libmysys. So the Mac OS X linker arranged the hash_search()
         function to be linked to the system library when the shared object is
         loaded.
      
         One possible solution would be to include libmysys into the linkage of
         dynamic plugins. But then we must have a libmysys.so, which must be
         used by the server too. This could have a minimal performance impact,
         but foremost the change seems to bee too risky at the current state of
         MySQL 5.1.
      
         The selected solution is to rename MySQL's hash_search() to my_hash_search()
         like it has been done before with hash_insert() and hash_reset().
      
         Since this is the third time, we need to rename a hash_*() function,
         I did renamed all hash_*() functions to my_hash_*().
      
         To avoid changing a zillion calls to these functions, and announcing
         this to hundreds of developers, I added defines that map the old names
         to the new names.
      
         This change is in hash.h and hash.c.
      
      2. The other problem was improper implementation of the handlerton-to-plugin
         mapping. We use a fixed-size array to hold a plugin reference for each
         handlerton. On every install of a handler plugin, we allocated a new slot
         of the array. On uninstall we did not free it. After some uninstall/install
         cycles the array overflowed. We did not check for overflow.
      
         One fix is to check for overflow to stop the crashes.
      
         Another fix is to free the array slot at uninstall and search for a free slot
         at plugin install.
      
         This change is in handler.cc.
      acaf211d
    • Patrick Crews's avatar
      automerge · 749f8b3e
      Patrick Crews authored
      749f8b3e
    • Patrick Crews's avatar
      Bug#38311 Some tests use 'rm' which is not portable · af848376
      Patrick Crews authored
      Repush of change to fix tests on Pushbuild.
      af848376
  2. 30 Sep, 2008 8 commits
  3. 29 Sep, 2008 1 commit
    • Alexey Botchkov's avatar
      Bug#37949 Crash if argument to SP is a subquery that returns more than one row · b6f4b1c0
      Alexey Botchkov authored
           JOIN for the subselect wasn't cleaned if we came upon an error
           during sub_select() execution. That leads to the assertion failure
           in close_thread_tables()
      
           part of the 6.0 code backported
      
      per-file comments:
        mysql-test/r/sp-error.result
      Bug#37949 Crash if argument to SP is a subquery that returns more than one row 
          test result
      
        mysql-test/t/sp-error.test
      Bug#37949 Crash if argument to SP is a subquery that returns more than one row 
          test case
      
        sql/sp_head.cc
      Bug#37949 Crash if argument to SP is a subquery that returns more than one row 
          lex->unit.cleanup() call added if not substatement
      b6f4b1c0
  4. 25 Sep, 2008 1 commit
  5. 23 Sep, 2008 2 commits
  6. 22 Sep, 2008 3 commits
  7. 20 Sep, 2008 5 commits
  8. 18 Sep, 2008 8 commits
  9. 17 Sep, 2008 4 commits
  10. 16 Sep, 2008 5 commits