1
0
mirror of https://github.com/MariaDB/server.git synced 2025-06-03 07:02:23 +03:00

154 Commits

Author SHA1 Message Date
aivanov@mysql.com
21f23fb76f Applied innodb-4.1-ss31 snapshot.
Fixed BUG#19727 "InnoDB crashed server and crashed tables
 are not recoverable".
2006-06-06 23:05:10 +04:00
aivanov@mysql.com
b758353735 Applied innodb-4.1-ss22 snapshot.
Fix BUG#16814: "SHOW INNODB STATUS format error in LATEST FOREIGN KEY ERROR section"
     Add a missing newline to the LAST FOREIGN KEY ERROR section in SHOW INNODB STATUS
     output.
 Fix BUG#18934: "InnoDB crashes when table uses column names like DB_ROW_ID".
     Refuse tables that use reserved column names.
2006-04-20 23:09:49 +04:00
aivanov@mysql.com
7ae2d46903 Fix BUG#12071: "Windows hang: 'Opening tables' or 'Waiting for
table' lockup".
 Changes from the innodb-4.1-ss11 snapshot.
 Do not call os_file-create_tmpfile() at runtime. Instead, create
 a tempfile at startup and guard access to it with a mutex.
 Also, fix bugs:
 10511: "Wrong padding of UCS2 CHAR columns in ON UPDATE CASCADE";
 13778: "If FOREIGN_KEY_CHECKS=0, one can create inconsistent FOREIGN
 KEYs". When FOREIGN_KEY_CHECKS=0 we still need to check that
 datatypes between foreign key references are compatible.
 Also, added test cases (also for bug 9802).
2005-12-12 21:06:59 +03:00
marko@hundin.mysql.fi
5d0bc0b482 Merge hundin.mysql.fi:/home/marko/k/mysql-4.0
into hundin.mysql.fi:/home/marko/mysql-4.1
2005-05-26 15:57:24 +03:00
marko@hundin.mysql.fi
2d5b96798f InnoDB: Check all referencing tables in DROP DATABASE (Bug #10335). 2005-05-26 15:42:24 +03:00
heikki@hundin.mysql.fi
d4bbdad2f6 row0mysql.c:
InnoDB wrongly complained in the .err log that MySQL is trying to drop a non-existent table, if tablespace ran out (Bug #10607)
2005-05-13 18:37:22 +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
38adb1ba79 InnoDB: Portability fixes for warnings reported on IA-64 Windows 2005-03-07 12:03:33 +02:00
heikki@hundin.mysql.fi
961d8b0ebf Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1
2005-02-13 21:05:18 +02:00
heikki@hundin.mysql.fi
548f7dbada row0mysql.c:
Backport the column prefix memory corruption fix from 5.0
2005-02-13 21:00:07 +02:00
heikki@hundin.mysql.fi
2f9c038ecf row0mysql.c:
Manually merge the latest FOREIGN KEY lock wait + DROP TABLE fix from 4.0
2004-12-27 21:22:06 +02:00
heikki@hundin.mysql.fi
72d446ace5 row0mysql.c:
Fix the previous bug fix: dropping a table with FOREIGN KEY checks running on it caused a cascade of failed drops while the foreign key check was waiting for a lock
2004-12-27 20:06:40 +02:00
heikki@hundin.mysql.fi
2ca0c44fe3 row0mysql.c:
Merge the two FOREIGN KEY bug fixes from 4.0, and add a TODO comment
2004-12-27 17:28:17 +02:00
heikki@hundin.mysql.fi
3595bcd72e Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1
2004-12-27 17:19:27 +02:00
heikki@hundin.mysql.fi
b8d576d087 row0ins.c:
Fix bug: if we dropped a table where an INSERT was waiting for a lock to check a FOREIGN KEY constraint, then an assertion would fail in lock_reset_all_on_table(), since that operation assumes no waiting locks on the table or its records
row0mysql.c:
  Fix bug: InnoDB failed to drop a table in the background drop queue if the table was referenced by a foreign key constraint
2004-12-27 17:15:38 +02:00
heikki@hundin.mysql.fi
0aa1815bd1 row0mysql.c:
Fix typo
2004-12-27 04:32:37 +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
marko@hundin.mysql.fi
2e7cb4d011 InnoDB: Make intermediate COMMITs in ALTER TABLE more robust (Bug #6633) 2004-11-27 00:45:01 +02:00
heikki@hundin.mysql.fi
ccec75f9af Many files:
Fix bug #6817 and bug #6827 : do not crash the server if the buffer pool becomes filled by the locks of ONE huge transaction, return error 1206 instead; do not crash the server, but return error if we cannot allocate memory for the buffer pool at a mysqld startup
2004-11-26 00:12:50 +02:00
marko@hundin.mysql.fi
21b9be3a19 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/j/mysql-4.1
2004-11-04 18:25:48 +02:00
marko@hundin.mysql.fi
fd069e2bb3 InnoDB: commit after every 10000 rows in ALTER TABLE 2004-11-03 21:32:48 +02:00
monty@mysql.com
9972d68078 merge with 4.0 2004-11-02 08:58:45 +02:00
heikki@hundin.mysql.fi
d22a24d871 row0mysql.c, pars0pars.c, eval0eval.c, dict0load.c, dict0dict.c, dict0crea.c:
Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it
dict0dict.c:
  Fix bug #3478: InnoDB's FOREIGN KEY tables treated table and database names as case-insensitive; RENAME TABLE t to T would hang in an endless loop if t had a foreign key constraint defined on it; fix also a hang that would occur if one tried in ALTER TABLE or RENAME TABLE to create a foreign key constraint name that collided with another existing name
2004-10-31 15:43:29 +02:00
marko@hundin.mysql.fi
b5f49a3abd Backport innodb_max_purge_lag from 4.1 2004-10-27 13:33:11 +03:00
heikki@hundin.mysql.fi
3729ba7706 row0mysql.c:
Print more warnings to the .err log if ALTER TABLE ... IMPORT TABLESPACE fails for some reason
os0file.c:
  Do not call exit(1) if os_file_delete() fails; remove unused parameter from
handle_error_no_exit()

fil0fil.c:
  Allow DROP TABLE even if the .ibd file for the table does not exist
2004-10-26 20:29:11 +03:00
monty@mysql.com
97b4a3415d Merge mysql.com:/home/my/mysql-4.0 into mysql.com:/home/my/mysql-4.1 2004-10-22 14:59:59 +03:00
heikki@hundin.mysql.fi
215cd1e4a3 row0mysql.c, row0ins.c:
Fix bug #5961: release the dictionary latch during a long cascaded FOREIGN KEY operation, so that we do not starve other users
2004-10-22 00:25:57 +03:00
heikki@hundin.mysql.fi
0543320240 row0mysql.c:
If one tries to drop an InnoDB table without an .ibd file, print to .err log that we DID remove the table from the internal data dictionary of InnoDB, and return DB_SUCCESS so that MySQL will delete the .frm file; the drawback in this is that then DROP TABLE returns success, and the user is not alerted; maybe it could return a warning
2004-10-08 23:52:25 +03:00
heikki@hundin.mysql.fi
89ecfd7fa6 Many files:
Fix bug #5137: if innodb_file_per_table was specified, CREATE TEMPORARY TABLE ... TYPE=InnoDB said that cannot find path specified, and made mysqld to exit(1)
2004-10-07 20:53:20 +03:00
monty@mysql.com
62f3cd6a31 Merge with 4.0 for 4.1 release
Noteworthy:
- New HANDLER code
- New multi-update-grant-check code
- Table lock code in ha_innodb.cc was not applied
2004-10-06 19:14:33 +03:00
heikki@hundin.mysql.fi
3985d58ad2 ha_innodb.cc:
Raise maximum column prefix len to 767 bytes, so that MySQL can create a column prefix index of 255 UTF-8 characters (each takes 3 bytes at the maximum); add comments about why innobase_get_at_most_n_mbchars() works ok
dict0mem.h:
  Raise maximum column prefix len to 767 bytes, so that MySQL can create a column prefix index of 255 UTF-8 characters (each takes 3 bytes at the maximum)
row0mysql.c:
  If MySQL tries to create a column prefix index longer that 255 UTF-8 characters, give an error, and drop the table from the InnoDB internal data dictionary. MySQL did not drop the table there in its own error handling.
2004-10-05 17:08:22 +03:00
marko@hundin.mysql.fi
d4b3df6d31 InnoDB: Fix ALTER TABLE t DISCARD TABLESPACE (Bug #5851) 2004-10-04 20:38:23 +03:00
marko@hundin.mysql.fi
d5728b91bb InnoDB: make ALTER TABLE to work on table names containing '#' (Bug #5856) 2004-10-04 16:24:37 +03:00
marko@hundin.mysql.fi
d7ea8e7c6c InnoDB: quote identifiers according to MySQL settings (Bug #5292) 2004-10-01 11:51:59 +03:00
marko@hundin.mysql.fi
1bd65d7715 InnoDB: implement innodb_max_purge_lag 2004-09-30 15:54:19 +03:00
marko@hundin.mysql.fi
7a845e43ad InnoDB: Update links to the user manual 2004-09-08 14:24:13 +03:00
marko@hundin.mysql.fi
09f3166267 row0mysql.c:
row_drop_table_for_mysql(): Removed duplicated block of code.
2004-09-01 14:04:17 +03:00
serg@serg.mylan
e1237cbc53 manually merged 2004-08-18 19:57:55 +02:00
heikki@hundin.mysql.fi
5273b4e5f5 row0mysql.c:
Fix bug: if we RENAME a table, InnoDB forgot to load the foreign key constraints that reference the new table name, and forgot to check that they are compatible with the table
2004-08-13 17:27:58 +03:00
marko@hundin.mysql.fi
b9a8ce1b20 row0mysql.c:
row_drop_table_for_mysql(): Removed a ut_ad() assertion that failed
  when a DROP TABLE is executed in the background.
2004-08-09 15:38:40 +03:00
serg@serg.mylan
1f0cd873c5 manual merged (blame me!) 2004-07-20 00:53:24 +02:00
marko@hundin.mysql.fi
a323342728 InnoDB: LOCK TABLE clean-up 2004-07-12 16:47:22 +03:00
marko@hundin.mysql.fi
bea2f4305e InnoDB: Increment the lock wait watchdog timeout during CHECK TABLE
(Bug #2694)
2004-07-12 15:13:18 +03:00
monty@mysql.com
b11d258835 Merge with 4.0.21 2004-06-18 04:38:58 +03:00
marko@hundin.mysql.fi
3af839f45a InnoDB bug fix (row0mysql.c): make reserved table names innodb_* special again 2004-06-15 22:09:09 +03:00
monty@mysql.com
70c2256d2f Merge with 4.0 to get fixes for netware 2004-06-02 00:09:14 +03:00
heikki@hundin.mysql.fi
aac5c88bcd row0mysql.c, row0mysql.h, ha_innodb.cc:
Inside LOCK TABLES, use either LOCK_S or LOCK_X in locking reads; an improvent over the previous patch
2004-06-01 19:19:48 +03:00
marko@hundin.mysql.fi
2b2e7e4580 InnoDB cleanup: Fix potential buffer overflows,
allow deletion of tablespaces whose names contain "'"
2004-06-01 15:19:09 +03:00
marko@hundin.mysql.fi
fc85c80b88 InnoDB cleanup:
Disable log archiving code unless #ifdef UNIV_LOG_ARCHIVE
Remove (char*) casts of string constants; add const qualifiers
Remove some Hot Backup code unless #ifdef UNIV_HOTBACKUP
2004-05-27 15:27:43 +03:00
marko@hundin.mysql.fi
03f19377a9 InnoDB cleanup: Add const qualifiers to many char* arguments 2004-05-17 14:40:31 +03:00