An error occurred fetching the project authors.
  1. 13 Oct, 2009 1 commit
    • Konstantin Osipov's avatar
      Introduce thd->query_cache_tls (thread · ea6a22bf
      Konstantin Osipov authored
      local storage for query cache). 
      We need more than one pointer in a thread to
      represent the query cache and net->query_cache_query can not be used
      any more (due to ABI compatibility issues and to different life
      time of NET and THD).
      This is a backport of the following patch from 6.0:
      ----------------------------------------------------------
      revno: 2476.1157.2
      committer: kostja@bodhi.(none)
      timestamp: Sat 2007-06-16 13:29:24 +0400
      ea6a22bf
  2. 09 Oct, 2009 1 commit
    • Konstantin Osipov's avatar
      Backport to 5.4 the following changesets: · 62672568
      Konstantin Osipov authored
      revno: 2476.785.24
      committer: kostja@bodhi.(none)
      timestamp: Tue 2007-10-16 20:19:00 +0400
      message:
        Reflect a rename of a member in the client ABI (a compatible change).
      ----------------------------------------------------------
      revno: 2476.423.26
      committer: kostja@bodhi.(none)
      timestamp: Tue 2007-10-16 20:12:37 +0400
      message:
        Update the client ABI to reflect member rename
        (this is a backward-compatible change).
      ----------------------------------------------------------
      revno: 2476.785.22
      committer: kostja@bodhi.(none)
      timestamp: Tue 2007-10-16 19:37:25 +0400
      message:
        Remove some remains of support of 3.22 protocol. This was in fact dead code,
        since the option to talk 3.22 protocol was removed in 4.1 and there
        is no other protocol negotiation mechanism besides this option.
      62672568
  3. 28 Jul, 2009 1 commit
    • Alexey Kopytov's avatar
      Bug #45031: invalid memory reads in my_real_read using protocol · 53434623
      Alexey Kopytov authored
                  compression 
       
      Since uint3korr() may read 4 bytes depending on build flags and 
      platform, allocate 1 extra "safety" byte in the network buffer 
      for cases when uint3korr() in my_real_read() is called to read
      last 3 bytes in the buffer. 
       
      It is practically hard to construct a reliable and reasonably 
      small test case for this bug as that would require constructing 
      input stream such that a certain sequence of bytes in a 
      compressed packet happens to be the last 3 bytes of the network 
      buffer. 
      53434623
  4. 10 Feb, 2009 1 commit
  5. 20 Dec, 2008 2 commits
  6. 28 Mar, 2008 1 commit
  7. 28 Feb, 2008 1 commit
    • davi@mysql.com/endora.local's avatar
      Bug#34655 Compile error · 41545137
      davi@mysql.com/endora.local authored
      Rename client_last_error to last_error and client_last_errno to last_errno
      to not break connectors which use the internal net structure for error handling.
      41545137
  8. 12 Dec, 2007 1 commit
    • kostja@bodhi.(none)'s avatar
      Bug#12713 "Error in a stored function called from a SELECT doesn't · ebb9c5d9
      kostja@bodhi.(none) authored
      cause ROLLBACK of statement", part 1. Review fixes.
      
      Do not send OK/EOF packets to the client until we reached the end of 
      the current statement.
      This is a consolidation, to keep the functionality that is shared by all 
      SQL statements in one place in the server.
      Currently this functionality includes:
      - close_thread_tables()
      - log_slow_statement().
      
      After this patch and the subsequent patch for Bug#12713, it shall also include:
      - ha_autocommit_or_rollback()
      - net_end_statement()
      - query_cache_end_of_result().
      
      In future it may also include:
      - mysql_reset_thd_for_next_command().
      ebb9c5d9
  9. 15 Oct, 2007 1 commit
  10. 11 Oct, 2007 1 commit
  11. 30 Jul, 2007 1 commit
    • monty@mysql.com/nosik.monty.fi's avatar
      Slow query log to file now displays queries with microsecond precission · b16289a5
      monty@mysql.com/nosik.monty.fi authored
      --long-query-time is now given in seconds with microseconds as decimals
      --min_examined_row_limit added for slow query log
      long_query_time user variable is now double with 6 decimals
      Added functions to get time in microseconds
      Added faster time() functions for system that has gethrtime()  (Solaris)
      We now do less time() calls.
      Added field->in_read_set() and field->in_write_set() for easier field manipulation by handlers
      set_var.cc and my_getopt() can now handle DOUBLE variables.
      All time() calls changed to my_time()
      my_time() now does retry's if time() call fails.
      Added debug function for stopping in mysql_admin_table() when tables are locked
      Some trivial function and struct variable renames to avoid merge errors.
      Fixed compiler warnings
      Initialization of some time variables on windows moved to my_init() 
      b16289a5
  12. 19 Jun, 2007 1 commit
  13. 25 May, 2007 1 commit
  14. 24 May, 2007 1 commit
    • msvensson@pilot.blaudden's avatar
      Bug#26664 test suite times out on OS X 64bit · 93b1fe65
      msvensson@pilot.blaudden authored
       - The "mysql client in mysqld"(which is used by
         replication and federated) should use alarms instead of setting
         socket timeout value if the rest of the server uses alarm. By
         always calling 'my_net_set_write_timeout'
         or 'my_net_set_read_timeout' when changing the timeout value(s), the
         selection whether to use alarms or timeouts will be handled by
         ifdef's in those two functions. 
       - Move declaration of 'vio_timeout' into "vio_priv.h"
      93b1fe65
  15. 10 May, 2007 1 commit
    • monty@mysql.com/narttu.mysql.fi's avatar
      WL#3817: Simplify string / memory area types and make things more consistent (first part) · 088e2395
      monty@mysql.com/narttu.mysql.fi authored
      The following type conversions was done:
      
      - Changed byte to uchar
      - Changed gptr to uchar*
      - Change my_string to char *
      - Change my_size_t to size_t
      - Change size_s to size_t
      
      Removed declaration of byte, gptr, my_string, my_size_t and size_s. 
      
      Following function parameter changes was done:
      - All string functions in mysys/strings was changed to use size_t
        instead of uint for string lengths.
      - All read()/write() functions changed to use size_t (including vio).
      - All protocoll functions changed to use size_t instead of uint
      - Functions that used a pointer to a string length was changed to use size_t*
      - Changed malloc(), free() and related functions from using gptr to use void *
        as this requires fewer casts in the code and is more in line with how the
        standard functions work.
      - Added extra length argument to dirname_part() to return the length of the
        created string.
      - Changed (at least) following functions to take uchar* as argument:
        - db_dump()
        - my_net_write()
        - net_write_command()
        - net_store_data()
        - DBUG_DUMP()
        - decimal2bin() & bin2decimal()
      - Changed my_compress() and my_uncompress() to use size_t. Changed one
        argument to my_uncompress() from a pointer to a value as we only return
        one value (makes function easier to use).
      - Changed type of 'pack_data' argument to packfrm() to avoid casts.
      - Changed in readfrm() and writefrom(), ha_discover and handler::discover()
        the type for argument 'frmdata' to uchar** to avoid casts.
      - Changed most Field functions to use uchar* instead of char* (reduced a lot of
        casts).
      - Changed field->val_xxx(xxx, new_ptr) to take const pointers.
      
      Other changes:
      - Removed a lot of not needed casts
      - Added a few new cast required by other changes
      - Added some cast to my_multi_malloc() arguments for safety (as string lengths
        needs to be uint, not size_t).
      - Fixed all calls to hash-get-key functions to use size_t*. (Needed to be done
        explicitely as this conflict was often hided by casting the function to
        hash_get_key).
      - Changed some buffers to memory regions to uchar* to avoid casts.
      - Changed some string lengths from uint to size_t.
      - Changed field->ptr to be uchar* instead of char*. This allowed us to
        get rid of a lot of casts.
      - Some changes from true -> TRUE, false -> FALSE, unsigned char -> uchar
      - Include zlib.h in some files as we needed declaration of crc32()
      - Changed MY_FILE_ERROR to be (size_t) -1.
      - Changed many variables to hold the result of my_read() / my_write() to be
        size_t. This was needed to properly detect errors (which are
        returned as (size_t) -1).
      - Removed some very old VMS code
      - Changed packfrm()/unpackfrm() to not be depending on uint size
        (portability fix)
      - Removed windows specific code to restore cursor position as this
        causes slowdown on windows and we should not mix read() and pread()
        calls anyway as this is not thread safe. Updated function comment to
        reflect this. Changed function that depended on original behavior of
        my_pwrite() to itself restore the cursor position (one such case).
      - Added some missing checking of return value of malloc().
      - Changed definition of MOD_PAD_CHAR_TO_FULL_LENGTH to avoid 'long' overflow.
      - Changed type of table_def::m_size from my_size_t to ulong to reflect that
        m_size is the number of elements in the array, not a string/memory
        length.
      - Moved THD::max_row_length() to table.cc (as it's not depending on THD).
        Inlined max_row_length_blob() into this function.
      - More function comments
      - Fixed some compiler warnings when compiled without partitions.
      - Removed setting of LEX_STRING() arguments in declaration (portability fix).
      - Some trivial indentation/variable name changes.
      - Some trivial code simplifications:
        - Replaced some calls to alloc_root + memcpy to use
          strmake_root()/strdup_root().
        - Changed some calls from memdup() to strmake() (Safety fix)
        - Simpler loops in client-simple.c
      088e2395
  16. 17 Apr, 2007 1 commit
  17. 12 Apr, 2007 1 commit
  18. 27 Mar, 2007 1 commit
  19. 22 Mar, 2007 1 commit
  20. 23 Feb, 2007 1 commit
  21. 29 Jan, 2007 1 commit
  22. 22 Jan, 2007 1 commit
  23. 23 Dec, 2006 1 commit
  24. 14 Dec, 2006 2 commits
  25. 30 Nov, 2006 1 commit
    • monty@mysql.com/narttu.mysql.fi's avatar
      Fixed compiler warnings (Mostly VC++): · 3a35c300
      monty@mysql.com/narttu.mysql.fi authored
      - Removed not used variables
      - Changed some ulong parameters/variables to ulonglong (possible serious bug)
      - Added casts to get rid of safe assignment from longlong to long (and similar)
      - Added casts to function parameters
      - Fixed signed/unsigned compares
      - Added some constructores to structures
      - Removed some not portable constructs
      
      Better fix for bug Bug #21428 "skipped 9 bytes from file: socket (3)" on "mysqladmin shutdown"
      (Added new parameter to net_clear() to define when we want the communication buffer to be emptied)
      3a35c300
  26. 29 Nov, 2006 1 commit
    • monty@mysql.com/narttu.mysql.fi's avatar
      Added back sql-bench directory, so that one can more easily run benchmarks on... · 23263db6
      monty@mysql.com/narttu.mysql.fi authored
      Added back sql-bench directory, so that one can more easily run benchmarks on a server and add new benchmarks for new optimizations
      Fixed memory leak in _db_set() (Bug#24497 Valgrind warning: get_one_option)
      Don't call net_clear() on COM_QUIT. This avoids a warning from net_clear() after shutdown: "skipped ## bytes from file"
      BUG#21428: skipped 9 bytes from file: socket (3)" on "mysqladmin shutdown"
      23263db6
  27. 20 Nov, 2006 1 commit
    • monty@mysql.com/nosik.monty.fi's avatar
      Remove compiler warnings · e8258798
      monty@mysql.com/nosik.monty.fi authored
      (Mostly in DBUG_PRINT() and unused arguments)
      Fixed bug in query cache when used with traceing (--with-debug)
      Fixed memory leak in mysqldump
      Removed warnings from mysqltest scripts (replaced -- with #)
      e8258798
  28. 18 Sep, 2006 1 commit
    • kroki/tomash@moonlight.intranet's avatar
      BUG#9678: Client library hangs after network communication failure · 92610664
      kroki/tomash@moonlight.intranet authored
                (back-port to 4.0)
      
      Socket timeouts in client library were used only on Windows.
      Additionally, in 4.0 write operations erroneously set read timeout.
      
      The solution is to use socket timeouts in client library on all
      systems were they are supported, and to differentiate between read
      and write timeouts.
      
      No test case is provided because it is impossible to simulate network
      failure in current test suite.
      92610664
  29. 22 Aug, 2006 1 commit
    • kroki/tomash@moonlight.intranet's avatar
      BUG#21051: RESET QUERY CACHE very slow when query_cache_type=0 · 0f0ddc39
      kroki/tomash@moonlight.intranet authored
      There were two problems: RESET QUERY CACHE took a long time to complete
      and other threads were blocked during this time.
      
      The patch does three things:
        1 fixes a bug with improper use of test-lock-test_again technique.
            AKA Double-Checked Locking is applicable here only in few places.
        2 Somewhat improves performance of RESET QUERY CACHE.
            Do my_hash_reset() instead of deleting elements one by one.  Note
            however that the slowdown also happens when inserting into sorted
            list of free blocks, should be rewritten using balanced tree.
        3 Makes RESET QUERY CACHE non-blocking.
            The patch adjusts the locking protocol of the query cache in the
            following way: it introduces a flag flush_in_progress, which is
            set when Query_cache::flush_cache() is in progress.  This call
            sets the flag on enter, and then releases the lock.  Every other
            call is able to acquire the lock, but does nothing if
            flush_in_progress is set (as if the query cache is disabled).
            The only exception is the concurrent calls to
            Query_cache::flush_cache(), that are blocked until the flush is
            over.  When leaving Query_cache::flush_cache(), the lock is
            acquired and the flag is reset, and one thread waiting on
            Query_cache::flush_cache() (if any) is notified that it may
            proceed.
      0f0ddc39
  30. 14 Aug, 2006 1 commit
  31. 16 Jun, 2006 1 commit
  32. 24 May, 2006 1 commit
  33. 16 May, 2006 1 commit
    • kent@mysql.com's avatar
      mysql.spec.sh: · 9fca0d76
      kent@mysql.com authored
        Removed Berkeley DB
      configure.in:
        Adjusted Netware support
      basic.t.c:
        Change for Netware
      Makefile.am:
        Use thread safe libmysqlclient_r if it was built
      valgrind.supp:
        Hide report about strlen/_dl_init_paths
      ha_tina.cc:
        Temporarely disable CSV engine on Netware,
        as the engine depends on mmap()
      net_serv.cc:
        Include <sys/select.h> for Netware
      9fca0d76
  34. 16 Apr, 2006 1 commit
  35. 02 Mar, 2006 1 commit
  36. 01 Mar, 2006 1 commit
  37. 27 Feb, 2006 1 commit
  38. 16 Feb, 2006 1 commit