1. 07 Nov, 2006 1 commit
  2. 06 Nov, 2006 2 commits
    • unknown's avatar
      Merge kpdesk.mysql.com:/home/thek/dev/bug23010/my40-bug23010 · e58a7bcd
      unknown authored
      into  kpdesk.mysql.com:/home/thek/dev/mysql-4.0-maint
      
      e58a7bcd
    • unknown's avatar
      Bug#23010 _my_b_read() passing illegal file handles to my_seek() · 620ebf7e
      unknown authored
      - The io cache flag seek_not_done was not set properly in the 
        reinit_io_cache function call and this led my_seek to be called
        desipite an invalid file handle.
      - Added a test in reinit_io_cache to ensure we have a valid file 
        handle before setting seek_not_done flag.
      
      
      mysys/mf_iocache.c:
        Added a test to only trigger my_seek function calls if we have
        a valid file descriptor.
      mysys/my_seek.c:
        Refactored incomplete condition into an assertion. This also ensures
        that variable newpos is initialized properly.
      620ebf7e
  3. 17 Oct, 2006 1 commit
  4. 13 Oct, 2006 1 commit
  5. 02 Oct, 2006 1 commit
  6. 29 Sep, 2006 1 commit
  7. 28 Sep, 2006 1 commit
    • unknown's avatar
      Bug#22384 - DELETE FROM table causes "Incorrect key file for table" · e9dfa4ab
      unknown authored
      Deletes on a big index could crash the index when it needs to
      shrink.
      
      Put a forgotten negation operator in.
      
      No test case. It is too big for the test suite. And it does not
      work with 4.0, only with higher versions. It is attached to the
      bug report.
      
      
      myisam/mi_delete.c:
        Bug#22384 - DELETE FROM table causes "Incorrect key file for table"
        Put a negation operator ('!') before _mi_get_last_key() in del().
        It returns NULL on error, non-NULL on success.
      e9dfa4ab
  8. 27 Sep, 2006 1 commit
  9. 23 Sep, 2006 1 commit
  10. 22 Sep, 2006 3 commits
  11. 18 Sep, 2006 1 commit
    • unknown's avatar
      BUG#9678: Client library hangs after network communication failure · cffcff25
      unknown 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.
      
      
      include/violite.h:
        Add argument to vio_timeout() to determine which timeout should be set:
        for read (false) or for write (true).
      libmysqld/lib_vio.c:
        Add argument to vio_timeout() to determine which timeout should be set:
        for read (false) or for write (true).
      sql/net_serv.cc:
        Add argument to vio_timeout() to determine which timeout should be set:
        for read (false) or for write (true).
      vio/viosocket.c:
        Add argument to vio_timeout() to determine which timeout should be set:
        for read (false) or for write (true).
        Implement socket timeouts on POSIX systems.
      cffcff25
  12. 15 Sep, 2006 1 commit
    • unknown's avatar
      Bug #4053: too many of "error 1236: 'binlog truncated in the middle of event' from master" · b1a1665a
      unknown authored
      - Fix my_read/my_write to handle return values from read/write correctly
      - Add debugging 'deprecated function' warning to my_lread/my_lwrite
      - Add debugging 'error, read/write interrupt not handled' warning to my_quick_read/my_quick_write
      
      There is no test case associated with these changes.  However, this is a conservative change,
      and no repeatable test case is available.
      
      
      mysys/my_lread.c:
        Warn about using deprecated function.
      mysys/my_lwrite.c:
        Warn about using deprecated function.
      mysys/my_pread.c:
        Handle interrupted read() or write() (EINTR) properly
      mysys/my_quick.c:
        Warn about interrupted read() or write(), which is not
        handled by my_quick_read() or my_quick_write().
      mysys/my_read.c:
        Handle interrupted read() (EINTR) properly
      mysys/my_write.c:
        Handle interrupted write() (EINTR) properly
      b1a1665a
  13. 07 Sep, 2006 1 commit
    • unknown's avatar
      Bug#14400 - Query joins wrong rows from table which is subject of · 29543ca2
      unknown authored
                  "concurrent insert"
      Additional fix for full keys and test case.
      
      
      myisam/mi_rkey.c:
        Bug#14400 - Query joins wrong rows from table which is subject of
                    "concurrent insert"
        Additional fix for full keys.
      mysql-test/r/myisam.result:
        Bug#14400 - Query joins wrong rows from table which is subject of
                    "concurrent insert"
        Additional results.
      mysql-test/t/myisam.test:
        Bug#14400 - Query joins wrong rows from table which is subject of
                    "concurrent insert"
        Additional test case.
      29543ca2
  14. 06 Sep, 2006 1 commit
  15. 31 Aug, 2006 1 commit
  16. 30 Aug, 2006 1 commit
    • unknown's avatar
      Bug#4053: too many of "error 1236: 'binlog truncated in the middle of \ · e7543550
      unknown authored
      	event' from master"
      
      Since there is no repeatable test case, and this is obviously wrong, this is
      the most conservative change that might possibly work.  
      
      The syscall  read()  wasn't checked for a negative return value for an
      interrupted read.  The kernel  sys_read()  returns -EINTR, and the "library" 
      layer maps that to return value of -1 and sets  errno  to EINTR.  It's 
      impossible (on Linux) for  read()  to set errno EINTR without the return 
      value being -1 .
      
      So, if we're checking for EINTR behavior, we should not require that the
      return value be zero.
      
      
      mysys/my_read.c:
        The read() syscall should check for negative one, since that (usually) signals
        errors (like being interrupted) and zero (usually) signals end-of-file .
      e7543550
  17. 29 Aug, 2006 1 commit
    • unknown's avatar
      Bug#14400 - Query joins wrong rows from table which is · f6e56224
      unknown authored
                  subject of "concurrent insert"
      Better fix by Monty: "The previous bug fix didn't work
      when using partial keys."
      
      
      mysql-test/r/myisam.result:
        Bug#14400 - Query joins wrong rows from table which is
                    subject of "concurrent insert"
        Added test result
      mysql-test/t/myisam.test:
        Bug#14400 - Query joins wrong rows from table which is
                    subject of "concurrent insert"
        Added test case
      f6e56224
  18. 10 Aug, 2006 1 commit
    • unknown's avatar
      Better bug fix for #14400 "Query joins wrong rows from table which is subject... · 1e9ede93
      unknown authored
      Better bug fix for #14400 "Query joins wrong rows from table which is subject of "concurrent insert""
      The previous bug fix didn't work when using partial keys.
      Don't use GNUC min/max operations are they are depricated.
      Fixed valgrind warning
      
      
      BitKeeper/etc/ignore:
        Added */.libs/*
      include/my_global.h:
        Don't use GNUC min/max operations are they are depricated
      myisam/mi_rkey.c:
        Better bug fix for #14400 "Query joins wrong rows from table which is subject of "concurrent insert""
        The previous bug fix didn't work when using partial keys.
      myisam/mi_test_all.res:
        Updated results to match mi_test_all.sh
      myisam/mi_test_all.sh:
        Removed confusing warning
      mysql-test/r/myisam.result:
        Added test case for #14400
      mysql-test/t/myisam.test:
        Added test case for #14400
      sql/sql_select.cc:
        Fixed valgrind warning (in field_string::val_int())
      1e9ede93
  19. 29 Jul, 2006 1 commit
    • unknown's avatar
      configure.in: · 7991d78a
      unknown authored
        Corrected typo
      
      
      configure.in:
        Corrected typo
      7991d78a
  20. 28 Jul, 2006 3 commits
    • unknown's avatar
      Makefile.am, configure.in: · 4f0c394c
      unknown authored
        Man page for mysqld command move to section 8 (bug#21220)
      
      
      configure.in:
        Man page for mysqld command move to section 8 (bug#21220)
      man/Makefile.am:
        Man page for mysqld command move to section 8 (bug#21220)
      4f0c394c
    • unknown's avatar
      make_binary_distribution.sh: · 3423142a
      unknown authored
        Man page for "mysqld" command move to section 8 (bug#21220)
      
      
      scripts/make_binary_distribution.sh:
        Man page for "mysqld" command move to section 8 (bug#21220)
      3423142a
    • unknown's avatar
      mysql.spec.sh: · 00c97fe0
      unknown authored
        Man page for "mysqld" command move to section 8 (bug#21220)
      
      
      support-files/mysql.spec.sh:
        Man page for "mysqld" command move to section 8 (bug#21220)
      00c97fe0
  21. 26 Jul, 2006 1 commit
  22. 24 Jul, 2006 1 commit
    • unknown's avatar
      mwasmnlm, mwccnlm, mwldnlm: · 9ffa9d68
      unknown authored
        Filter out strange control characters, messes up logs
      
      
      netware/BUILD/mwasmnlm:
        Filter out strange control characters, messes up logs
      netware/BUILD/mwccnlm:
        Filter out strange control characters, messes up logs
      netware/BUILD/mwldnlm:
        Filter out strange control characters, messes up logs
      9ffa9d68
  23. 21 Jul, 2006 1 commit
    • unknown's avatar
      Bug#20719 - Reading dynamic records with write buffer could fail · 11cee384
      unknown authored
      Fixed a possible problem with reading of dynamic records
      when a write cache is active. The cache must be flushed
      whenever a part of the file in the write cache is to be 
      read.
      
      Added a read optimization to _mi_read_dynamic_record().
      
      No test case. This was a hypothetical but existing problem.
      
      
      myisam/mi_dynrec.c:
        Bug#20719 - Reading dynamic records with write buffer could fail
        
        Fixed a possible problem with reading of dynamic records
        when a write cache is active. The cache must be flushed
        whenever a part of the file in the write cache is to be 
        read. This must be done before the read of the header
        and before the read of the rest block.
        
        Renamed the 'flag' and 'skipp_deleted_blocks' variables.
        
        Added a read optimization to _mi_read_dynamic_record()
        that was present in _mi_read_rnd_dynamic_record() already.
        After _mi_get_block_info() we have some bytes of the record
        in the header buffer already. No need to read them again.
      11cee384
  24. 08 Jul, 2006 1 commit
  25. 07 Jul, 2006 2 commits
  26. 05 Jul, 2006 1 commit
  27. 01 Jul, 2006 1 commit
    • unknown's avatar
      Bug#19006: 4.0 valgrind problems (in test func_str) · ed3fc505
      unknown authored
      On exactly-sized Strings, the String::c_ptr() function peeked beyond the
      end of the buffer, possibly into unititialized space to see whether the 
      buffer was NUL-terminated.
      
      In a place that did peek improperly, we now use a c_ptr_safe() function, 
      which doesn't peek where it shouldn't.
      
      
      client/sql_string.h:
        Back-port String::c_ptr_safe().
      sql/item_func.h:
        Describe side-effect behavior.
      sql/item_strfunc.cc:
        Use the "_safe" version of c_ptr to avoid looking for a terminating 
        NUL character outside the initialized memory area.  Valgrind hates it 
        when one does that, and it theoretically could lead to a SEGV.
      sql/sql_string.h:
        Back-port String::c_ptr_safe().
      ed3fc505
  28. 28 Jun, 2006 1 commit
    • unknown's avatar
      Bug#14400 - Query joins wrong rows from table which is subject of "concurrent insert" · 51f57776
      unknown authored
      It was possible that fetching a record by an exact key value 
      (including the record pointer) could return a record with a 
      different key value. This happened only if a concurrent insert 
      added a record with the searched key value after the fetching 
      statement locked the table for read.
      
      The search succeded on the key value, but the record was
      rejected as it was past the file length that was remembered
      at start of the fetching statement. With other words it was 
      rejected as being a concurrently inserted record.
      
      The action to recover from this problem was to fetch the 
      record that is pointed at by the next key of the index. 
      This was repeated until a record below the file length was 
      found.
      
      I do now avoid this loop if an exact match was searched. 
      If this match is beyond the file length, it is now treated 
      as "key not found". There cannot be another key with the 
      same record pointer.
      
      
      myisam/mi_rkey.c:
        Bug#14400 - Query joins wrong rows from table which is subject of "concurrent insert"
        Added a check for exact key match before searching for
        the next key that was not concurrently inserted. If an
        exact key match finds a concurrently inserted row, this
        must be treated as "key not found".
      sql/sql_class.cc:
        Bug#14400 - Query joins wrong rows from table which is subject of "concurrent insert"
        Fixed some DBUG_ENTER strings.
      51f57776
  29. 27 Jun, 2006 1 commit
  30. 26 Jun, 2006 1 commit
    • unknown's avatar
      make_sharedlib_distribution.sh: · abffdb65
      unknown authored
        For compatibility, don't use {..,..} in pattern matching
      make_binary_distribution.sh:
        Added .dylib and .sl as shared library extensions
      
      
      scripts/make_binary_distribution.sh:
        Added .dylib and .sl as shared library extensions
      scripts/make_sharedlib_distribution.sh:
        For compatibility, don't use {..,..} in pattern matching
      abffdb65
  31. 13 Jun, 2006 1 commit
    • unknown's avatar
      Fix for bug #12728: Very strange behaviour of ELT · b5550d55
      unknown authored
      
      mysql-test/r/func_str.result:
        Fix for bug #12728: Very strange behaviour of ELT
          - test case
      mysql-test/t/func_str.test:
        Fix for bug #12728: Very strange behaviour of ELT
          - test result
      sql/item_strfunc.cc:
        Fix for bug #12728: Very strange behaviour of ELT
          - Item_func_elt::eq() introduced: check 'item' member as well
            (to distinguish for instance elt(1, 'a', 'b') and elt(2, 'a', 'b')
      sql/item_strfunc.h:
        Fix for bug #12728: Very strange behaviour of ELT
          - Item_func_elt::eq() introduced: check 'item' member as well
            (to distinguish for instance elt(1, 'a', 'b') and elt(2, 'a', 'b')
      b5550d55
  32. 20 May, 2006 1 commit
    • unknown's avatar
      mysql.spec.sh: · 16b027ee
      unknown authored
        Always compile position independent
      
      
      support-files/mysql.spec.sh:
        Always compile position independent
      16b027ee
  33. 12 May, 2006 1 commit
    • unknown's avatar
      Many files: · 9d0bbc11
      unknown authored
        Change mode to -rw-rw-r--
      dbug_add_tags.pl:
        Change mode to -rwxrwxr--
      
      
      dbug/dbug_add_tags.pl:
        Change mode to -rwxrwxr--
      myisammrg/myrg_range.c:
        Change mode to -rw-rw-r--
      mysql-test/r/innodb_handler.result:
        Change mode to -rw-rw-r--
      mysql-test/r/repair.result:
        Change mode to -rw-rw-r--
      mysql-test/std_data/master-bin.001:
        Change mode to -rw-rw-r--
      mysql-test/std_data/trunc_binlog.001:
        Change mode to -rw-rw-r--
      mysql-test/t/bulk_replace.test:
        Change mode to -rw-rw-r--
      mysql-test/t/create_select_tmp.test:
        Change mode to -rw-rw-r--
      mysql-test/t/ctype_tis620.test:
        Change mode to -rw-rw-r--
      mysql-test/t/handler.test:
        Change mode to -rw-rw-r--
      mysql-test/t/innodb_handler.test:
        Change mode to -rw-rw-r--
      mysql-test/t/mix_innodb_myisam_binlog-master.opt:
        Change mode to -rw-rw-r--
      mysql-test/t/repair.test:
        Change mode to -rw-rw-r--
      mysql-test/t/rpl_commit_after_flush.test:
        Change mode to -rw-rw-r--
      mysql-test/t/rpl_free_items-slave.opt:
        Change mode to -rw-rw-r--
      mysql-test/t/rpl_free_items.test:
        Change mode to -rw-rw-r--
      scripts/mysql_secure_installation.sh:
        Change mode to -rw-rw-r--
      sql/sql_handler.cc:
        Change mode to -rw-rw-r--
      support-files/mysql-multi.server.sh:
        Change mode to -rw-rw-r--
      9d0bbc11
  34. 11 May, 2006 1 commit
    • unknown's avatar
      configure.in: · d0d6f1a0
      unknown authored
        Stepped up to 4.0.28
      
      
      configure.in:
        Stepped up to 4.0.28
      d0d6f1a0