| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed unused code
.del-os0trash.c~8cae5c1695501117:
Delete: innobase/os/os0trash.c
dict0crea.c:
Protect all sprintf(%s) with assertions
BitKeeper/deleted/.del-os0trash.c~8cae5c1695501117:
Delete: innobase/os/os0trash.c
innobase/btr/btr0sea.c:
Removed unused code
innobase/buf/buf0buf.c:
Removed unused code
innobase/com/com0shm.c:
Removed unused code
innobase/data/data0data.c:
Removed unused code
innobase/dict/dict0crea.c:
Removed unused code
innobase/fsp/fsp0fsp.c:
Removed unused code
innobase/ha/ha0ha.c:
Removed unused code
innobase/include/btr0cur.h:
Removed unused code
innobase/include/btr0sea.h:
Removed unused code
innobase/include/buf0buf.ic:
Removed unused code
innobase/include/data0data.h:
Removed unused code
innobase/include/dict0crea.h:
Removed unused code
innobase/include/dict0dict.h:
Removed unused code
innobase/include/ibuf0ibuf.h:
Removed unused code
innobase/include/lock0lock.h:
Removed unused code
innobase/include/mem0dbg.h:
Removed unused code
innobase/include/mem0mem.ic:
Removed unused code
innobase/include/mtr0log.h:
Removed unused code
innobase/include/mtr0mtr.h:
Removed unused code
innobase/include/os0proc.h:
Removed unused code
innobase/include/os0thread.h:
Removed unused code
innobase/include/rem0cmp.ic:
Removed unused code
innobase/include/row0row.h:
Removed unused code
innobase/include/srv0srv.h:
Removed unused code
innobase/include/sync0sync.h:
Removed unused code
innobase/lock/lock0lock.c:
Removed unused code
innobase/log/log0recv.c:
Removed unused code
innobase/mem/mem0dbg.c:
Removed unused code
innobase/mtr/mtr0mtr.c:
Removed unused code
innobase/os/os0proc.c:
Removed unused code
innobase/page/page0page.c:
Removed unused code
innobase/que/que0que.c:
Removed unused code
innobase/rem/rem0cmp.c:
Removed unused code
innobase/row/row0ins.c:
Removed unused code
innobase/row/row0mysql.c:
Removed unused code
innobase/row/row0row.c:
Removed unused code
innobase/srv/srv0srv.c:
Removed unused code
innobase/srv/srv0start.c:
Removed unused code
innobase/sync/sync0sync.c:
Removed unused code
innobase/trx/trx0rec.c:
Removed unused code
innobase/trx/trx0trx.c:
Removed unused code
innobase/ut/ut0dbg.c:
Removed unused code
innobase/ut/ut0mem.c:
Removed unused code
innobase/ut/ut0ut.c:
Removed unused code
|
|
|
|
|
|
|
| |
innobase/include/srv0start.h:
Remove unused functions
innobase/srv/srv0start.c:
srv_add_path_separator_if_needed: Replace sprintf with memcpy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
innobase/srv/srv0srv.c:
Removed unused code
BitKeeper/deleted/.del-FSP0FSP.C~f1c7e596cadd429:
Delete: innobase/fsp/trash/FSP0FSP.C
BitKeeper/deleted/.del-log0trsh.c~ebdd6ce463d8bf0:
Delete: innobase/log/trash/log0trsh.c
BitKeeper/deleted/.del-os0fileold.c~7be518438162e2f:
Delete: innobase/os/os0fileold.c
innobase/include/usr0sess.h:
Remove unused functions
innobase/lock/lock0lock.c:
Remove commented-out call to deleted function sess_raise_error_low()
innobase/trx/trx0trx.c:
Remove commented-out or unreachable calls to deleted function sess_raise_error_low()
innobase/usr/usr0sess.c:
Remove unused functions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove leading whitespace from lines containing preprocessor directives
Makefile.am:
Remove univold.i and univoldmysql.i
innobase/include/Makefile.am:
Remove univold.i and univoldmysql.i
innobase/buf/buf0buf.c:
Remove leading whitespace from lines containing preprocessor directives
innobase/include/mem0mem.ic:
Remove leading whitespace from lines containing preprocessor directives
innobase/include/sync0rw.ic:
Remove leading whitespace from lines containing preprocessor directives
innobase/include/sync0sync.ic:
Remove leading whitespace from lines containing preprocessor directives
innobase/include/ut0rnd.ic:
Remove leading whitespace from lines containing preprocessor directives
innobase/mem/mem0dbg.c:
Remove leading whitespace from lines containing preprocessor directives
innobase/mem/mem0mem.c:
Remove leading whitespace from lines containing preprocessor directives
innobase/sync/sync0rw.c:
Remove leading whitespace from lines containing preprocessor directives
innobase/sync/sync0sync.c:
Remove leading whitespace from lines containing preprocessor directives
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
.del-univoldmysql.i~9253a6f92058c565:
Delete: innobase/include/univoldmysql.i
.del-univold.i~4b5ed652407f63f1:
Delete: innobase/include/univold.i
.del-tsut.c~4a154913fc9cd5c0:
Delete: innobase/ut/ts/tsut.c
.del-makefile~9b8356bbdb8bd94e:
Delete: innobase/ut/ts/makefile
.del-tsttrxold.c~eb6fd6091405d54e:
Delete: innobase/trx/ts/tsttrxold.c
.del-tstrx.c~5425c98548ec1e0d:
Delete: innobase/trx/ts/tstrx.c
.del-makefile~16d63c17c8edf62a:
Delete: innobase/trx/ts/makefile
.del-tsthr.c~b095667070d626a9:
Delete: innobase/thr/ts/tsthr.c
.del-makefile~d5e4661188c1939d:
Delete: innobase/thr/ts/makefile
.del-tssync.c~fed4676cd4eb8457:
Delete: innobase/sync/ts/tssync.c
.del-makefile~f23368879649c806:
Delete: innobase/sync/ts/makefile
.del-tssrv.c~b8a6f5ad9ae639c8:
Delete: innobase/srv/ts/tssrv.c
.del-tsdbc.c~d36206bdccf338f:
Delete: innobase/srv/ts/tsdbc.c
.del-makefile~da6e87ef29c12dca:
Delete: innobase/srv/ts/makefile
.del-tstcur.c~a9d5cf73b020ec41:
Delete: innobase/row/ts/tstcur.c
.del-makefile~2cdfe39689004e6:
Delete: innobase/row/ts/makefile
.del-tsrem.c~bb4e1e2e8c2ee179:
Delete: innobase/rem/ts/tsrem.c
.del-makefile~3e48a33b4970faef:
Delete: innobase/rem/ts/makefile
.del-tspage.c~f5baf63f9924e43b:
Delete: innobase/page/ts/tspage.c
.del-makefile~66de73bc499566f9:
Delete: innobase/page/ts/makefile
.del-tsosaux.c~9ec97a83392a984c:
Delete: innobase/os/ts/tsosaux.c
.del-tsos.c~f6057d3c171f5915:
Delete: innobase/os/ts/tsos.c
.del-makefile~9a1d210afa6d666e:
Delete: innobase/os/ts/makefile
.del-tsmtr.c~293250c7ebfe0d3:
Delete: innobase/mtr/ts/tsmtr.c
.del-tsbuf.c~e8d15ee095194d2c:
Delete: innobase/mtr/ts/tsbuf.c
.del-makefile~fdf4c2a4ddb23230:
Delete: innobase/mtr/ts/makefile
.del-tsmem.c~cc483e2ab96e625c:
Delete: innobase/mem/ts/tsmem.c
.del-makefile~6d58ab1de0ac572:
Delete: innobase/mem/ts/makefile
.del-tsmach.c~af65166bb53ddfe9:
Delete: innobase/mach/ts/tsmach.c
.del-makefile~b8cbd25992ee51b:
Delete: innobase/mach/ts/makefile
.del-tsha.c~13dd5ea03fda370c:
Delete: innobase/ha/ts/tsha.c
.del-makefile~1bf12ce7b2dadfd5:
Delete: innobase/ha/ts/makefile
.del-tsfsp.c~890ead1636f0eaba:
Delete: innobase/fsp/ts/tsfsp.c
.del-makefile~a466e9eb27493a80:
Delete: innobase/fsp/ts/makefile
.del-del.c~35c6283be580200:
Delete: innobase/fsp/ts/del.c
.del-tsfil.c~e554b6f3c189c081:
Delete: innobase/fil/ts/tsfil.c
.del-makefile~1df6f952a960fef4:
Delete: innobase/fil/ts/makefile
.del-tsdyn.c~6f976764b53f3191:
Delete: innobase/dyn/ts/tsdyn.c
.del-makefile~f64427335fafdc65:
Delete: innobase/dyn/ts/makefile
.del-tsdict.c~5e82f7b8ac2b2e15:
Delete: innobase/dict/ts/tsdict.c
.del-makefile~6356c424e9747647:
Delete: innobase/dict/ts/makefile
.del-tscom.c~26aae2c5c4ca1dce:
Delete: innobase/com/ts/tscom.c
.del-tscli.c~2f3e4b281141eac2:
Delete: innobase/com/ts/tscli.c
.del-makefile~608fd39568db7238:
Delete: innobase/com/ts/makefile
.del-tsos.c~1dadfc1ef69f2ba3:
Delete: innobase/buf/ts/tsos.c
.del-tsbuf.c~b4c3feee158ef154:
Delete: innobase/buf/ts/tsbuf.c
.del-makefile~598acb06bf1e466:
Delete: innobase/buf/ts/makefile
.del-tscli.c~8d35740cc1f6f864:
Delete: innobase/btr/ts/trash/tscli.c
.del-tssrv.c~ee30b746c485aec:
Delete: innobase/btr/ts/tssrv.c
.del-tss.c~21ae628550141a68:
Delete: innobase/btr/ts/tss.c
.del-tsrecv97.c~dbeb3bc494b241c1:
Delete: innobase/btr/ts/tsrecv97.c
.del-tsrecv.c~3415f8a936a8d9fd:
Delete: innobase/btr/ts/tsrecv.c
.del-tscli.c~77fc1962db99aa2e:
Delete: innobase/btr/ts/tscli.c
.del-tsbtrold5.c~72a60e768c944904:
Delete: innobase/btr/ts/trash/tsbtrold5.c
.del-tsbtrins.c~3e3bb3f95f058b46:
Delete: innobase/btr/ts/tsbtrins.c
.del-TSIT.C~f53cce6fab8d325:
Delete: innobase/btr/ts/trash/TSIT.C
.del-tsbtrfull.c~fbcbe41b64cc71b6:
Delete: innobase/btr/ts/tsbtrfull.c
.del-tsbtr97.c~84dbb84ea9fa267c:
Delete: innobase/btr/ts/tsbtr97.c
.del-makefile~491918b4162b927c:
Delete: innobase/btr/ts/makefile
.del-isql.c~bc0b8cc213905175:
Delete: innobase/btr/ts/isql.c
BitKeeper/deleted/.del-isql.c~bc0b8cc213905175:
Delete: innobase/btr/ts/isql.c
BitKeeper/deleted/.del-makefile~491918b4162b927c:
Delete: innobase/btr/ts/makefile
BitKeeper/deleted/.del-tsbtr97.c~84dbb84ea9fa267c:
Delete: innobase/btr/ts/tsbtr97.c
BitKeeper/deleted/.del-tsbtrfull.c~fbcbe41b64cc71b6:
Delete: innobase/btr/ts/tsbtrfull.c
BitKeeper/deleted/.del-TSIT.C~f53cce6fab8d325:
Delete: innobase/btr/ts/trash/TSIT.C
BitKeeper/deleted/.del-tsbtrins.c~3e3bb3f95f058b46:
Delete: innobase/btr/ts/tsbtrins.c
BitKeeper/deleted/.del-tsbtrold5.c~72a60e768c944904:
Delete: innobase/btr/ts/trash/tsbtrold5.c
BitKeeper/deleted/.del-tscli.c~77fc1962db99aa2e:
Delete: innobase/btr/ts/tscli.c
BitKeeper/deleted/.del-tsrecv.c~3415f8a936a8d9fd:
Delete: innobase/btr/ts/tsrecv.c
BitKeeper/deleted/.del-tsrecv97.c~dbeb3bc494b241c1:
Delete: innobase/btr/ts/tsrecv97.c
BitKeeper/deleted/.del-tss.c~21ae628550141a68:
Delete: innobase/btr/ts/tss.c
BitKeeper/deleted/.del-tssrv.c~ee30b746c485aec:
Delete: innobase/btr/ts/tssrv.c
BitKeeper/deleted/.del-tscli.c~8d35740cc1f6f864:
Delete: innobase/btr/ts/trash/tscli.c
BitKeeper/deleted/.del-makefile~598acb06bf1e466:
Delete: innobase/buf/ts/makefile
BitKeeper/deleted/.del-tsbuf.c~b4c3feee158ef154:
Delete: innobase/buf/ts/tsbuf.c
BitKeeper/deleted/.del-tsos.c~1dadfc1ef69f2ba3:
Delete: innobase/buf/ts/tsos.c
BitKeeper/deleted/.del-makefile~608fd39568db7238:
Delete: innobase/com/ts/makefile
BitKeeper/deleted/.del-tscli.c~2f3e4b281141eac2:
Delete: innobase/com/ts/tscli.c
BitKeeper/deleted/.del-tscom.c~26aae2c5c4ca1dce:
Delete: innobase/com/ts/tscom.c
BitKeeper/deleted/.del-makefile~6356c424e9747647:
Delete: innobase/dict/ts/makefile
BitKeeper/deleted/.del-tsdict.c~5e82f7b8ac2b2e15:
Delete: innobase/dict/ts/tsdict.c
BitKeeper/deleted/.del-makefile~f64427335fafdc65:
Delete: innobase/dyn/ts/makefile
BitKeeper/deleted/.del-tsdyn.c~6f976764b53f3191:
Delete: innobase/dyn/ts/tsdyn.c
BitKeeper/deleted/.del-makefile~1df6f952a960fef4:
Delete: innobase/fil/ts/makefile
BitKeeper/deleted/.del-tsfil.c~e554b6f3c189c081:
Delete: innobase/fil/ts/tsfil.c
BitKeeper/deleted/.del-del.c~35c6283be580200:
Delete: innobase/fsp/ts/del.c
BitKeeper/deleted/.del-makefile~a466e9eb27493a80:
Delete: innobase/fsp/ts/makefile
BitKeeper/deleted/.del-tsfsp.c~890ead1636f0eaba:
Delete: innobase/fsp/ts/tsfsp.c
BitKeeper/deleted/.del-makefile~1bf12ce7b2dadfd5:
Delete: innobase/ha/ts/makefile
BitKeeper/deleted/.del-tsha.c~13dd5ea03fda370c:
Delete: innobase/ha/ts/tsha.c
BitKeeper/deleted/.del-makefile~b8cbd25992ee51b:
Delete: innobase/mach/ts/makefile
BitKeeper/deleted/.del-tsmach.c~af65166bb53ddfe9:
Delete: innobase/mach/ts/tsmach.c
BitKeeper/deleted/.del-makefile~6d58ab1de0ac572:
Delete: innobase/mem/ts/makefile
BitKeeper/deleted/.del-tsmem.c~cc483e2ab96e625c:
Delete: innobase/mem/ts/tsmem.c
BitKeeper/deleted/.del-makefile~fdf4c2a4ddb23230:
Delete: innobase/mtr/ts/makefile
BitKeeper/deleted/.del-tsbuf.c~e8d15ee095194d2c:
Delete: innobase/mtr/ts/tsbuf.c
BitKeeper/deleted/.del-tsmtr.c~293250c7ebfe0d3:
Delete: innobase/mtr/ts/tsmtr.c
BitKeeper/deleted/.del-makefile~9a1d210afa6d666e:
Delete: innobase/os/ts/makefile
BitKeeper/deleted/.del-tsos.c~f6057d3c171f5915:
Delete: innobase/os/ts/tsos.c
BitKeeper/deleted/.del-tsosaux.c~9ec97a83392a984c:
Delete: innobase/os/ts/tsosaux.c
BitKeeper/deleted/.del-makefile~66de73bc499566f9:
Delete: innobase/page/ts/makefile
BitKeeper/deleted/.del-tspage.c~f5baf63f9924e43b:
Delete: innobase/page/ts/tspage.c
BitKeeper/deleted/.del-makefile~3e48a33b4970faef:
Delete: innobase/rem/ts/makefile
BitKeeper/deleted/.del-tsrem.c~bb4e1e2e8c2ee179:
Delete: innobase/rem/ts/tsrem.c
BitKeeper/deleted/.del-makefile~2cdfe39689004e6:
Delete: innobase/row/ts/makefile
BitKeeper/deleted/.del-tstcur.c~a9d5cf73b020ec41:
Delete: innobase/row/ts/tstcur.c
BitKeeper/deleted/.del-makefile~da6e87ef29c12dca:
Delete: innobase/srv/ts/makefile
BitKeeper/deleted/.del-tsdbc.c~d36206bdccf338f:
Delete: innobase/srv/ts/tsdbc.c
BitKeeper/deleted/.del-tssrv.c~b8a6f5ad9ae639c8:
Delete: innobase/srv/ts/tssrv.c
BitKeeper/deleted/.del-makefile~f23368879649c806:
Delete: innobase/sync/ts/makefile
BitKeeper/deleted/.del-tssync.c~fed4676cd4eb8457:
Delete: innobase/sync/ts/tssync.c
BitKeeper/deleted/.del-makefile~d5e4661188c1939d:
Delete: innobase/thr/ts/makefile
BitKeeper/deleted/.del-tsthr.c~b095667070d626a9:
Delete: innobase/thr/ts/tsthr.c
BitKeeper/deleted/.del-makefile~16d63c17c8edf62a:
Delete: innobase/trx/ts/makefile
BitKeeper/deleted/.del-tstrx.c~5425c98548ec1e0d:
Delete: innobase/trx/ts/tstrx.c
BitKeeper/deleted/.del-tsttrxold.c~eb6fd6091405d54e:
Delete: innobase/trx/ts/tsttrxold.c
BitKeeper/deleted/.del-makefile~9b8356bbdb8bd94e:
Delete: innobase/ut/ts/makefile
BitKeeper/deleted/.del-tsut.c~4a154913fc9cd5c0:
Delete: innobase/ut/ts/tsut.c
BitKeeper/deleted/.del-univold.i~4b5ed652407f63f1:
Delete: innobase/include/univold.i
BitKeeper/deleted/.del-univoldmysql.i~9253a6f92058c565:
Delete: innobase/include/univoldmysql.i
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
sql/ha_innodb.cc:
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
sql/sql_insert.cc:
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
sql/ha_innodb.h:
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
sql/handler.h:
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
innobase/dict/dict0dict.c:
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
innobase/include/dict0dict.h:
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
innobase/row/row0mysql.c:
Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table
|
|
|
|
|
|
|
|
| |
Fix crash in InnoDB RENAME TABLE if 'databasename/tablename' is shorter than 5 characters (Bug #2689); reported by Sergey Petrunia
innobase/row/row0mysql.c:
Fix crash in InnoDB RENAME TABLE if 'databasename/tablename' is shorter than 5 characters (Bug #2689); reported by Sergey Petrunia
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
innobase/dict/dict0crea.c:
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
innobase/dict/dict0dict.c:
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
innobase/include/dict0crea.h:
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
innobase/include/dict0dict.h:
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
innobase/include/ut0mem.h:
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
innobase/row/row0mysql.c:
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
innobase/sync/sync0sync.c:
UNIV_SYNC_DEBUG caused assertion in the creation of the doublewrite buffer, if we do not allow thousands of latches per thread
innobase/ut/ut0mem.c:
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
BUILD/compile-pentium-max:
Added --with-raid
configure.in:
Added testing of pthread_key_delete (to fix compile problem on SCO) (Bug #2461)
include/my_pthread.h:
Added testing of pthread_key_delete (to fix compile problem on SCO) (Bug #2461)
innobase/include/data0data.ic:
Added missing newline
mysql-test/r/raid.result:
Test of DROP DATABASE with RAID directories in hex
mysql-test/t/raid.test:
Test of DROP DATABASE with RAID directories in hex
sql/sql_db.cc:
DROP DATABASE could not drop databases with RAID tables that had
more than 9 RAID_CHUNKS because DROP DATABASE assumed raid tables where in decimal while the RAID CREATE code assumed directories was in hex.(Bug #2627)
sql/sql_select.cc:
Don't increment 'select_full_range' and similar statistics for EXPLAIN queries. (Bug #2506)
sql/sql_udf.cc:
mysqld crashed if mysql.func table didn't exists (Bug #2577)
|
|
|
|
|
|
|
|
| |
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
innobase/dict/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
|
|
|
|
|
|
|
|
| |
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
innobase/dict/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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
sql/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
sql/ha_innodb.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
innobase/row/row0mysql.c:
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
innobase/dict/dict0dict.c:
Remove redundant code; parse both the database name and the table name in a FOREIGN KEY constraint with quotes in mind
|
|
|
|
|
|
|
|
| |
Cleanup
innobase/dict/dict0dict.c:
Cleanup
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handle quoted identifiers and identifiers with space. (Bug #1725)
Fix optimizer tuning bug when first used key part was a constant. (Bug #1679)
innobase/dict/dict0dict.c:
Fixed parsing of column names and foreign key constraints to handle quoted identifiers and identifiers with space. (Bug #1725)
mysql-test/r/innodb.result:
Test of innodb internal parsing
mysql-test/t/innodb.test:
Test of innodb internal parsing
sql/sql_class.cc:
Safety fix for select into outfile and select into dumpfile. Before calling send_error() could cause end_io_cache() to be called several times.
sql/sql_class.h:
Add path to dumpfile so that we can delete the generated file if something goes wrong.
sql/sql_select.cc:
Fix optimizer tuning bug when first used key part was a constant.
Previously all keys that had this key part first was regarded as equal, even if the query used more key parts for some of the keys.
Now we use the range optimizer results to just limit the number of estimated rows if not all key parts where constants.
(Bug #1679)
|
|
|
|
|
|
|
|
| |
Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers
innobase/btr/btr0cur.c:
Fix bug: InnoDB row count and index cardinality estimates wrapped over at 512 million in 32-bit computers
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
innobase/row/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
innobase/include/data0data.h:
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
innobase/include/data0data.ic:
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
|
|
|
|
|
|
|
|
| |
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.
innobase/row/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.
|
|
|
|
|
|
|
|
| |
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
innobase/buf/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
|
|
|
|
|
|
|
|
| |
DO NOT MERGE TO 4.1: forgot to change this in the previous push
innobase/trx/trx0sys.c:
DO NOT MERGE TO 4.1: forgot to change this in the previous push
|
|
|
|
|
|
|
|
| |
DO NOT MERGE TO 4.1: charset changes can cause problems in a downgrade 4.1.1 -> 4.0.18
innobase/trx/trx0sys.c:
DO NOT MERGE TO 4.1: charset changes can cause problems in a downgrade 4.1.1 -> 4.0.18
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
innobase/include/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
innobase/include/trx0sys.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
innobase/ibuf/ibuf0ibuf.c:
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
innobase/srv/srv0start.c:
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
innobase/trx/trx0sys.c:
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
|
|
|
|
|
|
|
|
| |
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).
innobase/log/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).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
innobase/include/sync0sync.ic:
Remove inadvertently pushed sync debug code
innobase/include/row0upd.h:
Correct typing error
innobase/row/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
innobase/btr/btr0cur.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
|
|
|
|
|
|
|
|
|
|
| |
Remove wrong debug assertion and comment
innobase/row/row0upd.c:
Remove wrong debug assertion and comment
innobase/include/row0upd.h:
Remove wrong debug assertion and comment
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
innobase/row/row0ins.c:
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
innobase/row/row0sel.c:
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
innobase/row/row0upd.c:
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
innobase/row/row0vers.c:
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
innobase/btr/btr0cur.c:
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
innobase/include/btr0cur.h:
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
innobase/include/row0upd.h:
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
innobase/include/sync0sync.ic:
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
innobase/lock/lock0lock.c:
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
|
|
|
|
|
|
|
|
| |
If innodb_force_recovery >= 5, do not try to fetch an old version of a clustered index record: this reduces crashes when dumping tables from a corrupt database
innobase/row/row0sel.c:
If innodb_force_recovery >= 5, do not try to fetch an old version of a clustered index record: this reduces crashes when dumping tables from a corrupt database
|
|
|
|
|
|
|
|
| |
Check that writes to data files always happen in to addresses divisible by 16 kB, and the chunk size is also divisible by 16 kB; a user reported 2 corrupt pages from Linux-2.4.20 where an index page seemed displaced
innobase/os/os0file.c:
Check that writes to data files always happen in to addresses divisible by 16 kB, and the chunk size is also divisible by 16 kB; a user reported 2 corrupt pages from Linux-2.4.20 where an index page seemed displaced
|
|
|
|
|
|
|
|
| |
Check that writes to data files always happen in to addresses divisible by 16 kB, and the chunk size is also divisible by 16 kB; a user reported 2 corrupt pages from Linux-2.4.20 where an index page seemed displaced
innobase/os/os0file.c:
Check that writes to data files always happen in to addresses divisible by 16 kB, and the chunk size is also divisible by 16 kB; a user reported 2 corrupt pages from Linux-2.4.20 where an index page seemed displaced
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
sql/ha_innodb.cc:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
innobase/include/os0thread.h:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
innobase/include/srv0srv.h:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
innobase/srv/srv0srv.c:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
innobase/srv/srv0start.c:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
innobase/thr/thr0loc.c:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
|
|
|
|
|
|
|
|
| |
Remove unintentional changes in previous push
innobase/row/row0mysql.c:
Remove unintentional changes in previous push
|
|
|
|
|
|
|
|
| |
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
innobase/row/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
|
|
|
|
|
|
|
|
| |
Fix buglets in previous push
innobase/row/row0sel.c:
Fix buglets in previous push
|
|
|
|
|
|
|
|
| |
Fix bug: if a primary key contains more than one column, then MySQL seems to do fetch next even for a unique search condition: this in turn caused unnecessary locking which did not agree what the InnoDB manual promised
innobase/row/row0sel.c:
Fix bug: if a primary key contains more than one column, then MySQL seems to do fetch next even for a unique search condition: this in turn caused unnecessary locking which did not agree what the InnoDB manual promised
|
|
|
|
|
|
|
| |
function calls are present inside an expanded inline function
innobase/fsp/fsp0fsp.c:
Added seperate error message to avoid VC++ 6.0 compiler bug
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix bug: if the user created a prefix column key on a fixed length char column, then InnoDB claimed in CHECK TABLE that the table is corrupt
dict0dict.c:
Fix bug 1151: if the user created a prefix column primary key on a fixed length char column, then InnoDB crashed in a simple SELECT
innobase/dict/dict0dict.c:
Fix bug 1151: if the user created a prefix column primary key on a fixed length char column, then InnoDB crashed in a simple SELECT
innobase/btr/btr0btr.c:
Fix bug: if the user created a prefix column key on a fixed length char column, then InnoDB claimed in CHECK TABLE that the table is corrupt
|
|
|
|
|
|
|
|
| |
strerror() does not work in Windows
innobase/os/os0file.c:
strerror() does not work in Windows
|
|
|
|
|
|
|
|
| |
Fix assertion failure reported by Alex Kiernan when we compile with the SUN Forte Developer 7 C 5.4 compiler
innobase/log/log0log.c:
Fix assertion failure reported by Alex Kiernan when we compile with the SUN Forte Developer 7 C 5.4 compiler
|
|
|
|
|
|
|
|
| |
Fix bug introduced in 4.0.13 and reported by Emic: if a CREATE TABLE ended in a comment, a memory overrun could happen
innobase/dict/dict0dict.c:
Fix bug introduced in 4.0.13 and reported by Emic: if a CREATE TABLE ended in a comment, a memory overrun could happen
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Merge
trx0trx.c:
Print more info about a trx in SHOW INNODB status; try to find the bug reported by Plaxo
buf0buf.c:
Check that page log sequence numbers are not in the future
log0recv.c, log0log.c:
Fixed a bug: if you used big BLOBs, and your log files were relatively small, InnoDB could in a big BLOB operation temporarily write over the log produced AFTER the latest checkpoint. If InnoDB would crash at that moment, then the crash recovery would fail, because InnoDB would not be able to scan the log even up to the latest checkpoint. Starting from this version, InnoDB tries to ensure the latest checkpoint is young enough. If that is not possible, InnoDB prints a warning to the .err log
innobase/log/log0log.c:
Fixed a bug: if you used big BLOBs, and your log files were relatively small, InnoDB could in a big BLOB operation temporarily write over the log produced AFTER the latest checkpoint. If InnoDB would crash at that moment, then the crash recovery would fail, because InnoDB would not be able to scan the log even up to the latest checkpoint. Starting from this version, InnoDB tries to ensure the latest checkpoint is young enough. If that is not possible, InnoDB prints a warning to the .err log
innobase/log/log0recv.c:
Fixed a bug: if you used big BLOBs, and your log files were relatively small, InnoDB could in a big BLOB operation temporarily write over the log produced AFTER the latest checkpoint. If InnoDB would crash at that moment, then the crash recovery would fail, because InnoDB would not be able to scan the log even up to the latest checkpoint. Starting from this version, InnoDB tries to ensure the latest checkpoint is young enough. If that is not possible, InnoDB prints a warning to the .err log
innobase/buf/buf0buf.c:
Check that page log sequence numbers are not in the future
innobase/trx/trx0trx.c:
Print more info about a trx in SHOW INNODB status; try to find the bug reported by Plaxo
innobase/fil/fil0fil.c:
Merge
innobase/fsp/fsp0fsp.c:
Merge
innobase/include/fil0fil.h:
Merge
innobase/include/log0log.h:
Merge
innobase/include/log0recv.h:
Merge
innobase/os/os0file.c:
Merge
innobase/srv/srv0srv.c:
Merge
|
|
|
|
|
|
|
|
| |
Fix bug: if there was a 'record too long' error in an insert, InnoDB forgot to free reserved file space extents; they were only freed in mysqld restart
innobase/btr/btr0cur.c:
Fix bug: if there was a 'record too long' error in an insert, InnoDB forgot to free reserved file space extents; they were only freed in mysqld restart
|
|
|
|
|
|
|
|
| |
Fix an error in the previous push
innobase/btr/btr0cur.c:
Fix an error in the previous push
|
|
|
|
|
|
|
|
| |
Fix bug reported by Dyego Souza do Carmo: if a row becomes too long, > 8000 bytes, in an update, then InnoDB simply removes the clustered index record and does not report of table handler error 139
innobase/btr/btr0cur.c:
Fix bug reported by Dyego Souza do Carmo: if a row becomes too long, > 8000 bytes, in an update, then InnoDB simply removes the clustered index record and does not report of table handler error 139
|
|
|
|
|
|
|
|
| |
Put back a 50 millisecond sleep in too high concurrency situations which I removed in the previous push; count also such sleeping threads to the InnoDB queue in SHOW INNODB STATUS
innobase/srv/srv0srv.c:
Put back a 50 millisecond sleep in too high concurrency situations which I removed in the previous push; count also such sleeping threads to the InnoDB queue in SHOW INNODB STATUS
|
|
|
|
|
|
|
|
| |
Fix a benign bug introduced in 4.0.14: InnoDB could complain 'Error: trying to declare trx to enter InnoDB' if several threads tried to init the auto-inc counter for the same table at the same time; in theory, the bug could even lead to a hang of the server, but that shuld be extremely improbable
innobase/srv/srv0srv.c:
Fix a benign bug introduced in 4.0.14: InnoDB could complain 'Error: trying to declare trx to enter InnoDB' if several threads tried to init the auto-inc counter for the same table at the same time; in theory, the bug could even lead to a hang of the server, but that shuld be extremely improbable
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
innobase/os/os0file.c:
Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
innobase/include/os0file.h:
Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
innobase/include/srv0srv.h:
Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
innobase/srv/srv0start.c:
Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
|
|
|
|
|
|
|
|
| |
A cosmetic change: set trx id to zero at creation so that SHOW INNODB STATUS does not print a random value for the id of a transaction object for which the transaction has never been started yet (for example, running SHOW INNODB STATUS as the first command from a mysql prompt printed a random id for the trx object associated with the session itself running the SHOW INNODB STATUS command)
innobase/trx/trx0trx.c:
A cosmetic change: set trx id to zero at creation so that SHOW INNODB STATUS does not print a random value for the id of a transaction object for which the transaction has never been started yet (for example, running SHOW INNODB STATUS as the first command from a mysql prompt printed a random id for the trx object associated with the session itself running the SHOW INNODB STATUS command)
|
|
|
|
|
|
|
|
| |
Fix performance bug: if there were thousands of tables, DROP TABLE could take as much as a second CPU time
innobase/row/row0mysql.c:
Fix performance bug: if there were thousands of tables, DROP TABLE could take as much as a second CPU time
|
|
|
|
|
|
|
|
|
|
|
|
| |
In background loop run purge to completion before doing other background operations: it does not make sense to flush buffer pool pages if they are soon modified again by purge
trx0purge.c:
Increase purge_sys->n_pages_handled for every undo log we purge, even if that log would be only a hundred bytes: that way we get the purge batches of 20 pages to set a fresh purge view (limit) more often, and we can reduce the number of old row versions purge has to look at when it decides if it can remove some delete-marked index record
innobase/trx/trx0purge.c:
Increase purge_sys->n_pages_handled for every undo log we purge, even if that log would be only a hundred bytes: that way we get the purge batches of 20 pages to set a fresh purge view (limit) more often, and we can reduce the number of old row versions purge has to look at when it decides if it can remove some delete-marked index record
innobase/srv/srv0srv.c:
In background loop run purge to completion before doing other background operations: it does not make sense to flush buffer pool pages if they are soon modified again by purge
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
innobase/os/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
innobase/include/os0sync.h:
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
innobase/log/log0log.c:
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
innobase/include/log0log.h:
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
innobase/srv/srv0srv.c:
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
innobase/row/row0mysql.c:
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
innobase/trx/trx0trx.c:
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
sql/ha_innodb.cc:
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
innobase/btr/btr0btr.c:
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
|
|
|
|
|
|
|
|
| |
Fix bug: group commit still did not work when we had MySQL binlogging on
innobase/trx/trx0trx.c:
Fix bug: group commit still did not work when we had MySQL binlogging on
|