- 04 Dec, 2006 1 commit
-
-
unknown authored
with other alterations causes lost tables Using RENAME clause combined with other clauses of ALTER TABLE led to data loss (the data was there but not accessible). This could happen if the changes do not change the table much. Adding and droppping of fields and indices was safe. Renaming a column with MODIFY or CHANGE was unsafe operation, if the actual column didn't change (changing from int to int, which is a noop) Depending on the storage engine (SE) the behavior is different: 1)MyISAM/MEMORY - the ALTER TABLE statement completes without any error but next SELECT against the new table fails. 2)InnoDB (and every other transactional table) - The ALTER TABLE statement fails. There are the the following files in the db dir - `new_table_name.frm` and a temporary table's frm. If the SE is file based, then the data and index files will be present but with the old names. What happens is that for InnoDB the table is not renamed in the internal DDIC. Fixed by adding additional call to mysql_rename_table() method, which should not include FRM file rename, because it has been already done during file names juggling. mysql-test/r/alter_table.result: update result mysql-test/r/grant.result: update result mysql-test/t/alter_table.test: 2006/11/29 11:46:23+01:00 andrey@example.com +44 -9 Error to bug number Added test case for #22369: Alter table rename combined with other alterations causes lost tables mysql-test/t/grant.test: add test for bug#22369 - alter table was missing check for DROP_ACL when ALTER_RENAME clause is specified. Synchronise with RENAME TABLE DDL. sql/mysql_priv.h: Add a new flag for mysql_rename_table() sql/sql_parse.cc: To be consistent with SQLCOM_RENAME_TABLE, SQLCOM_ALTER_TABLE has to check for DROP_ACL if there is ALTER_RENAME flag set. sql/sql_table.cc: ALTER_RENAME, the data and index files weren't renamed in the engine but only the FRM was new, when the tables old and new tables are compatible. In the chain of FRM renames we add a call to mysql_rename_table() which should instruct the engine to rename the table but not rename the FRM. This bug was there only in 5.1 branch. 4.1 and 5.0 always do copy data on RENAME if there are more clauses than just rename.
-
- 29 Nov, 2006 7 commits
-
-
unknown authored
into shellback.(none):/home/msvensson/mysql/yassl_import/my51-yassl_import
-
unknown authored
-
unknown authored
into shellback.(none):/home/msvensson/mysql/yassl_import/my51-yassl_import extra/yassl/include/openssl/ssl.h: Auto merged extra/yassl/include/yassl_int.hpp: Auto merged extra/yassl/src/ssl.cpp: Auto merged extra/yassl/src/yassl_imp.cpp: Auto merged extra/yassl/src/yassl_int.cpp: Auto merged
-
unknown authored
extra/yassl/README: Import patch yassl.diff extra/yassl/examples/client/client.cpp: Import patch yassl.diff extra/yassl/examples/echoclient/echoclient.cpp: Import patch yassl.diff extra/yassl/examples/echoserver/echoserver.cpp: Import patch yassl.diff extra/yassl/examples/server/server.cpp: Import patch yassl.diff extra/yassl/include/factory.hpp: Import patch yassl.diff extra/yassl/include/openssl/ssl.h: Import patch yassl.diff extra/yassl/include/socket_wrapper.hpp: Import patch yassl.diff extra/yassl/include/yassl_error.hpp: Import patch yassl.diff extra/yassl/include/yassl_imp.hpp: Import patch yassl.diff extra/yassl/include/yassl_int.hpp: Import patch yassl.diff extra/yassl/include/yassl_types.hpp: Import patch yassl.diff extra/yassl/src/handshake.cpp: Import patch yassl.diff extra/yassl/src/make.bat: Import patch yassl.diff extra/yassl/src/socket_wrapper.cpp: Import patch yassl.diff extra/yassl/src/ssl.cpp: Import patch yassl.diff extra/yassl/src/yassl_error.cpp: Import patch yassl.diff extra/yassl/src/yassl_imp.cpp: Import patch yassl.diff extra/yassl/src/yassl_int.cpp: Import patch yassl.diff extra/yassl/taocrypt/benchmark/make.bat: Import patch yassl.diff extra/yassl/taocrypt/include/aes.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/algebra.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/arc4.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/asn.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/block.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/blowfish.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/des.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/integer.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/md5.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/misc.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/modes.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/ripemd.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/rsa.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/sha.hpp: Import patch yassl.diff extra/yassl/taocrypt/include/twofish.hpp: Import patch yassl.diff extra/yassl/taocrypt/src/aes.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/algebra.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/arc4.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/blowfish.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/des.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/integer.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/make.bat: Import patch yassl.diff extra/yassl/taocrypt/src/md4.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/md5.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/misc.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/random.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/ripemd.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/sha.cpp: Import patch yassl.diff extra/yassl/taocrypt/src/twofish.cpp: Import patch yassl.diff extra/yassl/taocrypt/test/make.bat: Import patch yassl.diff extra/yassl/taocrypt/test/test.cpp: Import patch yassl.diff extra/yassl/testsuite/make.bat: Import patch yassl.diff extra/yassl/testsuite/test.hpp: Import patch yassl.diff extra/yassl/include/openssl/prefix_ssl.h: New prefic file for ssl.h generated
-
unknown authored
into mysql.com:/usr/home/ram/work/bug22229/my51-bug22229 mysql-test/r/func_time.result: Auto merged mysql-test/t/func_time.test: Auto merged sql/item_timefunc.cc: Auto merged
-
unknown authored
into shellback.(none):/home/msvensson/mysql/mysql-5.1-maint configure.in: Auto merged sql/sql_parse.cc: Auto merged
-
unknown authored
into mysql.com:/usr/home/ram/work/bug22229/my51-bug22229 sql/item_timefunc.cc: Auto merged mysql-test/r/func_time.result: SCCS merged mysql-test/t/func_time.test: SCCS merged
-
- 28 Nov, 2006 5 commits
-
-
unknown authored
Update test result due to fix for bug 23883. mysql-test/r/rpl_init_slave.result: Update test result due to fix for bug 23883.
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint BitKeeper/etc/ignore: auto-union client/mysql.cc: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/func_misc.result: Auto merged mysql-test/r/mysql.result: Auto merged mysql-test/t/mysql.test: Auto merged sql/item_func.h: Auto merged sql/item_timefunc.cc: Auto merged sql-common/my_time.c: Auto merged sql/sql_parse.cc: Auto merged
-
unknown authored
-
unknown authored
into mysql.com:/usr/home/ram/work/bug21587/my51-bug21587 sql/mysql_priv.h: Auto merged
-
unknown authored
into mysql.com:/usr/home/ram/work/bug21587/my51-bug21587 sql/mysql_priv.h: Auto merged sql/sql_handler.cc: Auto merged sql/sql_base.cc: merging
-
- 27 Nov, 2006 9 commits
-
-
unknown authored
-
unknown authored
into shakedown.(none):/home/jpipes/dev/mysql-5.0-maint BitKeeper/etc/ignore: auto-union client/mysql.cc: Auto merged mysql-test/r/func_misc.result: Auto merged sql/item_func.h: Auto merged mysql-test/r/mysql.result: Manual merge mysql-test/t/mysql.test: Manual merge
-
unknown authored
into shakedown.(none):/home/jpipes/dev/mysql-5.1-new-maint2 BitKeeper/etc/ignore: auto-union client/mysql.cc: Auto merged mysql-test/r/func_misc.result: Auto merged mysql-test/r/mysql.result: Manually merged mysql-test/t/mysql.test: Manually merged sql/item_func.h: Manually merged
-
unknown authored
-
unknown authored
Don't link mysql_upgrade with mysys
-
unknown authored
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint BitKeeper/deleted/.del-CMakeLists.txt~14: Auto merged BitKeeper/deleted/.del-CMakeLists.txt~7: Auto merged client/mysql_upgrade.c: Auto merged mysql-test/Makefile.am: Auto merged mysql-test/mysql-test-run-shell.sh: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/func_time.result: Auto merged mysql-test/t/func_time.test: Auto merged mysys/Makefile.am: Auto merged mysys/my_mmap.c: Auto merged sql-common/my_time.c: Auto merged sql/item_timefunc.cc: Auto merged sql/udf_example.c: Auto merged support-files/mysql.spec.sh: Use local client/Makefile.am: Manual merge include/my_sys.h: Manual merge
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint mysql-test/mysql-test-run.pl: Auto merged sql-common/my_time.c: Auto merged sql/item_timefunc.cc: Auto merged sql/sql_parse.cc: Auto merged
-
unknown authored
Problems (appear only under some circumstances): 1. we get a reference to a deleted table searching in the thd->handler_tables_hash in the mysql_ha_read(). 2. DBUG_ASSERT(table->file->inited == handler::NONE); assert fails in the close_thread_table(). Fix: end open index scans and table scans and remove references to the tables from the handler tables hash. After this preparation it is safe to close the tables. The close can no longer fail on open index/table scans and the closed table will not be used again by handler functions. sql/mysql_priv.h: Fix for bug #21587: FLUSH TABLES causes server crash when used with HANDLER statements - mysql_ha_mark_tables_for_reopen() introduced. sql/sql_base.cc: Fix for bug #21587: FLUSH TABLES causes server crash when used with HANDLER statements - call mysql_ha_mark_tables_for_reopen() to prepare for the following close. sql/sql_handler.cc: Fix for bug #21587: FLUSH TABLES causes server crash when used with HANDLER statements - mysql_ha_mark_tables_for_reopen() function introduced.
-
- 24 Nov, 2006 7 commits
-
-
unknown authored
into polly.local:/home/kaa/src/maint/mysql-5.1-maint sql/sql_parse.cc: Auto merged
-
unknown authored
into polly.local:/home/kaa/src/maint/mysql-5.0-maint sql/sql_parse.cc: Auto merged
-
unknown authored
into polly.local:/tmp/maint/bug22077/my51-bug22077 mysql-test/t/read_only.test: Auto merged sql/sql_parse.cc: Manual merge
-
unknown authored
into ymer.(none):/usr/local/mysql/tmp/mysql-5.0-gca mysql-test/mysql-test-run.pl: Auto merged sql-common/my_time.c: Auto merged sql/item_timefunc.cc: Auto merged
-
unknown authored
into ymer.(none):/usr/local/mysql/tmp/mysql-5.1-new-maint mysql-test/lib/mtr_io.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/date_formats.result: Auto merged mysql-test/t/date_formats.test: Auto merged sql-common/my_time.c: Auto merged sql/item_timefunc.cc: Auto merged
-
unknown authored
into ymer.(none):/usr/local/mysql/tmp/mysql-5.0-gca mysql-test/lib/mtr_io.pl: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysql-test/r/date_formats.result: Auto merged mysql-test/t/date_formats.test: Auto merged sql-common/my_time.c: Auto merged sql/item_timefunc.cc: Auto merged
-
unknown authored
traces in Valgrind (broken libc6-dbg). Installing libc6-dbg on Debian will still provide proper bactraces, even without setting LD_LIBRARY_PATH explicitly. mysql-test/lib/mtr_io.pl: Do not link /usr/lib/debug/* on Debian <=3.1, as it causes broken stack traces in Valgrind. mysql-test/mysql-test-run.pl: Do not link /usr/lib/debug/* on Debian <=3.1, as it causes broken stack traces in Valgrind.
-
- 23 Nov, 2006 11 commits
-
-
unknown authored
since that is where the lang files etc are
-
unknown authored
-
unknown authored
-
unknown authored
Remove other warnings about unused variables
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint BitKeeper/etc/collapsed: auto-union configure.in: Auto merged mysql-test/Makefile.am: Auto merged mysql-test/extra/rpl_tests/rpl_deadlock.test: Auto merged mysql-test/mysql-test-run-shell.sh: Auto merged mysql-test/r/func_time.result: Auto merged mysql-test/r/ps.result: Auto merged mysql-test/r/windows.result: Auto merged mysql-test/t/disabled.def: Auto merged mysql-test/t/func_time.test: Auto merged mysql-test/t/ps.test: Auto merged mysql-test/t/windows.test: Auto merged sql/item.cc: Auto merged sql/item_timefunc.cc: Auto merged sql/mysqld.cc: Auto merged sql-common/my_time.c: Auto merged sql/sql_parse.cc: Auto merged BitKeeper/deleted/.del-ps_not_windows.result: Delete: mysql-test/r/ps_not_windows.result BitKeeper/deleted/.del-ps_not_windows.test: Delete: mysql-test/t/ps_not_windows.test mysql-test/mysql-test-run.pl: Manual merge mysql-test/r/rpl_deadlock_innodb.result: Manual merge
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.1
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint mysql-test/mysql-test-run.pl: Auto merged
-
unknown authored
And it's not an "opt"
-
unknown authored
-
unknown authored
- Put 'my_getpagesize' in it's own .c file - Map the call 'my_getpagesize' directly to 'getpagesize' if it exists - Add default implementation for 'my_getpagesize' to be used if no platform specfic function exists include/my_sys.h: Break out the defines for my_getpagesize from HAVE_SYS_MMAN_H as they don't depend on that. There is a check for the function in configure which defines HAVE_GETPAGESIZE if the function exists mysys/CMakeLists.txt: Add new fil my_getpagesize.c mysys/Makefile.am: Add new fil my_getpagesize.c mysys/my_mmap.c: Remove my_getpagesize from my_mmap.c as it's now implemented in my_getpagesize.c mysys/my_getpagesize.c: New BitKeeper file ``mysys/my_getpagesize.c''
-