Commit graph

350 commits

Author SHA1 Message Date
marko@hundin.mysql.fi
bf30733840 Merge hundin.mysql.fi:/home/marko/mysql-4.0
into  hundin.mysql.fi:/home/marko/mysql-4.1
(Bug #13002)
2005-10-03 17:54:39 +03:00
marko@hundin.mysql.fi
d62b9f4b4b InnoDB: Display an error message in /* */ comments
in SHOW CREATE TABLE if a temporary file cannot be created.
(Bug #13002)
2005-10-03 17:46:27 +03:00
marko@hundin.mysql.fi
17b0098127 InnoDB: After review fix 2005-09-30 15:06:41 +03:00
marko@hundin.mysql.fi
8c1ccbc903 InnoDB: On UPDATE, trim UCS2 columns correctly. (Bug #12178) 2005-09-30 13:58:00 +03:00
jan@hundin.mysql.fi
dc80450410 Fixed a bug checksum table locks the InnoDB table and does not use a
consistent read (Bug #12669).
2005-09-28 14:14:49 +03:00
heikki@hundin.mysql.fi
183feee465 ha_innodb.cc:
Fix bug #12410 : InnoDB was too permissive with LOCK TABLE ... READ LOCAL, and alowed new inserts to the table; we now make READ LOCAL equivalent to READ for InnoDB; note that this will cause slightly more locking in mysqldump, but makes the InnoDB table dumps consistent with MyISAM table dumps; note that the real code change patch was accidentally pushed with my another patch 5 minutes ago
2005-08-31 14:27:44 +03:00
heikki@hundin.mysql.fi
9aa5a86a80 ha_innodb.cc:
Fix bug #12852 : do not increment the open handle count to a table if the table does not have an .ibd file and InnoDB decides to return an error from the ::open() function; then the table can be dropped even if the user has tried to open it
2005-08-31 14:17:05 +03:00
heikki@hundin.mysql.fi
2310ef6938 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into  hundin.mysql.fi:/home/heikki/mysql-4.1
2005-08-24 17:30:25 +03:00
heikki@hundin.mysql.fi
9f72d504b4 ha_innodb.cc:
Fix bug #12779 : never give a row count estimate of 0 to the MySQL query optimizer, as then left join optimizer may beleive it KNOWS that the table is empty; note that this fix may change query optimization of many other queries where one table is empty; note that the proper fix would be to make the query optimizer to know that the row count estimates it receives really are just estimates, it cannot assume they are certain
2005-08-24 17:27:46 +03:00
heikki@hundin.mysql.fi
353b3a2cad ha_innodb.cc:
Fix compilation error in previous commit
2005-08-03 18:47:50 +03:00
heikki@hundin.mysql.fi
c9c6b82404 ha_innodb.cc:
Backport of Bug #9670 to 4.0: assertion failure in ut_a(cursor->old_stored == BTR_PCUR_OLD_STORED)
2005-08-03 18:11:55 +03:00
serg@serg.mylan
6a5349028c a compiler must see '#pragma implementation' *before*
'#pragma interface' (that comes with the #include'd header file)
2005-06-05 19:38:52 +02:00
monty@mysql.com
29fd1f2fd9 Move USE_PRAGMA_IMPLEMENTATION to proper place
Ensure that 'null_value' is not accessed before val() is called in FIELD() functions
Fixed initialization of key maps. This fixes some problems with keys when you have more than 64 keys
Fixed that ROLLUP don't always create a temporary table. This fix ensures that func_gconcat.test results are now predictable
2005-06-03 23:46:03 +03:00
kent@mysql.com
bd48eed988 tztime.cc:
Set #pragma implementation" earlier
Many files:
  Need to include <my_global.h> before #ifdef USE_PRAGMA_IMPLEMENTATION
2005-06-02 02:43:32 +02:00
serg@serg.mylan
324c20d41c Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2005-05-27 12:48:36 +02:00
serg@serg.mylan
d21b8d1077 don't downgrade the lock for CREATE ... SELECT (bug#6678) 2005-05-27 12:38:29 +02:00
msvensson@neptunus.(none)
83d430353e Add ifdefs to control when "#pragma implementation" should be used
Added some more ifdefs for "#pragma interface"
2005-05-26 12:09:14 +02:00
marko@hundin.mysql.fi
f9e7e2ee90 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/mysql-4.1
2005-05-06 10:15:58 +03:00
jan@hundin.mysql.fi
71f620890c Fig compiler error. 2005-05-05 08:08:39 +03:00
jan@hundin.mysql.fi
91640e9d60 Initial value for a auto_increment can now be set using ALTER TABLE
AUTO_INCREMENT = X; or CREATE TABLE .. AUTO_INCREMENT = X; This
change is backported from 5.0 (Bug #7061).
2005-05-04 12:24:56 +03:00
jan@hundin.mysql.fi
138a1a9b1d Fixed a bug using mysqldump to InnoDB tables causes error (Bug #10200). 2005-04-27 12:28:25 +03:00
marko@hundin.mysql.fi
f9d145ef04 InnoDB: Truncate SHOW INNODB STATUS output at the start of the list
of active transactions, if necessary and possible.  (Bug #5436)
2005-04-19 14:35:47 +03:00
jan@hundin.mysql.fi
1f994ec920 Style change. Use 1 and 0 instead of true and false. 2005-04-19 08:23:03 +03:00
jan@hundin.mysql.fi
384efc4493 Fixed a bug: deadlock without any locking, simple select and update (Bug #7975).
Backported from 5.0.3.
2005-04-18 12:17:32 +03:00
heikki@hundin.mysql.fi
b698b8620e ha_innodb.cc:
Fix part of bug #9670: if MySQL calls ::store_lock with TL_IGNORE, do not change prebuilt->select_lock_type; this fix may heal the assertion failures reported in UPDATE and multi-table UPDATE; it is not clear if this fixes the problems in OPTIMIZE TABLE
2005-04-13 20:21:28 +03:00
marko@hundin.mysql.fi
d5646eb6c5 InnoDB: Ignore character set mismatch in ALTER TABLE and RENAME TABLE
if foreign_key_checks=0. (Bug #9802)
2005-04-12 16:12:34 +03:00
marko@hundin.mysql.fi
b5328a7dbc InnoDB: Prevent ALTER TABLE ... ENGINE=...
if there are foreign key constraints on the table. (Bug #5574)
2005-04-07 12:16:41 +03:00
heikki@hundin.mysql.fi
73a8d1bcad ha_innodb.cc:
Correct the fix of Bug #9526 : InnoDB must use its own internal type info for old tables, so that old ENUMs and SETs still are (incorrectly) seen as char strings; we do not dare to allow InnoDB sometimes to see the type as an integer type for those old tables
2005-04-04 19:41:52 +03:00
heikki@hundin.mysql.fi
63aa88638a ha_innodb.cc:
Fix bug #9526 in InnoDB: the internal type of an ENUM or SET is an unsigned integer type, not a character string
2005-04-04 19:27:28 +03:00
marko@hundin.mysql.fi
a8aced1e64 ha_innodb.cc:
write_row(): Detect SQLCOM_OPTIMIZE, so that also OPTIMIZE TABLE
  will commit at every 10,000 copied rows.
2005-03-04 15:53:05 +02:00
marko@hundin.mysql.fi
af2999b753 InnoDB: Commit inserts to the temporary tables created by
CREATE INDEX and DROP INDEX every 10,000 rows,
similar to ALTER TABLE.
2005-03-01 16:09:22 +02:00
marko@hundin.mysql.fi
df0aee432a Merge hundin.mysql.fi:/home/marko/k/mysql-4.0
into hundin.mysql.fi:/home/marko/mysql-4.1
2005-02-15 16:12:51 +02:00
marko@hundin.mysql.fi
a1a78bbc4a InnoDB: Create temporary files in the MySQL tmpdir instead of $TMPDIR.
(Bug #5822)
2005-02-15 11:16:17 +02:00
jan@hundin.mysql.fi
fcfc1d8f29 Relaxed locking in INSERT...SELECT, single table UPDATE...SELECT and
single table DELETE...SELECT clauses when innobase_locks_unsafe_for_binlog
is used and isolation level of the transaction is not serializable. 
InnoDB uses consistent read in these cases for a selected table.
Backported from 5.0.x.
2005-02-08 09:36:36 +02:00
marko@hundin.mysql.fi
dabb56a7cb After merge fixes 2005-02-01 10:24:09 +02:00
marko@hundin.mysql.fi
4117949ace InnoDB: Tolerate negative return values from ftell(). 2005-01-27 14:05:44 +02:00
marko@hundin.mysql.fi
080869f995 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/k/mysql-4.1
2005-01-14 15:23:34 +02:00
heikki@hundin.mysql.fi
21666e4207 ha_innodb.cc:
Merge from 4.0:     Fix a theoretical hang over the adaptive hash latch in InnoDB if one runs INSERT ... SELECT ... (binlog not enabled), or a multi-table UPDATE or DELETE, and only the read tables are InnoDB type, the rest are MyISAM; this also fixes bug #7879 for InnoDB type tables
2005-01-13 20:08:28 +02:00
heikki@hundin.mysql.fi
76789a4c13 ha_innodb.cc:
Fix a theoretical hang over the adaptive hash latch in InnoDB if one runs INSERT ... SELECT ... (binlog not enabled), or a multi-table UPDATE or DELETE, and only the read tables are InnoDB type, the rest are MyISAM; this also fixes bug #7879 for InnoDB type tables
2005-01-13 19:20:49 +02:00
marko@hundin.mysql.fi
69afdf53c7 InnoDB: Use system-supplied tmpfile() on Netware, as there is no
open interface for setting the "delete-on-close" flag.
2005-01-12 15:24:49 +02:00
marko@hundin.mysql.fi
6289469e97 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/k/mysql-4.1
2005-01-12 14:08:25 +02:00
heikki@hundin.mysql.fi
cf4a055285 ha_innodb.cc:
Return a sensible error code from DISCARD TABLESPACE, if it fails because the table is referenced by a FOREIGN KEY
2004-12-27 04:40:10 +02:00
heikki@hundin.mysql.fi
10a246e453 ha_innodb.cc, row0ins.c, fil0fil.c:
Correct typo
2004-12-27 04:27:09 +02:00
heikki@hundin.mysql.fi
7ad5e20461 Many files:
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
2004-12-27 04:10:25 +02:00
heikki@hundin.mysql.fi
64f36c94d1 ha_innodb.cc:
Add a comment that no InnoDB table lock is now acquired in LOCK TABLES if AUTOCOMMIT=1. This helps to avoid deadlocks when porting old MyISAM applications to InnoDB.
2004-12-22 11:11:16 +02:00
heikki@hundin.mysql.fi
73f61e9d15 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1
2004-12-22 11:09:09 +02:00
heikki@hundin.mysql.fi
917e8b4da3 ha_innodb.cc:
If AUTOCOMMIT=1, do not acquire an InnoDB table lock in LOCK TABLES; this makes porting of old MyISAM applications to InnoDB easier, since in that mode InnoDB table locks caused deadlocks very easily
2004-12-22 11:01:25 +02:00
marko@hundin.mysql.fi
e2f9201041 InnoDB: Fixed bugs in the padding and trimming of trailing spaces
that affected the UCS2 character set. (Bug #7350)
2004-12-17 18:35:11 +02:00
heikki@hundin.mysql.fi
ea6b5e117a dict0dict.h, dict0dict.c, ha_innodb.cc:
Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8
2004-12-10 17:12:47 +02:00
marko@hundin.mysql.fi
a35a93aa3c InnoDB: Allow ALTER TABLE to do intermediate COMMIT also when the table
contains auto_increment columns.  (Bug #6633)
2004-11-30 17:34:37 +02:00