Commit graph

561 commits

Author SHA1 Message Date
heikki@hundin.mysql.fi
af0d9a709c rem0cmp.c, data0type.c, data0type.ic, data0type.h, ha_innodb.cc:
Remove the now redundant flag DATA_NONLATIN1; better comments
2004-02-20 11:21:12 +02:00
heikki@hundin.mysql.fi
6417abbe94 data0type.ic, data0type.h:
Fix a typo in a comment
2004-02-20 09:50:33 +02:00
heikki@hundin.mysql.fi
4bed5784dd Many files:
Multiple charset support for InnoDB; note that if you create tables and the default charset-collation is not latin1_swedish_ci, then you cannot use those tables if you downgrade to 4.0 again
2004-02-19 20:07:02 +02:00
heikki@hundin.mysql.fi
811e9b17ff trx0sys.c:
Remove the downgrade 4.1.2 -> 4.0.18 patch accidentally merged from 4.0 to 4.1; the patch must NOT be merged to 4.1; this fixes Bug #2883
2004-02-19 16:23:34 +02:00
monty@mysql.com
050af89dd8 Merge with public tree 2004-02-16 10:31:05 +02:00
monty@mysql.com
f43093ec0e After merge fixes
Added more DBUG statements
Ensure that we are comparing end space with BINARY strings
Use 'any_db' instead of '' to mean any database. (For HANDLER command)
Only strip ' ' when comparing CHAR, not other space-like characters (like \t)
2004-02-16 10:03:25 +02:00
heikki@hundin.mysql.fi
25aff697d1 srv0srv.c:
Add a missing space to the output format of SHOW INNODB STATUS; reported by Jocelyn Fournier
2004-02-16 09:16:41 +02:00
monty@mysql.com
ce14578909 Merge with 4.0.18 2004-02-11 00:06:46 +01: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
monty@mysql.com
7df839e757 Added testing of pthread_key_delete (to fix compile problem on SCO) (Bug #2461)
DROP DATABASE now assumes RAID directories are in hex. (Bug #2627)
Don't increment 'select_full_range' and similar statistics for EXPLAIN queries. (Bug #2506)
Test in configure if pthread_key_delete() exists (to fix compile problem on SCO) (Bug #2461)
2004-02-05 09:12:23 +01:00
heikki@hundin.mysql.fi
7e19a8ee65 dict0dict.c:
Change print format of FOREIGN KEY constraints spanning multiple databases to <backquote>databasename<backquote>.<backquote>tablename<backquote>; but when parsing them we must also accept <backquote>databasename.tablename<backquote>, because that was the output format in < 4.0.18
2004-02-02 01:05:53 +02:00
heikki@hundin.mysql.fi
b382ee2cb1 dict0dict.c:
Change print format of FOREIGN KEY constraints spanning multiple databases to: .; but we when parsing them we must also accept , because that was the output format in < 4.0.18
2004-02-02 01:03:05 +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
0216948c5b dict0dict.c:
Cleanup
2004-02-01 19:20:16 +02:00
monty@mysql.com
ed44e769ba Fixed parsing of column names and foreign key constraints in Innobase to handle quoted identifiers and identifiers with space. (Bug #1725)
Fix optimizer tuning bug when first used key part was a constant. (Bug #1679)
2004-01-30 10:46:30 +01:00
heikki@hundin.mysql.fi
49587c4244 ibuf0ibuf.c:
Correct the comment about the ibuf record format in >= 4.1.1
2004-01-29 15:08:22 +02:00
heikki@hundin.mysql.fi
8c49856f24 btr0cur.c:
Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers
2004-01-29 14:41:49 +02:00
heikki@hundin.mysql.fi
9b04e7b9bb data0data.ic, data0data.h, row0sel.c:
Fix bug #2483 with InnoDB, UNIQUE secondary index, and NULL values in that unique index; with the IS NULL predicate, InnoDB returned only the first matching row, though there can be many
2004-01-27 20:10:04 +02:00
heikki@hundin.mysql.fi
d9ef69e7a1 row0sel.c:
Remove extra mtr_start()
2004-01-20 17:35:51 +02:00
heikki@hundin.mysql.fi
15e64c3591 row0ins.c:
Fix bug: FOREIGN KEY ... ON UPDATE/DELETE NO ACTION must check the foreign key constraint, not ignore it. Peter Gulutzan said that NO ACTION should check the constraint as deferred, at the end of the SQL statement, while RESTRICT should check it immediately. Since we do not have defered constraints in InnoDB, this bug fix makes InnoDB to check NO ACTION constraints immediately, like it checks RESTRICT constraints.
2004-01-14 16:21:54 +02:00
heikki@hundin.mysql.fi
8f6f7502d1 srv0start.c, srv0srv.c:
If UNIV_SYNC_DEBUG was switched on, the error monitor thread could reserve a mutex BEFORE the sync debug system was initialized, and that caused a sync debug assertion in startup: move the 2 sec. sleep to a safer place; note that this is only heuristics, and in theory it can assert still
2004-01-13 17:13:03 +02:00
heikki@hundin.mysql.fi
c6c2478f8c row0sel.c:
Improve previous push: save 1000 bytes of thread stack in non-error cases
2004-01-13 04:10:20 +02:00
heikki@hundin.mysql.fi
bd37416e09 row0sel.c:
If MySQL tries to do SELECT from an InnoDB table, but has set no table locks at all in ::external_lock(), print a descriptive error message and assert; some subquery bugs were of this type
2004-01-13 04:05:38 +02:00
heikki@hundin.mysql.fi
1bd4091470 row0mysql.c:
Fix typo
2004-01-08 18:56:21 +02:00
heikki@hundin.mysql.fi
18036f98ac buf0lru.c:
Start InnoDB Monitor if 80 % of the buffer pool occupied by adaptive has or lock heaps; do not print the same warning more than 1 time
2004-01-07 18:15:17 +02:00
heikki@hundin.mysql.fi
4c0ad9ccb6 trx0sys.c:
DO NOT MERGE TO 4.1: forgot to change this in the previous push
2004-01-06 20:06:07 +02:00
heikki@hundin.mysql.fi
41d0719cc3 srv0start.c:
More instructions about a downgrade 4.1.1 -> 4.0.18
2004-01-06 20:03:06 +02:00
heikki@hundin.mysql.fi
51c0fa2935 trx0sys.c:
DO NOT MERGE TO 4.1: charset changes can cause problems in a downgrade 4.1.1 -> 4.0.18
2004-01-06 19:50:50 +02:00
heikki@hundin.mysql.fi
4fa54c1dca trx0sys.c, srv0start.c, ibuf0ibuf.c, trx0sys.h, srv0srv.h:
DO NOT MERGE TO 4.1: add code for automatic downgrade 4.1.1 -> 4.0 if the user has not created multiple tablespaces yet
2004-01-06 13:40:14 +02:00
heikki@hundin.mysql.fi
fe6250488e srv0start.c:
Add comment that the insert buffer format changed between 4.0 and 4.1.1, but the undo log format did not
2004-01-06 13:10:57 +02:00
heikki@hundin.mysql.fi
7bb74b6592 log0recv.h, log0recv.c:
Merge a log replay change required by ibbackup
2004-01-02 16:21:58 +02:00
heikki@hundin.mysql.fi
1c74cd9bf5 row0purge.c:
Fix bug: if purge of a table was not possible because its .ibd file was missing, trx->dict_operation_lock_mode was left to a wrong value, causing an assertion failure
2004-01-01 01:51:36 +02:00
heikki@hundin.mysql.fi
b5d9ecad52 log0log.c:
Do not assert in log0log.c, line 856 if ib_logfiles are too small for innodb_thread_concurrency. Instead, print instructions how to adjust my.cnf and call exit(1).
2003-12-23 22:55:38 +02:00
heikki@hundin.mysql.fi
947057e771 univ.i, srv0srv.c:
Define macro ULINTPF which can be used in printf statements as the print format of ulint both on Win64 and other platforms
2003-12-20 13:48:35 +02:00
heikki@hundin.mysql.fi
734870d0ce srv0start.c, univ.i, configure.in:
Check at compilation time on Unix that InnoDB ulint is the same size as void*, and also check it at runtime
2003-12-20 13:13:55 +02:00
monty@mysql.com
0448a3f4c0 Add cast of integer/longlong to (ulong) to make printf/sprintf 64 bit safe
A after merge fix for last merge
2003-12-20 03:41:04 +02:00
heikki@hundin.mysql.fi
df73dc7828 univ.i, ut0ut.h, ut0ut.c:
On 64-bit Windows use InnoDB's own printf function where %lu is converted to %I64u; this eliminates Intel compiler warnings on IA64
2003-12-19 20:39:19 +02:00
monty@mysql.com
e0cc6799ec Merge with 4.0.17 2003-12-17 17:35:34 +02:00
heikki@hundin.mysql.fi
6d9aca5069 btr0cur.c, row0umod.c:
Fix bug: if one updated a secondary index column so that its alphabetical value did not change (e.g., abc -> aBc) and rolled back the update, InnoDB failed to return the value in the secondary index to its original value
row0upd.h:
  Correct typing error
sync0sync.ic:
  Remove inadvertently pushed sync debug code
2003-12-13 01:31:59 +02:00
heikki@hundin.mysql.fi
75a662fb3c row0upd.h, row0upd.c:
Remove wrong debug assertion and comment
2003-12-12 08:09:25 +02:00
heikki@hundin.mysql.fi
d3d9b727eb Many files:
Fix assertion failure on line 713 of row0upd.c if there is a column prefix index and the last characters in the prefix are spaces: do not assume that the length of alphabetically equal strings is the same; fix a buglet which could cause InnoDB to think that a secondary index record was not locked though it had been updated in a way which did not alpahabetically change its value, e.g., abc -> aBc
2003-12-12 07:51:21 +02:00
monty@mysql.com
ede8169d24 Added missing SSL library (Should be in source distribution)
Fixed compiler warnings (a lot of hidden variables detected by the Forte compiler)
Added a lot of 'version_xxx' strings to 'show variables'
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
Fixed problem with printing sub selects to debug log
2003-11-28 12:18:13 +02:00
heikki@hundin.mysql.fi
dc95a025d6 fil0fil.h, fil0fil.c:
ibbackup --apply-log must be able to rename a table based only on the space id
2003-11-25 21:52:22 +02:00
heikki@hundin.mysql.fi
e82a7e2fd2 os0file.h, os0file.c:
Changes needed for ibbackup directory scanning fault tolerance
2003-11-25 20:39:06 +02:00
heikki@hundin.mysql.fi
5e6f94f422 dict0boot.c:
Marko's patch: check the position of some system table columns already at C compile time
2003-11-25 15:11:01 +02:00
monty@mysql.com
7c725b2486 Fixed compiler warnings from Intel compiler in Win64
Added option --max-record-length=# to myisamchk
Don't try repair twice if doing myisamchk --repair --force
Shared memory handler didn't clean up things on errors or shutdown
2003-11-23 14:36:41 +02:00
heikki@hundin.mysql.fi
f8e9f31e93 os0file.c:
Fix the OS error 2 reported by Miguel and Mark in Windows crash recovery: a * had been forgotten from the path in directory scanning
ha_innodb.cc:
  Set default directory in fil0fil.c right if we are running the Embedded Server Library, where the default dir of the process is not necessarily the MySQL datadir
2003-11-21 17:01:35 +02:00
monty@mashka.mysql.fi
ac76198330 Portability fixes for AIX43 2003-11-20 02:48:09 +02:00