Commit graph

84 commits

Author SHA1 Message Date
marko@hundin.mysql.fi
a490b95b04 InnoDB: implement LOCK TABLE (Bug #3299) 2004-04-29 16:42:33 +03:00
marko@hundin.mysql.fi
6af38c65be InnoDB: send diagnostic output to stderr or files
instead of stdout or fixed-size memory buffers
2004-04-06 16:14:43 +03:00
marko@hundin.mysql.fi
23a5fc5558 InnoDB: ignore intra-database foreign key references between tables
when dropping database (Bug #3058)
2004-04-02 16:25:48 +03:00
marko@hundin.mysql.fi
e00bf40360 InnoDB cleanup: fixing buffer overflows and quoting of quotes 2004-04-01 16:51:34 +03:00
marko@hundin.mysql.fi
7f2a007496 InnoDB: Remove ut_str_contains() and replace it with strchr() 2004-03-31 11:26:56 +03:00
marko@hundin.mysql.fi
9ed26f721d InnoDB: Replace ut_a(0) with ut_error 2004-03-13 22:48:00 +02:00
marko@hundin.mysql.fi
4573eb566c Allow UNIV_SYNC_DEBUG to be disabled while UNIV_DEBUG is enabled 2004-03-12 17:14:51 +02:00
marko@hundin.mysql.fi
a68a1ed0ca Remove unneeded module "com" 2004-03-11 12:55:28 +02:00
marko@hundin.mysql.fi
234e9abf6a Many files:
Removed unused code
.del-os0trash.c~8cae5c1695501117:
  Delete: innobase/os/os0trash.c
dict0crea.c:
  Protect all sprintf(%s) with assertions
2004-02-20 16:34:09 +02:00
heikki@hundin.mysql.fi
d9790a406c row0mysql.c:
Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table
Many files:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
2004-02-09 23:57:29 +02:00
heikki@hundin.mysql.fi
d2d1e6f726 row0mysql.c:
Fix crash in InnoDB RENAME TABLE if 'databasename/tablename' is shorter than 5 characters (Bug #2689); reported by Sergey Petrunia
2004-02-09 18:56:39 +02:00
heikki@hundin.mysql.fi
836e0b057a Many files:
Fix bug #2167: generate foreign key id's locally for each table, in the form databasename/tablename_ibfk_number; if the user gives the constraint name explicitly remember it; these changes should ensure that foreign key id's in a slave are the same as in the master, and DROP FOREIGN KEY does not break replication
sync0sync.c:
  UNIV_SYNC_DEBUG caused assertion in the creation of the doublewrite buffer, if we do not allow thousands of latches per thread
2004-02-09 01:32:00 +02:00
heikki@hundin.mysql.fi
7533b0cfff dict0dict.c:
Remove redundant code; parse both the database name and the table name in a FOREIGN KEY constraint with quotes in mind
row0mysql.c, ha_innodb.cc, sql_table.cc:
  Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0
2004-02-02 00:10:45 +02:00
heikki@hundin.mysql.fi
216c0a90cd row0mysql.c:
Remove unintentional changes in previous push
2003-10-06 10:50:12 +03:00
heikki@hundin.mysql.fi
da57c25159 row0mysql.c:
Fix bug: if one used the rename trick of ibman section 15.1 to recover a temp table, InnoDB asserted because it tried to lock the data dictionary twice
2003-10-06 10:46:22 +03:00
heikki@hundin.mysql.fi
7be1beb2d3 row0mysql.c:
Fix performance bug: if there were thousands of tables, DROP TABLE could take as much as a second CPU time
2003-07-06 18:01:51 +03:00
heikki@hundin.mysql.fi
2a1f87ff72 Many files:
Remove potential starvation of a full log buffer flush: only flush up to the lsn which was the largest at the time when we requested the full log buffer flush
os0sync.h, os0sync.c:
  Fix a bug in os_event on Unix: even though we signaled the event, some threads could continue waiting if the event became nonsignaled quickly again; this made group commit less efficient than it should be
2003-07-03 21:25:55 +03:00
heikki@hundin.mysql.fi
29796e6240 row0mysql.c, dict0dict.ic:
Cleanup
ha_innodb.cc, data0type.h:
  Make sure non-latin1 users can downgrade from 4.0.14 to an earlier version if they have not created DATA_BLOB column prefix indexes
2003-06-16 00:39:46 +03:00
heikki@hundin.mysql.fi
4da7f485b7 Many files:
Merge InnoDB-4.0.14: SAVEPOINT now implemented; InnoDB now accepts also column prefix keys; crashing bug in ON UPDATE CASCADE fixed; page checksum formula fixed
2003-06-15 01:04:28 +03:00
heikki@hundin.mysql.fi
35fd869e51 Many files:
Eliminate the LOCK_log bottleneck in group commit in binlogging: flush InnoDB log files only after it has been released
2003-05-03 02:29:40 +03:00
heikki@hundin.mysql.fi
32a987834f row0mysql.c:
Give sensible advice to the user if InnoDB notices index corruption
2003-04-23 02:51:25 +03:00
heikki@hundin.mysql.fi
3a77f47a04 ha_innodb.cc, row0sel.c, row0mysql.c, row0mysql.h:
Allow HANDLER PREV and NEXT also after positioning the cursor with a unique search on the primary key
2003-04-17 02:28:40 +03:00
heikki@hundin.mysql.fi
f841b4ae23 Many files:
Merge InnoDB-4.0.13; DROP FOREIGN KEY now works
2003-04-16 16:45:01 +03:00
monty@narttu.mysql.fi
c2fa342d53 Merge with 3.23 to get fix for halloween problem on Update of InnoDB tables 2003-03-18 03:19:20 +02:00
heikki@hundin.mysql.fi
852b1b3dc5 row0mysql.c:
Test if merging from 3.23 to 4.0 succeeds
2003-03-16 14:40:41 +02:00
heikki@hundin.mysql.fi
843e1d8e9c Many files:
Merge InnoDB-4.0.7. Support for ON UPDATE CASCADE
sql_select.cc:
  Remove superfluous prints to .err log when a locking SELECT fails to a deadlock or a lock wait timeout
2002-12-22 01:54:29 +02:00
heikki@hundin.mysql.fi
fdcb314fc6 row0mysql.c:
Heikki will merge to 4.0: cleanup
2002-12-05 22:09:51 +02:00
heikki@hundin.mysql.fi
5c3c4d3721 row0mysql.c, dict0dict.c, db0err.h, ha_innobase.cc:
Heikki will merge to 4.0: Prevent listing the same column twice in an InnoDB index: that will cause index corruption when that col is UPDATEd
2002-12-05 22:03:24 +02:00
heikki@hundin.mysql.fi
5fedf659d8 row0mysql.c, row0mysql.h:
Backport of bug fix in 4.0: do not x-lock rows under LOCK TABLES READ unless the table is a temp table
2002-11-19 16:54:52 +02:00
heikki@hundin.mysql.fi
4b73222d5a row0mysql.c, row0mysql.h, ha_innodb.cc, sql_table.cc, handler.h:
Fix crash when InnoDB temp table is truncated + fix bug: do not X-lock rows under LOCK TABLES except if the table is temp
2002-11-19 16:27:26 +02:00
heikki@hundin.mysql.fi
be51d6ae8c row0mysql.c:
Backport from 4.0: Fix corruption of ON DELETE CASCADE in lock wait timeout
2002-11-07 15:05:26 +02:00
heikki@hundin.mysql.fi
b31f909d7b Many files:
Fix hang introduced by selective deadlock resolution
srv0srv.c, row0mysql.c:
  Fix hang introduced by selective deadlock resolution + corruption caused by lock timeout or sel deadl res in ON DELETE CASCADE
2002-11-07 14:47:25 +02:00
heikki@hundin.mysql.fi
db1693101b Many files:
Merge InnoDB-4.0.5b: minor improvements to foreign keys, more logical data dictionary lock
2002-11-06 00:41:27 +02:00
heikki@hundin.mysql.fi
9153d88c6b Many files:
Merge InnoDB-4.0.5: new isolation levels READ COMMITTED and READ UNCOMMITTED now supported, selective deadlock resolution
mysqld.cc:
  Change MySQL default isolation level to REPEATABLE READ; note that InnoDB has always had that default, and BDB and MyISAM always run at SERIALIZABLE level anyway
2002-10-29 23:16:46 +02:00
heikki@hundin.mysql.fi
f8d44429c5 srv0srv.h, srv0srv.c, row0mysql.c:
Put back a change unintentionally removed in the last 2 pushes
2002-09-20 05:44:41 +03:00
heikki@hundin.mysql.fi
9e493e91e9 Many files:
Modifications for query cache + trxs, fix of q.c.+ foreign keys
os0file.c:
  Use unbuffered i/o in Windows
2002-09-20 05:11:08 +03:00
monty@mashka.mysql.fi
3bb2660d10 Merge with 3.23.53 2002-09-17 05:17:32 +03:00
heikki@hundin.mysql.fi
a7a24b8a9c row0mysql.c:
Fix typos in previous push
2002-09-13 14:23:09 +03:00
heikki@hundin.mysql.fi
69f571db0c row0mysql.c:
Allow CREATE TABLE and DROP TABLE even if innodb_force_recovery is used, the user can drop a problematic table
2002-09-13 13:55:25 +03:00
serg@serg.mysql.com
b962da9aab merged 2002-08-31 23:38:10 +00:00
heikki@hundin.mysql.fi
df5d7a5b91 row0mysql.c, ha_innobase.cc:
Improved error message for out-of-sync frm files
2002-08-23 10:52:24 +03:00
monty@hundin.mysql.fi
087261482a merge with 3.23.52 2002-08-08 15:24:47 +03:00
heikki@hundin.mysql.fi
bbb8125a2c Many files:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
2002-07-31 00:47:20 +03:00
monty@mashka.mysql.fi
bc035c71f1 Merge with 3.23.51
Fixed wrong usage of sprintf() in ha_innodb.cc
2002-07-25 22:46:28 +03:00
heikki@hundin.mysql.fi
f5dfd7e41c row0mysql.c:
Forgot to release an x-latch in DROP DATABASE
2002-07-10 19:55:27 +03:00
heikki@hundin.mysql.fi
7390d81f43 Many files:
Merge InnoDB-3.23.52b
2002-07-08 19:34:49 +03:00
heikki@hundin.mysql.fi
128e872f3c Many files:
Merge 3.23.52
2002-06-22 20:41:14 +03:00
monty@hundin.mysql.fi
f5ed8784a2 merge with 3.23.51 2002-05-16 18:20:49 +03:00
heikki@hundin.mysql.fi
59a00868c9 row0mysql.c:
Play safe and set a MySQL 1 - 12 byte BLOB reference to zero except for the length and pointer areas in it
2002-05-09 20:22:26 +03:00
heikki@hundin.mysql.fi
5aa9a391f5 row0mysql.c:
Add some diagnostic code to track BLOB bugs if they were not already fixed with the change in row0sel.c
row0sel.c:
  Fix a seg fault which was caused inside MySQL because InnoDB when returning a BLOB value did not initialize the length and the data pointer of a BLOB whose value is the SQL NULL; also fix a very improbable race condition which could occur if a row with an externally stored BLOB was fetched using the adaptive hash index
2002-05-09 16:13:09 +03:00