1. 24 Mar, 2007 3 commits
    • svoj@mysql.com/april.(none)'s avatar
      BUG#24566 - Incorrect key file for table ( the size of table is more than 2G) · 1b64741b
      svoj@mysql.com/april.(none) authored
      Accessing a file that is bigger than 2G may report that read/write operation
      failed. This may affect anything that uses my_pread/my_pwrite functions, e.g.
      MyISAM, ARCHIVE, binary log.
      
      For MyISAM INSERT may report that table is crashed when writing to a table
      that is bigger than 2G.
      
      This is fixed by using proper offset type in my_pread/my_pwrite functions on
      systems that do not have native pread/pwrite calls.
      
      Affects systems that do not have native pread/pwrite calls, e.g. Windows.
      
      No test case for this fix, since it requires huge table.
      1b64741b
    • acurtis/antony@xiphis.org/ltamd64.xiphis.org's avatar
      BUG#26257 New Federated Server Functionality Doesn't support differently named tables · ccb9d448
      * Modified Federated memory allocation to use MEM_ROOT
      * Modified sql_servers and federated to allocate share connection
        parameters to use MEM_ROOT
      * Modified Federated to allow tablename in addition to server name
      * Implicit flushing of tables using altered/dropped server name
      * Added tests to prove new functionality works
      
      Contributors to this patch: Patrick Galbraith, Antony Curtis
      ccb9d448
    • acurtis/antony@xiphis.org/ltamd64.xiphis.org's avatar
      Bug#25721 · 14ccc659
        "Concurrent ALTER/CREATE SERVER can lead to deadlock"
        Deadlock caused by inconsistant use of mutexes in sql_server.cc
        One mutex has been removed to resolve deadlock.
        Many functions were made private which should not be exported.
        Unused variables and function removed.
      14ccc659
  2. 23 Mar, 2007 2 commits
  3. 22 Mar, 2007 2 commits
  4. 21 Mar, 2007 4 commits
  5. 19 Mar, 2007 1 commit
  6. 16 Mar, 2007 2 commits
  7. 15 Mar, 2007 8 commits
    • acurtis/antony@ltamd64.xiphis.org's avatar
      Merge xiphis.org:/home/antony/work2/p1-bug25671.3 · 97861f60
      acurtis/antony@ltamd64.xiphis.org authored
      into  xiphis.org:/home/antony/work2/p1-bug25671.4
      97861f60
    • istruewing@chilla.local's avatar
      Merge chilla.local:/home/mydev/mysql-5.0-bug25289 · b1c5288e
      istruewing@chilla.local authored
      into  chilla.local:/home/mydev/mysql-5.1-bug25289
      b1c5288e
    • istruewing@chilla.local's avatar
      Merge chilla.local:/home/mydev/mysql-4.1-bug25289 · 81c086a6
      istruewing@chilla.local authored
      into  chilla.local:/home/mydev/mysql-5.0-bug25289
      81c086a6
    • dlenev@mockturtle.local's avatar
      Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg25966-2 · bb233cb3
      dlenev@mockturtle.local authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg25966
      bb233cb3
    • dlenev@mockturtle.local's avatar
      Merge mockturtle.local:/home/dlenev/src/mysql-4.1-bg25966 · e4f88d52
      dlenev@mockturtle.local authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg25966-2
      e4f88d52
    • dlenev@mockturtle.local's avatar
      Fix for bug #25966 "2MB per second endless memory consumption after LOCK · 01bd08b5
      dlenev@mockturtle.local authored
      TABLE ... WRITE".
      
      Memory and CPU hogging occured when connection which had to wait for table
      lock was serviced by thread which previously serviced connection that was
      killed (note that connections can reuse threads if thread cache is enabled).
      One possible scenario which exposed this problem was when thread which
      provided binlog dump to replication slave was implicitly/automatically
      killed when the same slave reconnected and started pulling data through
      different thread/connection.
      The problem also occured when one killed particular query in connection
      (using KILL QUERY) and later this connection had to wait for some table
      lock.
      
      This problem was caused by the fact that thread-specific mysys_var::abort
      variable, which indicates that waiting operations on mysys layer should
      be aborted (this includes waiting for table locks), was set by kill
      operation but was never reset back. So this value was "inherited" by the
      following statements or even other connections (which reused the same
      physical thread). Such discrepancy between this variable and THD::killed
      flag broke logic on SQL-layer and caused CPU and memory hogging.
      
      This patch tries to fix this problem by properly resetting this member.
      
      There is no test-case associated with this patch since it is hard to test
      for memory/CPU hogging conditions in our test-suite.
      01bd08b5
    • dlenev@mockturtle.local's avatar
      Fix for bug #25966 "2MB per second endless memory consumption after LOCK · f2cb6641
      dlenev@mockturtle.local authored
      TABLE ... WRITE".
      
      CPU hogging occured when connection which had to wait for table lock was
      serviced by thread which previously serviced connection that was killed
      (note that connections can reuse threads if thread cache is enabled).
      One possible scenario which exposed this problem was when thread which
      provided binlog dump to replication slave was implicitly/automatically
      killed when the same slave reconnected and started pulling data through
      different thread/connection.
      In 5.* versions memory hogging was added to CPU hogging. Moreover in
      those versions the problem also occured when one killed particular query
      in connection (using KILL QUERY) and later this connection had to wait for
      some table lock.
      
      This problem was caused by the fact that thread-specific mysys_var::abort
      variable, which indicates that waiting operations on mysys layer should
      be aborted (this includes waiting for table locks), was set by kill
      operation but was never reset back. So this value was "inherited" by the
      following statements or even other connections (which reused the same
      physical thread). Such discrepancy between this variable and THD::killed
      flag broke logic on SQL-layer and caused CPU and memory hogging.
      
      This patch tries to fix this problem by properly resetting this member.
      
      There is no test-case associated with this patch since it is hard to test
      for memory/CPU hogging conditions in our test-suite.
      f2cb6641
    • dlenev@mockturtle.local's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1-engines · d9d887ad
      dlenev@mockturtle.local authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg25966
      d9d887ad
  8. 14 Mar, 2007 14 commits
  9. 13 Mar, 2007 4 commits
    • svoj@mysql.com/april.(none)'s avatar
      Removed tabs. · d7311aab
      svoj@mysql.com/april.(none) authored
      d7311aab
    • acurtis/antony@xiphis.org/ltamd64.xiphis.org's avatar
      Bug#25671 · e4d93c6b
        "CREATE/DROP/ALTER SERVER should require privileges"
        Add check for SUPER privilege when executing CREATE/DROP/ALTER SERVER.
        Previously, any user even with only USAGE priv can execute those commands.
      e4d93c6b
    • istruewing@blade08.mysql.com's avatar
      Merge istruewing@bk-internal.mysql.com:/home/bk/mysql-5.1-engines · d3b7fce8
      istruewing@blade08.mysql.com authored
      into  blade08.mysql.com:/data0/istruewing/autopush/mysql-5.1-bug25460
      d3b7fce8
    • istruewing@chilla.local's avatar
      Bug#25460 - High concurrency MyISAM access causes severe mysqld crash. · 67d97254
      istruewing@chilla.local authored
      The previous two patches for this bug worked together so that
      no permanent table was memory mapped. The first patch tried to
      avoid mapping while a table is in use. It allowed mapping only
      if there was exactly one lock on the table, assuming that the
      calling thread owned it. During mi_open(), a different call to
      memory mapping was coded, which did not have this limitation.
      
      The second patch tried to remove the code duplication and just
      called mi_extra() from mi_open() an thus inherited the limitation.
      But on open, a thread does not have a lock on the table...
      
      A possible solution would be to check for zero or one lock.
      But since I learned that it is safe to memory map a file while
      normal file I/O is done on it, I removed the restriction altogether
      and allow to memory map while a table is in use.
      
      No test case. I do not see a chance to verify with the test suite
      which kind of I/O is used on a table.
      67d97254