Redefine sprintf as ut_sprintf inside InnoDB code; some old Unixes may have a pointer as the return type of sprintf
lock0lock.c:
Add safety against buffer overruns in latest deadlock info
srv0srv.c:
Add safety against buffer overruns in SHOW INNODB STATUS
os0thread.h, os0thread.c:
Fix a portability bug introduced in Windows when we changed os_thread_id_t to be the same as os_thread_t
innobase/os/os0thread.c:
Fix a portability bug introduced in Windows when we changed os_thread_id_t to be the same as os_thread_t
innobase/include/os0thread.h:
Fix a portability bug introduced in Windows when we changed os_thread_id_t to be the same as os_thread_t
innobase/srv/srv0srv.c:
Add safety against buffer overruns in SHOW INNODB STATUS
innobase/lock/lock0lock.c:
Add safety against buffer overruns in latest deadlock info
innobase/include/ut0ut.h:
Redefine sprintf as ut_sprintf inside InnoDB code; some old Unixes may have a pointer as the return type of sprintf
innobase/include/univ.i:
Redefine sprintf as ut_sprintf inside InnoDB code; some old Unixes may have a pointer as the return type of sprintf
innobase/ut/ut0ut.c:
Redefine sprintf as ut_sprintf inside InnoDB code; some old Unixes may have a pointer as the return type of sprintf
sql/ha_innobase.cc:
Redefine sprintf as ut_sprintf inside InnoDB code; some old Unixes may have a pointer as the return type of sprintf
Add some more safety margin to buffer sizes in prints
innobase/trx/trx0trx.c:
Add some more safety margin to buffer sizes in prints
innobase/lock/lock0lock.c:
Add some more safety margin to buffer sizes in prints
innobase/include/trx0trx.h:
Add some more safety margin to buffer sizes in prints
sql/ha_innobase.cc:
Add some more safety margin to buffer sizes in prints
Remove the complex typecast used to convert a HP-UX pthread struct to os_thread_id_t; the typecast seemed to work wrong in gcc-3.1 on HP-UX-10.20
innobase/os/os0thread.c:
Remove the complex typecast used to convert a HP-UX pthread struct to os_thread_id_t; the typecast seemed to work wrong in gcc-3.1 on HP-UX-10.20
Merge InnoDB-3.23.52c
ha_innobase.cc:
Test the ref length sanity also in the production version
sql/ha_innobase.cc:
Test the ref length sanity also in the production version
innobase/btr/btr0cur.c:
Merge InnoDB-3.23.52c
innobase/buf/buf0buf.c:
Merge InnoDB-3.23.52c
innobase/buf/buf0lru.c:
Merge InnoDB-3.23.52c
innobase/ha/ha0ha.c:
Merge InnoDB-3.23.52c
innobase/log/log0recv.c:
Merge InnoDB-3.23.52c
innobase/mtr/mtr0log.c:
Merge InnoDB-3.23.52c
innobase/os/os0file.c:
Merge InnoDB-3.23.52c
innobase/page/page0cur.c:
Merge InnoDB-3.23.52c
innobase/include/btr0btr.h:
Merge InnoDB-3.23.52c
innobase/include/dyn0dyn.h:
Merge InnoDB-3.23.52c
innobase/include/log0recv.h:
Merge InnoDB-3.23.52c
innobase/include/buf0buf.ic:
Merge InnoDB-3.23.52c
innobase/include/log0log.ic:
Merge InnoDB-3.23.52c
Added back 'static inline', as not having this caused more problems than having it
Fixed wrong arguments to printf()
innobase/buf/buf0buf.c:
Fixed wrong argument to printf()
innobase/fsp/fsp0fsp.c:
Fixed wrong argument to printf()
innobase/include/btr0btr.h:
Removed UNIV_INLINE for functions that should not be inlined
innobase/include/dyn0dyn.h:
Removed UNIV_INLINE for functions that should not be inlined
innobase/include/univ.i:
Added back 'static inline', as not having this caused more problems than having it
Removed some compiler warnings regarding 'static' from InnoDB
Docs/manual.texi:
Fixed wrong manual entry
innobase/btr/btr0cur.c:
Fixed wrong printf() string
innobase/include/univ.i:
Removed compiler warnings (static inline produces a lot of warnings and is probably not portable)
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
sql/ha_innobase.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
sql/ha_innobase.cc:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/buf/buf0buf.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/dict/dict0dict.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/fil/fil0fil.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/fsp/fsp0fsp.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/ha/ha0ha.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/dict0dict.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/dict0mem.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/dyn0dyn.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/fsp0fsp.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/log0log.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/log0recv.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/trx0sys.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/trx0trx.h:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/include/log0log.ic:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/lock/lock0lock.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/log/log0log.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/log/log0recv.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/mem/mem0dbg.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/row/row0mysql.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/srv/srv0srv.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/srv/srv0start.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/trx/trx0sys.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
innobase/trx/trx0trx.c:
Merge InnoDB-3.23.52c; improve AUTO-INC algorithm with SHOW TABLE STATUS; new checksum in log
Backport the AIX crash fix changes from 4.0
innobase/include/dyn0dyn.h:
Backport the AIX crash fix changes from 4.0
innobase/include/dyn0dyn.ic:
Backport the AIX crash fix changes from 4.0
Add diagnostic code to track a probable table corruption reported by a user
innobase/row/row0vers.c:
Add diagnostic code to track a probable table corruption reported by a user
Make the typecast trick pthread_t -> os_thread_id_t safer, but a full fix needs usage of appropriate Posix functions
innobase/configure.in:
Make the typecast trick pthread_t -> os_thread_id_t safer, but a full fix needs usage of appropriate Posix functions
innobase/os/os0thread.c:
Make the typecast trick pthread_t -> os_thread_id_t safer, but a full fix needs usage of appropriate Posix functions
Fix a bug in the storage of the SQL NULL value in 64-bit computers: the value code must fit in 32 bits
innobase/include/univ.i:
Fix a bug in the storage of the SQL NULL value in 64-bit computers: the value code must fit in 32 bits
Revert the test changes to wait for a full push of new auto-inc algorithm
innobase/dict/dict0dict.c:
Revert the test changes to wait for a full push of new auto-inc algorithm
Do not perform ON DELETE action for a FOREIGN KEY constraint if we are doing an UPDATE, not a DELETE
dict0dict.c:
test
innobase/dict/dict0dict.c:
test
innobase/row/row0ins.c:
Do not perform ON DELETE action for a FOREIGN KEY constraint if we are doing an UPDATE, not a DELETE
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
innobase/os/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
Align the buffer used in initing a data file to zero; this may be needed if the data file is actually a raw device
innobase/os/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
Increase max number of waiting threads to 10000 and put diagnostic prints if this value is exceeded
innobase/srv/srv0srv.c:
Increase max number of waiting threads to 10000 and put diagnostic prints if this value is exceeded
innobase/include/os0thread.h:
Increase max number of waiting threads to 10000 and put diagnostic prints if this value is exceeded
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
innobase/srv/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
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
innobase/btr/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
innobase/row/row0ins.c:
The UNIV_DEBUG version asserted if a foreign key check failed because of a lock wait timeout
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
innobase/include/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
Crash the server if file flush does not succeed: the database can get corrupt, better to crash it than let it run
innobase/os/os0file.c:
Crash the server if file flush does not succeed: the database can get corrupt, better to crash it than let it run
Initing a mutex with MY_MUTEX_INIT_FAST may relieve thread thrashing on Linux
innobase/os/os0sync.c:
Initing a mutex with MY_MUTEX_INIT_FAST may relieve thread thrashing on Linux
Play safe and set a MySQL 1 - 12 byte BLOB reference to zero except for the length and pointer areas in it
innobase/row/row0mysql.c:
Play safe and set a MySQL 1 - 12 byte BLOB reference to zero except for the length and pointer areas in it
Monty said an SQL NULL BLOB field must have NULL as the data pointer value
innobase/row/row0sel.c:
Monty said an SQL NULL BLOB field must have NULL as the data pointer value
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
innobase/row/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
innobase/row/row0mysql.c:
Add some diagnostic code to track BLOB bugs if they were not already fixed with the change in row0sel.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
innobase/row/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
Make possible switch off X86 assembler usage in Windows: needed for the Itanium port
innobase/include/univ.i:
Make possible switch off X86 assembler usage in Windows: needed for the Itanium port
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/btr/btr0cur.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/dict/dict0crea.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/dict/dict0dict.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/dict/dict0load.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/dict/dict0mem.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/btr0btr.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/dict0mem.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/ibuf0ibuf.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/os0file.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/os0sync.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/row0mysql.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/row0upd.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/sync0sync.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/trx0sys.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/trx0trx.h:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/ibuf0ibuf.ic:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/os0sync.ic:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/sync0sync.ic:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/include/trx0sys.ic:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/lock/lock0lock.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/pars/pars0opt.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/que/que0que.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/row/row0ins.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/row/row0mysql.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/row/row0sel.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/row/row0upd.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/srv/srv0srv.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/sync/sync0sync.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/trx/trx0sys.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
innobase/trx/trx0trx.c:
Implement ON DELETE CASCADE and facilitate switching off of UNIQUE constraints and foreign keys
Forgot to merge these to 3.23.50
innobase/include/sync0rw.ic:
Forgot to merge these to 3.23.50
innobase/include/ut0byte.ic:
Forgot to merge these to 3.23.50
If the string foreign was succeeded by a non-space character, that confused the foreign key syntax parser
innobase/dict/dict0dict.c:
If the string foreign was succeeded by a non-space character, that confused the foreign key syntax parser
Add a warning to drop database wait if there are still open handles on a table
innobase/row/row0mysql.c:
Add a warning to drop database wait if there are still open handles on a table
Add some more safety if MySQL tries to drop a table on which there are open handles
sql/ha_innobase.cc:
Add some more safety if MySQL tries to drop a table on which there are open handles
innobase/row/row0mysql.c:
Add some more safety if MySQL tries to drop a table on which there are open handles
innobase/dict/dict0dict.c:
Add some more safety if MySQL tries to drop a table on which there are open handles
innobase/include/dict0dict.h:
Add some more safety if MySQL tries to drop a table on which there are open handles
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
sql/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
innobase/row/row0mysql.c:
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
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
innobase/srv/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
Add some error messages to help in tracking Harald Fuchs' foreign key failure
innobase/dict/dict0crea.c:
Add some error messages to help in tracking Harald Fuchs' foreign key failure
Prevent a foreign key constraint references between INT columns where the signedness is different
innobase/rem/rem0cmp.c:
Prevent a foreign key constraint references between INT columns where the signedness is different
Small improvements
row0mysql.c:
Small improvements + fix the ALTER TABLE problem by introducing a lazy drop table it can use
ha_innobase.cc:
Some fine-tuning of optimization
sql/ha_innobase.cc:
Some fine-tuning of optimization
innobase/include/log0recv.h:
Small improvements
innobase/include/mem0mem.h:
Small improvements
innobase/include/mem0pool.h:
Small improvements
innobase/include/row0mysql.h:
Small improvements
innobase/include/srv0srv.h:
Small improvements
innobase/include/trx0trx.h:
Small improvements
innobase/buf/buf0lru.c:
Small improvements
innobase/fil/fil0fil.c:
Small improvements
innobase/log/log0recv.c:
Small improvements
innobase/mem/mem0mem.c:
Small improvements
innobase/mem/mem0pool.c:
Small improvements
innobase/row/row0mysql.c:
Small improvements + fix the ALTER TABLE problem by introducing a lazy drop table it can use
innobase/srv/srv0srv.c:
Small improvements
innobase/srv/srv0start.c:
Small improvements
innobase/trx/trx0purge.c:
Small improvements
innobase/trx/trx0trx.c:
Small improvements
Fine-tune optimization parameters; in small tables the estimates are accurate; in big tables let us not be too optimistic about index selectivity
sql/ha_innobase.cc:
Fine-tune optimization parameters; in small tables the estimates are accurate; in big tables let us not be too optimistic about index selectivity
innobase/btr/btr0cur.c:
Fine-tune optimization parameters; in small tables the estimates are accurate; in big tables let us not be too optimistic about index selectivity