Commit graph

8679 commits

Author SHA1 Message Date
unknown
0aa8d14149 InnoDB: fix bugs in the FOREIGN KEY parser (Bug #6340)
innobase/dict/dict0dict.c:
  dict_scan_to(): skip quoted strings while scanning for the keyword
  dict_create_foreign_constraints_low(): allow quote immediately after CONSTRAINT
2004-11-03 14:56:48 +02:00
unknown
1d63509005 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/marko/k/mysql-4.0
2004-11-03 11:09:41 +02:00
unknown
1d3f4a1a49 Portability fixes to mysqld_safe for non-Linux systems. Fix FIND_PROC
for Solaris test, and fix if @IS_LINUX@ test in mysqld_safe itself.


configure.in:
  Portability fix for FIND_PROC setting; on Solaris (and
  probably others), 'ps -p $$' inside a shell script just
  returns 'sh' for command line, even though $0 contains
  the filename.  So, use 'ps -fp $$' in the test (it shows
  the full command line, e.g., 'sh configure').  Leave the
  actual FIND_PROC command as-is, since mysqld itself is
  not a shell script.
scripts/mysqld_safe.sh:
  Portability fix for mysqld_safe on non-Linux systems.  A bogus use
  of 'if' and 'test' caused non-bash shells to enter a section meant
  to be run only on Linux systems.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-11-02 17:53:25 -07:00
unknown
9c06c80dff ha_innodb.cc:
Backport Jan's fix of the LOAD DATA INFILE REPLACE duplicate key error bug (Bug #5835) to 4.0


sql/ha_innodb.cc:
  Backport Jan's fix of the LOAD DATA INFILE REPLACE duplicate key error bug (Bug #5835) to 4.0
2004-11-02 13:21:11 +02:00
unknown
e823c99731 Ensure that a source distribution contains 'libmysql/libmysql.def'
which is needed for Netware ports.
2004-11-01 18:15:45 +01:00
unknown
3ff74fe4a0 mysqld.cc:
Describe innodb_max_purge_lag
  Improve description of innodb_table_locks


sql/mysqld.cc:
  Describe innodb_max_purge_lag
  Improve description of innodb_table_locks
2004-11-01 12:08:44 +02:00
unknown
61ac832464 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


innobase/dict/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
innobase/dict/dict0load.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
innobase/dict/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
innobase/eval/eval0eval.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
innobase/pars/pars0pars.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
innobase/row/row0mysql.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
2004-10-31 15:43:29 +02:00
unknown
99b76e6bf4 - bumped up version number from 4.0.22 to 4.0.23 in configure.in
- tagged ChangeSet@1.2048.1.2 as "mysql-4.0.22"


configure.in:
   - bumped up version number from 4.0.22 to 4.0.23
2004-10-29 09:24:21 +02:00
unknown
33d68675f7 close table before next iteration of table proccesing in mysql_admin_table (to allow open next table) 2004-10-28 21:14:00 +03:00
unknown
ac7f02c2bf Merge lgrimmer@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/space/my/mysql-4.0
2004-10-27 22:18:42 +02:00
unknown
11ff375efd - Applied some Windows portability fixes for myisampack.c and sql_handler.cc
(backports from fixes made in 4.1)


myisam/myisampack.c:
   - replaced "1ULL" with "((ulonglong)1)" to resolve a compile error on
     Windows
sql/sql_handler.cc:
   - removed some unused variables
   - added a (byte*) cast to fix a compile error on Windows (backport of a
     fix made in 4.1)
2004-10-27 21:51:27 +02:00
unknown
d6065cb4cd texi2html:
Updated version of texi2html so that 4.0.22 HTML manual doesn't turn out all goofy.


Docs/Support/texi2html:
  Updated version of texi2html so that 4.0.22 HTML manual doesn't turn out all goofy.
2004-10-27 13:44:31 -05:00
unknown
713302b106 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/M40/mysql-4.0
2004-10-27 19:40:22 +02:00
unknown
3bdd7e77fd Fix when compiling without InnoDB
BitKeeper/deleted/.del-innodb-lock-master.opt~f76a4a1999728f87:
  Delete: mysql-test/t/innodb-lock-master.opt
2004-10-27 18:57:49 +03:00
unknown
d43421155e Change 'Build-tools/mysql-copyright' to ensure the receiving machines will build
without trying to re-run autotools.
(Backport from 4.1.7 for 4.0.22)


Build-tools/mysql-copyright:
  The top level Makefile will try to re-run the autotools unless the timestamps of the
  relevant files are in truly ascending order. Ensure this order!
  (Backport from 4.1.7 for 4.0.22)
2004-10-27 17:54:10 +02:00
unknown
743597ea96 Backport innodb_max_purge_lag from 4.1
innobase/include/srv0srv.h:
  Add configuration parameter srv_max_purge_lag.
  Add global variable srv_dml_needed_delay.
innobase/include/trx0sys.h:
  Add trx_sys->rseg_history_len
innobase/row/row0mysql.c:
  Add row_mysql_delay_if_needed() for delaying INSERTs, UPDATEs and
  DELETEs for srv_dml_needed_delay microseconds.
innobase/srv/srv0srv.c:
  Define global variable srv_dml_needed_delay.
  Define configuration parameter srv_max_purge_lag.
innobase/trx/trx0purge.c:
  Update trx_sys->rseg_history_len.
  trx_purge(): Compute srv_dml_needed_delay from srv_max_purge_lag
  and trx_sys->rseg_history_len.
innobase/trx/trx0rseg.c:
  Initialize trx_sys->rseg_history_len at InnoDB start-up.
sql/ha_innodb.h:
  Add configuration parameter srv_max_purge_lag.
sql/mysqld.cc:
  Add startup option innodb_max_purge_lag,
  with default value 0 (meaning infinite, disabling the feature).
sql/set_var.cc:
  Add global variable innodb_max_purge_lag.
2004-10-27 13:33:11 +03:00
unknown
9abe7d272b Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-4.0


sql/sql_parse.cc:
  Auto merged
2004-10-24 11:32:08 +03:00
unknown
5ab6c5e532 postreview fixes
sql/mysql_priv.h:
  constant definition
sql/sql_base.cc:
  difine used instead of constant
sql/sql_cache.cc:
  difine used instead of constant
  typo fixed
2004-10-22 22:51:04 +03:00
unknown
a6efe82fee Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-qc-4.0
2004-10-22 22:10:52 +03:00
unknown
b8847967c8 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-4.0
2004-10-22 22:08:46 +03:00
unknown
dd126ba1a5 Part of fix for bug #6081 "Call to deprecated mysql_create_db() function
crashes server"

(in 4.0 we fix only connection stalling in case of error, crash itself is
fixed in 4.1, the test case for this code is also there).


sql/sql_parse.cc:
  Handling of COM_CREATE_DB, COM_DROP_DB:
  We should call send_error() if mysql_create_db or mysql_drop_db
  return error (like we do it for SQL versions of these commands).
2004-10-22 19:27:43 +04:00
unknown
f18efec55a os0file.c:
Add typecast from ulint to ssize_t in pread and pwrite, so that the type is according to the Linux man page; this will probably not help to fix the HP-UX 32-bit pwrite failure, since the compiler should do the appropriate typecasts anyway


innobase/os/os0file.c:
  Add typecast from ulint to ssize_t in pread and pwrite, so that the type is according to the Linux man page; this will probably not help to fix the HP-UX 32-bit pwrite failure, since the compiler should do the appropriate typecasts anyway
2004-10-22 10:45:00 +03:00
unknown
4f84f90f96 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


innobase/row/row0ins.c:
  Fix bug #5961: release the dictionary latch during a long cascaded FOREIGN KEY operation, so that we do not starve other users
innobase/row/row0mysql.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
unknown
e6e1600ec9 Check of temporary tables hiding for query fetched from QC (BUG#6084)
mysql-test/r/query_cache.result:
  hiding real table stored in query cache by temporary table
mysql-test/t/query_cache.test:
  hiding real table stored in query cache by temporary table
sql/sql_cache.cc:
  Check of temporary tables hiding for query fetched from QC
sql/sql_cache.h:
  Key length now stored in table record of query cache
2004-10-21 23:56:12 +03:00
unknown
a0b6372964 texi2html:
Update texi2html with version from mysqldoc repository.
  (Please merge this forward to 4.0, 4.1, 5.0.)


Docs/Support/texi2html:
  Update texi2html with version from mysqldoc repository.
  (Please merge this forward to 4.0, 4.1, 5.0.)
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-10-21 12:08:51 -05:00
unknown
af18865e5a A fix (bug #6000 No "@%"-accounts after install).
scripts/mysql_install_db.sh:
  A fix (bug #6000 No "@%"-accounts after install).
    Why do we need those REPLACE queries?
    Removed $hostname queries for windows builds.
2004-10-20 18:10:44 +05:00
unknown
ec8779e95a Fix test case for innodb-lock
mysql-test/r/innodb-lock.result:
  Fix test case (old one didn't test things correctly)
mysql-test/t/innodb-lock.test:
  Fix test case (old one didn't test things correctly)
mysys/thr_lock.c:
  More debugging information
sql/mysqld.cc:
  Enable innodb_table_locks as default, as otherwise there is a possibility for deadlocks
sql/sql_base.cc:
  More debug information
2004-10-20 16:04:28 +03:00
unknown
95f0e39a38 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


libmysql/libmysql.c:
  Auto merged
2004-10-20 11:25:46 +03:00
unknown
ed8ec2cf16 Code cleanups (done during review of new code)
Rename innodb_table_locks_old_behavior -> innodb_table_locks
Set innodb_table_locks to off by default to get same behaviour as in MySQL 4.0.20
(This means that Innodb ignore table locks by default, which makes it easier to combine MyISAM and InnoDB to simulate a transaction)


libmysql/libmysql.c:
  Use ulong instead of unsigned long
  Reuse _dig_vec()
myisam/myisampack.c:
  Simplify code
mysql-test/r/innodb-lock.result:
  new test case
mysql-test/t/innodb-lock.test:
  new test case
sql/ha_innodb.cc:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
sql/mysqld.cc:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
  Set this off by default to get same behaviour as in MySQL 4.0.20
sql/set_var.cc:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
sql/sql_class.h:
  Rename innodb_table_locks_old_behavior -> innodb_table_locks
2004-10-20 11:24:08 +03:00
unknown
0e0c9af593 trx0rec.c:
test


innobase/trx/trx0rec.c:
  test
2004-10-19 18:58:53 +03:00
unknown
30d33c7132 libmysql.c:
Add note to mysql_hex_string() comment.


libmysql/libmysql.c:
  Add note to mysql_hex_string() comment.
2004-10-19 07:44:20 -05:00
unknown
4324519868 fixed retsult code 2004-10-19 11:54:33 +03:00
unknown
2428fb5c2b libmysql.c:
New function mysql_hex_string()


libmysql/libmysql.c:
  New function mysql_hex_string()
2004-10-19 09:50:47 +05:00
unknown
38e717ea13 Merge dellis@bk-internal.mysql.com:/home/bk/mysql-4.0
into goetia.(none):/home/dellis/mysqlab/bk/mysql-4.0


BitKeeper/etc/logging_ok:
  auto-union
sql/mysqld.cc:
  Auto merged
2004-10-17 18:47:08 -05:00
unknown
5dfa8d859b mysqld.cc:
BUG #5731 key_buffer_size not properly restricted to 4GB; use UINT_MAX32 for clarity.


sql/mysqld.cc:
  BUG #5731 key_buffer_size not properly restricted to 4GB; use UINT_MAX32 for clarity.
2004-10-17 18:44:51 -05:00
unknown
09da504c1c Merge hholzgraefe@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/hartmut/projects/mysql/dev/4.0
2004-10-16 21:04:57 +02:00
unknown
842e723186 texi2html:
Change parsing of @image argument.


Docs/Support/texi2html:
  Change parsing of @image argument.
2004-10-15 23:16:02 -05:00
unknown
ab5610ecc6 texi2html:
Changes parsing of @image argument.


Docs/Support/texi2html:
  Changes parsing of @image argument.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-10-15 23:12:15 -05:00
unknown
9f4d19f995 the $^ directive is a GNU make extension and not really needed here
so lets get rid of it (Bug #6112)
2004-10-15 15:33:30 +02:00
unknown
7723eb0258 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/marko/k/mysql-4.0
2004-10-15 14:38:59 +03:00
unknown
c461eb866e Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-bug5625


sql/ha_myisam.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2004-10-14 20:04:47 +02:00
unknown
fc27da0879 BUG#5625 - MyISAM Index corruption on ALTER TABLE x ENABLE KEYS due to full tmpdir.
Added a try to a normal repair() if repair_by_sort() failed.
This was not done with ENABLE KEYS and OPTIMIZE TABLE.
Fixed error code handling in mysql_alter_table().


sql/ha_myisam.cc:
  BUG#5625 - MyISAM Index corruption on ALTER TABLE x ENABLE KEYS due to full tmpdir.
  Added a try to a normal repair() if repair_by_sort() failed.
  This was not done with ENABLE KEYS and OPTIMIZE TABLE.
sql/sql_table.cc:
  BUG#5625 - MyISAM Index corruption on ALTER TABLE x ENABLE KEYS due to full tmpdir.
  Added a translation from 'bool' return value to '< 0' error indication,
  which is used within mysql_execute_command() and must as such be
  handed over by mysql_alter_table(). A returncode >= 0 is interpreted
  as 'I have already called send_ok()'.
2004-10-14 20:02:56 +02:00
unknown
f0ed73d874 Added startup option and settable session variable
innodb_table_locks_old_behavior: do not acquire an
InnoDB table lock for LOCK TABLES, as in mysql-4.0.18
and earlier.


sql/ha_innodb.cc:
  Do not acquire an InnoDB table lock for LOCK TABLES if
  innodb_table_locks_old_behavior is enabled.
sql/mysqld.cc:
  Added innodb_table_locks_old_behavior
sql/set_var.cc:
  Added innodb_table_locks_old_behavior
sql/sql_class.h:
  Added innodb_table_locks_old_behavior
2004-10-13 22:54:21 +03:00
unknown
eb3b048000 ha_innodb.cc:
Change error code to HA_ERR_ROW_IS_REFERENCED if we cannot DROP a parent table referenced by a FOREIGN KEY constraint; this error number is less misleading than the previous value HA_ERR_CANNOT_ADD_FOREIGN, but misleading still; we should introduce to 5.0 a proper MySQL error code


sql/ha_innodb.cc:
  Change error code to HA_ERR_ROW_IS_REFERENCED if we cannot DROP a parent table referenced by a FOREIGN KEY constraint; this error number is less misleading than the previous value HA_ERR_CANNOT_ADD_FOREIGN, but misleading still; we should introduce to 5.0 a proper MySQL error code
2004-10-12 18:12:00 +03:00
unknown
c061a812a1 Merge heikki@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.0
2004-10-12 18:07:55 +03:00
unknown
eb107ffed2 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/mnt/tmp/mysql-4.0-bug-myisampack
2004-10-11 21:30:25 +04:00
unknown
a66a4dfb59 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-10-11 11:02:24 +02:00
unknown
c5f9a412ce Fix for BUG#5949 "error code 1223 in binlog when using innobackup":
when one connection had done FLUSH TABLES WITH READ LOCK, some updates, and then COMMIT,
it was accepted but my_error() was called and so, while client got no error, error was logged in binlog.
We now don't call my_error() in this case; we assume the connection know what it does.
This problem was specific to 4.0.21. The change is needed to make replication work with existing versions of innobackup.


sql/lock.cc:
  If a connection has done FLUSH TABLES WITH READ LOCK and now is doing COMMIT, don't give error
  (applies only if it's the same connection; others' COMMITs are still blocked).
2004-10-11 11:01:38 +02:00
unknown
2763d893ea trx0rec.c:
Fix bug #5960: if one updated a column so that its size changed, or updated it to an externally stored (TEXT or BLOB) value, then ANOTHER externally stored column would show up as 512 bytes of good data + 20 bytes of garbage in a consistent read that fetched the old version of the row


innobase/trx/trx0rec.c:
  Fix bug #5960: if one updated a column so that its size changed, or updated it to an externally stored (TEXT or BLOB) value, then ANOTHER externally stored column would show up as 512 bytes of good data + 20 bytes of garbage in a consistent read that fetched the old version of the row
2004-10-09 14:13:40 +03:00
unknown
e98bd143a7 Using MySQL 4.0 with privilege tables from 5.0 caused a crash.
(Fixed this by backporting some logic from 4.1)
2004-10-08 16:32:56 +03:00