Commit 4c6aa365 authored by unknown's avatar unknown

BUG#16068: Plugin related bugs

Fixed that --plugin_dir option doesn't work.
Fixed that parser name is not restored correctly from the table.


sql/mysqld.cc:
  Overwrite opt_plugin_dir_ptr _after_ loading the path.
sql/table.cc:
  Partition saves at least 5 bytes in .frm.
parent 12cbe6e4
......@@ -7448,10 +7448,9 @@ static void fix_paths(void)
(void) my_load_path(mysql_home,mysql_home,""); // Resolve current dir
(void) my_load_path(mysql_real_data_home,mysql_real_data_home,mysql_home);
(void) my_load_path(pidfile_name,pidfile_name,mysql_real_data_home);
strmake(opt_plugin_dir, get_relative_path(LIBDIR),
sizeof(opt_plugin_dir) - 1);
(void) my_load_path(opt_plugin_dir, opt_plugin_dir_ptr ? opt_plugin_dir_ptr :
get_relative_path(LIBDIR), mysql_home);
opt_plugin_dir_ptr= opt_plugin_dir;
(void) my_load_path(opt_plugin_dir, opt_plugin_dir_ptr, mysql_home);
char *sharedir=get_relative_path(SHAREDIR);
if (test_if_hard_path(sharedir))
......
......@@ -538,7 +538,7 @@ static int open_binary_frm(THD *thd, TABLE_SHARE *share, uchar *head,
#endif
next_chunk+= str_db_type_length + 2;
}
if (next_chunk + 4 < buff_end)
if (next_chunk + 5 < buff_end)
{
uint32 partition_info_len = uint4korr(next_chunk);
#ifdef WITH_PARTITION_STORAGE_ENGINE
......@@ -561,7 +561,7 @@ static int open_binary_frm(THD *thd, TABLE_SHARE *share, uchar *head,
goto err;
}
#endif
next_chunk+= 4 + partition_info_len;
next_chunk+= 5 + partition_info_len;
}
keyinfo= share->key_info;
for (i= 0; i < keys; i++, keyinfo++)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment