1. 27 Dec, 2004 6 commits
    • unknown's avatar
      sql_table.cc: · b5709217
      unknown authored
        Return a sensible error code from DISCARD TABLESPACE, if it fails because the table is referenced by a FOREIGN KEY
      
      
      sql/sql_table.cc:
        Return a sensible error code from DISCARD TABLESPACE, if it fails because the table is referenced by a FOREIGN KEY
      b5709217
    • unknown's avatar
      ha_innodb.cc: · 7e62daa8
      unknown authored
        Return a sensible error code from DISCARD TABLESPACE, if it fails because the table is referenced by a FOREIGN KEY
      
      
      sql/ha_innodb.cc:
        Return a sensible error code from DISCARD TABLESPACE, if it fails because the table is referenced by a FOREIGN KEY
      7e62daa8
    • unknown's avatar
      row0mysql.c: · 547dfa55
      unknown authored
        Fix typo
      
      
      innobase/row/row0mysql.c:
        Fix typo
      547dfa55
    • unknown's avatar
      ha_innodb.cc, row0ins.c, fil0fil.c: · 0949f9c3
      unknown authored
        Correct typo
      
      
      innobase/fil/fil0fil.c:
        Correct typo
      innobase/row/row0ins.c:
        Correct typo
      sql/ha_innodb.cc:
        Correct typo
      0949f9c3
    • unknown's avatar
      Merge heikki@bk-internal.mysql.com:/home/bk/mysql-4.1 · 35494b6b
      unknown authored
      into hundin.mysql.fi:/home/heikki/mysql-4.1
      
      35494b6b
    • unknown's avatar
      Many files: · b24e3fdb
      unknown authored
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      
      
      innobase/buf/buf0rea.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/include/dict0load.h:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/include/fil0fil.h:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/include/row0mysql.h:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/include/trx0trx.h:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/dict/dict0load.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/fil/fil0fil.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/row/row0ins.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/row/row0mysql.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/row/row0sel.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/srv/srv0start.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      innobase/trx/trx0trx.c:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      sql/ha_innodb.cc:
        Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
      b24e3fdb
  2. 26 Dec, 2004 3 commits
    • unknown's avatar
      Merge rurik.mysql.com:/home/igor/mysql-4.1 · 4a2a2455
      unknown authored
      into rurik.mysql.com:/home/igor/dev/mysql-4.1-0
      
      4a2a2455
    • unknown's avatar
      subselect.result, subselect.test: · f7a1b440
      unknown authored
        Added a couple of new test cases for bug #7351.
      
      
      mysql-test/t/subselect.test:
        Added a couple of new test cases for bug #7351.
      mysql-test/r/subselect.result:
        Added a couple of new test cases for bug #7351.
      f7a1b440
    • unknown's avatar
      subselect.result, subselect.test: · 25372c99
      unknown authored
        Added test cases for bug #7351.
      item_cmpfunc.cc:
        Fixed bug #7351: incorrect result for a query with a
        subquery returning empty set.
        If in the predicate v IN (SELECT a FROM t WHERE cond)
        v is null, then the result of the predicate is either
        INKNOWN or FALSE. It is FALSE if the subquery returns
        an empty set.
      item_subselect.cc:
        Fixed bug #7351: incorrect result for a query with a
        subquery returning empty set.
        The problem was due to not a quite legal transformation
        for 'IN' subqueries. A subquery containing a predicate
        of the form
        v IN (SELECT a FROM t WHERE cond)
        was transformed into
        EXISTS(SELECT a FROM t WHERE cond AND (a=v OR a IS NULL)).
        Yet, this transformation is valid only if v is not null.
        If v is null, then, in the case when
        (SELECT a FROM t WHERE cond) returns an empty set the value
        of the predicate is FALSE, otherwise the result of the
        predicate is INKNOWN.
        The fix resolves this problem by changing the result
        of the transformation to
        EXISTS(SELECT a FROM t WHERE cond AND (v IS NULL OR (a=v OR a IS NULL)))
        in the case when v is nullable.
        The new transformation prevents applying the lookup
        optimization for IN subqueries. To make it still
        applicable we have to introduce guarded access methods.
      
      
      sql/item_subselect.cc:
        Fixed bug #7351: incorrect result for a query with a
        subquery returning empty set.
        The problem was due to not a quite legal transformation
        for 'IN' subqueries. A subquery containing a predicate
        of the form
        v IN (SELECT a FROM t WHERE cond)
        was transformed into
        EXISTS(SELECT a FROM t WHERE cond AND (a=v OR a IS NULL)).
        Yet, this transformation is valid only if v is not null.
        If v is null, then, in the case when
        (SELECT a FROM t WHERE cond) returns an empty set the value
        of the predicate is FALSE, otherwise the result of the
        predicate is INKNOWN.
        The fix resolves this problem by changing the result
        of the transformation to
        EXISTS(SELECT a FROM t WHERE cond AND (v IS NULL OR (a=v OR a IS NULL)))
        in the case when v is nullable.
        The new transformation prevents applying the lookup
        optimization for IN subqueries. To make it still
        applicable we have to introduce guarded access methods.
      sql/item_cmpfunc.cc:
        Fixed bug #7351: incorrect result for a query with a
        subquery returning empty set.
        If in the predicate v IN (SELECT a FROM t WHERE cond)
        v is null, then the result of the predicate is either
        INKNOWN or FALSE. It is FALSE if the subquery returns
        an empty set.
      mysql-test/t/subselect.test:
        Added test cases for bug #7351.
      mysql-test/r/subselect.result:
        Added test cases for bug #7351.
      25372c99
  3. 24 Dec, 2004 4 commits
  4. 23 Dec, 2004 10 commits
  5. 22 Dec, 2004 17 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1/ · 82650ab1
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-4.1
      
      82650ab1
    • unknown's avatar
      BitKeeper/triggers/pre-delta · 34321ede
      unknown authored
          don't checkin for Administrator or mysqldev
      sql/log.cc@1.157
          restored a bugfix that was lost in a merge
      
      
      sql/log.cc:
        restored a bugfix that was lost in a merge
      BitKeeper/triggers/pre-delta:
        don't commit for Administrator or mysqldev
      34321ede
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · 87c24748
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
      
      87c24748
    • unknown's avatar
      fixed so that last repeats are printed first with correct time if another message comes · 931aba11
      unknown authored
      decided for fixed size buffers in LogHandler repeated messages
      
      
      mysql-test/ndb/basic.result:
        updated ndb test
      ndb/include/logger/LogHandler.hpp:
        decided for fixed size buffers
      ndb/include/logger/Logger.hpp:
        decided for fixed size buffers
      ndb/src/common/logger/LogHandler.cpp:
        decided for fixed size buffers
      ndb/src/common/logger/Logger.cpp:
        decided for fixed size buffers
      931aba11
    • unknown's avatar
      A fix for the bug #7495 · 049c3fb1
      unknown authored
      
      mysql-test/r/func_str.result:
        A result for test case for the bug #7495 involving either LTRIM() 
        or TRIM() within QUOTE() function.
      mysql-test/t/func_str.test:
        A test case for the bug #7495 involving either LTRIM() or TRIM() 
        within QUOTE() function.
      sql/item_strfunc.cc:
        Changes for LTRIM() and TRIM() functions that aleviate the bug  
        entirely.
      049c3fb1
    • unknown's avatar
      added handling of repeated messages · 00bfc1e8
      unknown authored
      
      ndb/src/common/transporter/Transporter.hpp:
        fixed small error
      00bfc1e8
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 5a5465e7
      unknown authored
      into mysql.com:/home/dlenev/src/mysql-4.1-smfix
      
      5a5465e7
    • unknown's avatar
      Fix for bug #7458 "Microseconds are gobbled from the string result of · 3d88fdf7
      unknown authored
      STR_TO_DATE() function if there is another format specifier after %f 
      in format string". Also small cleanup of STR_TO_DATE() implementation.
      (After review version.)
      
      
      mysql-test/r/date_formats.result:
        Added test for small bug in STR_TO_DATE() implementation which caused
        microseconds to be gobbled from string result of this function, if
        there was another specifier after %f in format string.
      mysql-test/t/date_formats.test:
        Added test for small bug in STR_TO_DATE() implementation which caused
        microseconds to be gobbled from string result of this function, if
        there was another specifier after %f in format string.
      sql/item_timefunc.cc:
        Small cleanup of str_to_date() implementation.
          Renamed check_result_type() to less ambigous get_date_time_result_type()
          and made it static. Also added handling of %X,%x,%V,%v to this function.
          Fixed small bug in it which caused microseconds to be gobbled if there
          was some other specifiers after %f.
          Cleaned up comments a bit.
      3d88fdf7
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · a778e9cd
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
      
      a778e9cd
    • unknown's avatar
      changed name of g_eventLogger so it can be used in TransporterRegistry and is... · d5711a28
      unknown authored
      changed name of g_eventLogger so it can be used in TransporterRegistry and is the same as in the kernel
      
      
      ndb/include/ndbapi/ndb_cluster_connection.hpp:
        changed return type of no_ndb_nodes
      ndb/include/transporter/TransporterRegistry.hpp:
        added connect_server method to TransporterRegistry
      ndb/include/util/ndb_opts.h:
        set shared memory usage as _no_ default in 4.1
      ndb/src/common/transporter/Makefile.am:
        added -I flags for EventLogger.hpp
      ndb/src/common/transporter/SCI_Transporter.cpp:
        setting transporter type
      ndb/src/common/transporter/SHM_Transporter.cpp:
        setting transporter type
      ndb/src/common/transporter/TCP_Transporter.cpp:
        setting transporter type
      ndb/src/common/transporter/Transporter.cpp:
        added event logger
        added type handling in transporter
        added verification of transporter type compatability
      ndb/src/common/transporter/Transporter.hpp:
        setting transporter type
      ndb/src/common/transporter/TransporterRegistry.cpp:
        moved server-client transporter negotiation to own method connect_server()
        added verification of transporter compatability
      ndb/src/kernel/main.cpp:
        changed which events are logged
      ndb/src/ndbapi/ndb_cluster_connection.cpp:
        added g_eventLogger
      sql/mysqld.cc:
        set shared memory usage as _no_ default in 4.1
      d5711a28
    • unknown's avatar
    • unknown's avatar
      Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-4.1 · e38dbe4b
      unknown authored
      into mysql.com:/space/pekka/ndb/version/my41
      
      e38dbe4b
    • unknown's avatar
      ndb: use Ndb_cluster_connection in test* · 1735e566
      unknown authored
      
      ndb/test/ndbapi/testBlobs.cpp:
        use Ndb_cluster_connection
      ndb/test/ndbapi/testOIBasic.cpp:
        use Ndb_cluster_connection
      1735e566
    • unknown's avatar
      Merge joreland@bk-internal.mysql.com:/home/bk/mysql-4.1 · 3a5065fd
      unknown authored
      into mysql.com:/home/jonas/src/mysql-4.1
      
      3a5065fd
    • unknown's avatar
      ndb - Fix bug in backward compatility code (for our test programs) · 0b86432f
      unknown authored
      
      ndb/src/ndbapi/Ndbinit.cpp:
        Fix bug in backward compatility code (for our test programs)
      0b86432f
    • unknown's avatar
      Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-4.1 · 08bbeeef
      unknown authored
      into mysql.com:/space/pekka/ndb/version/my41
      
      
      ndb/src/ndbapi/NdbConnection.cpp:
        Auto merged
      08bbeeef
    • unknown's avatar
      ndb: bug#7340 fix · ecf707c0
      unknown authored
      
      mysql-test/r/ndb_blob.result:
        bug#7340 fix
      mysql-test/t/ndb_blob.test:
        bug#7340 fix
      ndb/src/ndbapi/NdbConnection.cpp:
        bug#7340 fix
      ndb/src/ndbapi/NdbOperationDefine.cpp:
        bug#7340 fix
      ecf707c0