- 09 Apr, 2013 40 commits
-
-
Sergei Golubchik authored
allocated by the same allocator as in TABLE_SHARE::read_frm_image()
-
Sergei Golubchik authored
-
Sergei Golubchik authored
eliminating reduncancy and a possibility of setting them to a pair of invalid values.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
* persistent table versions in the extra2 * ha_archive::frm_compare using TABLE_SHARE::tabledef_version * distinguish between "important" and "optional" extra2 frm values * write engine-defined attributes (aka "table options") to extra2, not to extra, but still read from the old location, if they're found there.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
use it to test main test cases with need_full_discover_for_existence > 0
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
Now CREATE TABLE does not write the frm file on disk, if the engine can discover it
-
Sergei Golubchik authored
-
Sergei Golubchik authored
(in partition_archive.test frm size goes down 16 times :)
-
Sergei Golubchik authored
(allocating and freeing buffers on the way), allocate one frm buffer, prepare the frm image completely in memory, and then write it down.
-
Sergei Golubchik authored
* comments * cosmetic changes, *(ptr+5) -> ptr[5] * a couple of trivial functions -> inline * remove unused argument from pack_header() * create_frm() no longer creates frm file (the function used to prepare and fill a memory buffer and call my_create at the end. Now it only prepares a memory buffer). Renamed accordingly. * don't call pack_screen twice, go for a smaller screen area in the first attempt * remove useless calls to check_duplicate_warning() * don't write unireg screens to .frm files * remove make_new_entry(), it's basically dead code, always calculating and writing into frm the same string value. replace the function call with the constant string.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
from everywhere - now RENAME, SHOW FULL TABLES, and TRUNCATE work with discovery. improve error messages in truncate
-
Sergei Golubchik authored
SELECT * FROM `t-1` will no longer read "t-1.frm" file, use `#mysql50#t-1` for this.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
"unknown" tables. Duplicates are possible - deal with them.
-
Sergei Golubchik authored
may not exist (the table exists only in the engine).
-
Sergei Golubchik authored
fixes for need_full_discover_for_existence mode
-
Sergei Golubchik authored
replace enum read_frm_op with a bitmap flags. remove always-unused 'error' argument of get_table_share
-
Sergei Golubchik authored
-
Sergei Golubchik authored
Pass db and table_name into a function instead of the table_list, when only db and table name are needed.
-
Sergei Golubchik authored
* rename check_if_table_exists() -> table_exists() and remove unneeded arguments
-
Sergei Golubchik authored
" revision-id: sanja@askmonty.org-20110511110948-4kdevwzomvk56y1w committer: sanja@askmonty.org branch nick: work-maria-5.1-CREATE-merge timestamp: Wed 2011-05-11 14:09:48 +0300 Bugfix: New table creation/renaming block added if old encoded table present " the old behavior was less inconsistent than the new one. In the new one the error message was sometimes different (under LOCK TABLES e.g.), and there were race conditions (if this CREATE happened when a concurrent ALTER has renamed the old table away but haven't put the new table in place) The old one was like "(when using old table names) for DML #mysql50# prefix is optional, for DDL it's required".
-
Sergei Golubchik authored
simplify open_table_def()
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
* print "table doesn't exist in engine" when a table doesn't exist in the engine, instead of "file not found" (if no file was involved) * print a complete filename that cannot be found ('t1.MYI', not 't1') * it's not an error for a DROP if a table doesn't exist in the engine (or some table files cannot be found) - if the DROP succeeded regardless
-
Sergei Golubchik authored
have a specially defined enum with clearly named values
-
Sergei Golubchik authored
and now-unused read_string() function
-