Commit graph

254 commits

Author SHA1 Message Date
monty@mashka.mysql.fi
2c4fa340cc Lots of code fixes to the replication code (especially the binary logging and index log file handling)
Fixed bugs in my last changeset that made MySQL hard to compile.
Added mutex around some data that could cause table cache corruptions when using OPTIMIZE TABLE / REPAIR TABLE or automatic repair of MyISAM tables.
Added mutex around some data in the slave start/stop code that could cause THD linked list corruptions
Extended my_chsize() to allow one to specify a filler character.
Extend vio_blocking to return the old state (This made some usage of this function much simpler)
Added testing for some functions that they caller have got the required mutexes before calling the function.
Use setrlimit() to ensure that we can write core file if one specifies --core-file.
Added --slave-compressed-protocol
Made 2 the minimum length for ft_min_word_len
Added variables foreign_key_checks & unique_checks.
Less logging from replication code (if not started with --log-warnings)
Changed that SHOW INNODB STATUS requre the SUPER privilege
More DBUG statements and a lot of new code comments
2002-08-08 03:12:02 +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
monty@mashka.mysql.fi
dddc20d9d1 New SET syntax & system variables.
Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups
2002-07-23 18:31:22 +03:00
heikki@hundin.mysql.fi
f753fdd32f row0ins.c:
Move the assertion in foreign keys to the right place
2002-07-21 13:17:49 +03:00
heikki@hundin.mysql.fi
3c29c48964 dict0dict.c:
Revert the test changes to wait for a full push of new auto-inc algorithm
2002-07-21 13:09:57 +03:00
heikki@hundin.mysql.fi
51c80faed2 row0ins.c:
Do not perform ON DELETE action for a FOREIGN KEY constraint if we are doing an UPDATE, not a DELETE
dict0dict.c:
  test
2002-07-21 12:58:14 +03:00
heikki@hundin.mysql.fi
5b76647205 fil0fil.c:
Align a buffer for i/o from a raw device
2002-07-19 18:49:25 +03:00
heikki@hundin.mysql.fi
d7f2152b9e os0file.c:
Fix a bug in the previous commit change and align also the buffer in simulataled aio for possible use in i/o to raw devices
2002-07-19 17:09:40 +03:00
heikki@hundin.mysql.fi
2568a3b762 os0file.c:
Align the buffer used in initing a data file to zero; this may be needed if the data file is actually a raw device
2002-07-19 08:33:52 +03:00
heikki@hundin.mysql.fi
80e14f5b51 os0thread.h, srv0srv.c:
Increase max number of waiting threads to 10000 and put diagnostic prints if this value is exceeded
2002-07-16 13:59:24 +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
0f0f9176b4 srv0srv.c:
Protect InnoDB monitor with a mutex
2002-07-09 18:13:59 +03:00
heikki@hundin.mysql.fi
7dce4bd340 srv0srv.c:
Remove debug code
2002-07-08 20:08:16 +03:00
heikki@hundin.mysql.fi
f96f69e403 srv0srv.c:
Eliminate potential division by zero
2002-07-08 20:04:10 +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
559bc0c12f srv0start.c:
Remove freeing of all memory at shutdown: since we do not exit the i/o-handlers and other threads, we could potentially get a seg fault at shutdown
2002-07-01 12:06:37 +03:00
monty@hundin.mysql.fi
6cb77c6b3e Portability fixes.
Don't free memory from InnoDB at exit (as this may be done before other threads are finnished)
2002-07-01 11:19:17 +03:00
heikki@hundin.mysql.fi
18bb600817 row0ins.c:
The UNIV_DEBUG version asserted if a foreign key check failed because of a lock wait timeout
btr0cur.c:
  Fix a bug: if the primary key was updated (or delete + insert) so that only the case of characters changed, we were left with a dangling adaptive hash index pointer, often causing an assertion failure in page0page.ic line 515
2002-07-01 02:19:58 +03:00
monty@hundin.mysql.fi
f87efa928b Update for running gcc 3.x (mainly on HPUX)
Portability fixes for HPUX
Rename of CHECK_LOCK to IS_FREE_LOCK
Apply lower_case_table_names also to databases
Cleanup of describe code
Don't allow \ in database names
2002-06-30 18:57:21 +03:00
heikki@hundin.mysql.fi
ded1170888 buf0buf.ic:
Fix a bug: if buffer pool size > 2 GB on a 32-bit computer, we got an assertion failure because >> acted as a division operator (not as a register shift) for a wrapped-over integer value
2002-06-26 21:42:40 +03:00
heikki@hundin.mysql.fi
7a94fdd405 os0file.c:
Crash the server if file flush does not succeed: the database can get corrupt, better to crash it than let it run
2002-06-26 10:09:11 +03:00
heikki@hundin.mysql.fi
0c5ad2d6cb os0sync.c:
Initing a mutex with MY_MUTEX_INIT_FAST may relieve thread thrashing on Linux
2002-06-22 23:31:51 +03:00
heikki@hundin.mysql.fi
128e872f3c Many files:
Merge 3.23.52
2002-06-22 20:41:14 +03:00
monty@bitch.mysql.fi
268e82a078 Merge hundin:/my/mysql-4.0 into bitch.mysql.fi:/my/mysql-4.0 2002-06-05 23:14:22 +03:00
monty@hundin.mysql.fi
e4130b11c9 removed init_count from IO_CACHE.
Added missing mutex_unlock to slave replication code.
2002-06-05 23:04:38 +03:00
monty@bitch.mysql.fi
0653326ed3 Merge hundin:/my/mysql-4.0 into bitch.mysql.fi:/my/mysql-4.0 2002-06-03 14:43:44 +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
41a1af3b5f row0sel.c:
Monty said an SQL NULL BLOB field must have NULL as the data pointer value
2002-05-09 16:33:12 +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
heikki@hundin.mysql.fi
9e51d1a5ee row0ins.c:
Fix an assertion failure in row0ins.c line 511 in case of a cascading delete caused by circularly referencing rows, when foreign keys are used
2002-05-02 11:12:49 +03:00
monty@hundin.mysql.fi
727122aadd merge 2002-04-25 01:16:42 +03:00
heikki@hundin.mysql.fi
626f5bff47 univ.i:
Prevent use of X86 assembler when WIN64 defined
2002-04-18 12:03:40 +03:00
heikki@hundin.mysql.fi
c8b5e41791 univ.i:
Make possible switch off X86 assembler usage in Windows: needed for the Itanium port
2002-04-18 10:50:42 +03:00
heikki@hundin.mysql.fi
8da85956dd Many files:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
2002-04-18 10:40:32 +03:00
heikki@hundin.mysql.fi
8a8f6be17a os0file.h:
Make sure Posix aio is never even tried to use
2002-04-11 15:51:01 +03:00
monty@hundin.mysql.fi
727e507bca merge with 3.23.50 2002-03-27 01:56:10 +02:00
heikki@hundin.mysql.fi
42c6e65c58 sync0rw.ic, ut0byte.ic:
Forgot to merge these to 3.23.50
2002-03-21 18:24:26 +02:00
heikki@hundin.mysql.fi
e90a57aa49 Many files:
Merge InnoDB-3.23.50
2002-03-21 18:03:09 +02:00
monty@bitch.mysql.fi
26875c9cc4 Merge hundin:/my/mysql-4.0 into bitch.mysql.fi:/my/mysql-4.0 2002-03-16 11:31:13 +02:00
sasha@mysql.sashanet.com
aa67831207 merged from 3.23 to pull the LOAD DATA INFILE fix as rpl000001 was failing.
Let's hope this did not break anything. Will not push this one until Monty
gets back
2002-03-01 19:36:46 -07:00
heikki@hundin.mysql.fi
4ebd3f9aaf dict0dict.c:
If the string foreign was succeeded by a non-space character, that confused the foreign key syntax parser
2002-02-15 10:39:12 +02:00
monty@hundin.mysql.fi
e070e9a01f merge with 3.23.49 2002-02-14 18:58:24 +02:00
heikki@hundin.mysql.fi
4eb0f28eb7 row0mysql.c:
Add a warning to drop database wait if there are still open handles on a table
2002-02-14 11:30:14 +02:00
heikki@hundin.mysql.fi
57ef5c71b9 dict0dict.h, dict0dict.c, row0mysql.c, ha_innobase.cc:
Add some more safety if MySQL tries to drop a table on which there are open handles
2002-02-14 10:24:27 +02:00
heikki@hundin.mysql.fi
c70be0113b row0mysql.c, sql_db.cc:
Try to make sure DROP DATABASE does not cause a deadlock because we now let InnoDB wait MySQL does not have open handles to tables we drop
2002-02-14 03:45:45 +02:00
monty@hundin.mysql.fi
4abd402b87 merge with 3.23.48 2002-02-11 13:48:59 +02:00
heikki@donna.mysql.fi
522ee5a0cf srv0srv.c:
If the default character set was set to non-latin1 then the collation order of DATA_CHAR and DATA_VARCHAR was not defined, and foreign key system tables did not work, because they contain DATA_VARCHAR columns
2002-02-10 04:50:46 +02:00
heikki@donna.mysql.fi
be90ca5cad dict0crea.c:
Still a little better error message for Harald Fuchs
2002-02-08 23:35:50 +02:00
heikki@donna.mysql.fi
1aa56d1c63 dict0crea.c:
Add some error messages to help in tracking Harald Fuchs' foreign key failure
2002-02-08 23:24:36 +02:00