Below is the list of changes that have just been committed into a local
5.1 repository of patg. When patg does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet
1.2082 06/01/25 22:08:33 patg@stripped +3 -0
Merge pgalbraith@stripped:/home/bk/mysql-5.1-new
into govinda.patg.net:/home/patg/mysql-build/mysql-5.1-wl2986
sql/sql_partition.cc
1.28 06/01/25 22:08:29 patg@stripped +0 -0
Auto merged
sql/ha_partition.h
1.13 06/01/25 22:08:29 patg@stripped +0 -0
Auto merged
sql/ha_partition.cc
1.29 06/01/25 22:08:29 patg@stripped +0 -0
Auto merged
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: patg
# Host: govinda.patg.net
# Root: /home/patg/mysql-build/mysql-5.1-wl2986/RESYNC
--- 1.28/sql/ha_partition.cc 2006-01-25 11:50:39 -08:00
+++ 1.29/sql/ha_partition.cc 2006-01-25 22:08:29 -08:00
@@ -1695,7 +1695,7 @@
error= (*file)->delete_table((const char*) from_buff);
else
{
- set_up_table_before_create(table_arg, create_info, i);
+ set_up_table_before_create(table_arg, from_buff, create_info, i);
error= (*file)->create(from_buff, table_arg, create_info);
}
name_buffer_ptr= strend(name_buffer_ptr) + 1;
@@ -1769,8 +1769,9 @@
*/
void ha_partition::set_up_table_before_create(TABLE *table,
- HA_CREATE_INFO *info,
- uint part_id)
+ const char *partition_name_with_path,
+ HA_CREATE_INFO *info,
+ uint part_id)
{
partition_element *part_elem= find_partition_element(part_id);
@@ -1778,6 +1779,15 @@
return; // Fatal error
table->s->max_rows= part_elem->part_max_rows;
table->s->min_rows= part_elem->part_min_rows;
+ char *partition_name= strrchr(partition_name_with_path, FN_LIBCHAR);
+ if (part_elem->index_file_name)
+ append_file_to_dir(current_thd,
+ (const char**)&part_elem->index_file_name,
+ partition_name+1);
+ if (part_elem->data_file_name)
+ append_file_to_dir(current_thd,
+ (const char**)&part_elem->data_file_name,
+ partition_name+1);
info->index_file_name= part_elem->index_file_name;
info->data_file_name= part_elem->data_file_name;
}
--- 1.12/sql/ha_partition.h 2006-01-20 10:28:10 -08:00
+++ 1.13/sql/ha_partition.h 2006-01-25 22:08:29 -08:00
@@ -220,8 +220,10 @@
bool new_handlers_from_part_info();
bool create_handlers();
void clear_handler_file();
- void set_up_table_before_create(TABLE * table_arg, HA_CREATE_INFO * info,
- uint part_id);
+ void set_up_table_before_create(TABLE *table_arg,
+ const char *partition_name_with_path,
+ HA_CREATE_INFO *info,
+ uint part_id);
partition_element *find_partition_element(uint part_id);
public:
--- 1.27/sql/sql_partition.cc 2006-01-25 11:06:53 -08:00
+++ 1.28/sql/sql_partition.cc 2006-01-25 22:08:29 -08:00
@@ -3004,7 +3004,7 @@
while (max_part_id > min_part_id)
{
loc_part_id= (max_part_id + min_part_id + 1) >> 1;
- if (range_array[loc_part_id] < part_func_value)
+ if (range_array[loc_part_id] <= part_func_value)
min_part_id= loc_part_id + 1;
else
max_part_id= loc_part_id - 1;
@@ -3077,7 +3077,7 @@
while (max_part_id > min_part_id)
{
loc_part_id= (max_part_id + min_part_id + 1) >> 1;
- if (range_array[loc_part_id] < part_func_value)
+ if (range_array[loc_part_id] <= part_func_value)
min_part_id= loc_part_id + 1;
else
max_part_id= loc_part_id - 1;
| Thread |
|---|
| • bk commit into 5.1 tree (patg:1.2082) | Patrick Galbraith | 26 Jan |