diff options
author | unknown <mikron@c-d10be253.1238-1-64736c10.cust.bredbandsbolaget.se> | 2006-02-09 20:25:10 +0100 |
---|---|---|
committer | unknown <mikron@c-d10be253.1238-1-64736c10.cust.bredbandsbolaget.se> | 2006-02-09 20:25:10 +0100 |
commit | 4bef9c0e0104d7fd2eca52275de070257e63aac3 (patch) | |
tree | 27cd3b415b26faa7c558d93abdcf007899740b15 /sql/ha_partition.cc | |
parent | ddb14e0f238d92cd55dcd594815ae6bfa8f3577e (diff) | |
download | mariadb-git-4bef9c0e0104d7fd2eca52275de070257e63aac3.tar.gz |
WL 2826: Error handling of ALTER TABLE for partitioning
Error handling
Crash if any error after reaching beyond certain point in
ALTER TABLE processing
sql/ha_partition.cc:
Error handling
Crash if any error after reaching beyond certain point in
ALTER TABLE processing
sql/sql_partition.cc:
Error handling
Crash if any error after reaching beyond certain point in
ALTER TABLE processing
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r-- | sql/ha_partition.cc | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc index 80047d438e1..fade6803156 100644 --- a/sql/ha_partition.cc +++ b/sql/ha_partition.cc @@ -584,7 +584,7 @@ int ha_partition::drop_partitions(const char *path) uint no_subparts= m_part_info->no_subparts; uint i= 0; uint name_variant; - int error= 1; + int error= 0; bool reorged_parts= (m_reorged_parts > 0); bool temp_partitions= (m_part_info->temp_partitions.elements > 0); DBUG_ENTER("ha_partition::drop_partitions"); @@ -632,7 +632,7 @@ int ha_partition::drop_partitions(const char *path) else file= m_file[part]; DBUG_PRINT("info", ("Drop subpartition %s", part_name_buff)); - error= file->delete_table((const char *) part_name_buff); + error+= file->delete_table((const char *) part_name_buff); } while (++j < no_subparts); } else @@ -645,7 +645,7 @@ int ha_partition::drop_partitions(const char *path) else file= m_file[i]; DBUG_PRINT("info", ("Drop partition %s", part_name_buff)); - error= file->delete_table((const char *) part_name_buff); + error+= file->delete_table((const char *) part_name_buff); } if (part_elem->part_state == PART_IS_CHANGED) part_elem->part_state= PART_NORMAL; @@ -687,7 +687,7 @@ int ha_partition::rename_partitions(const char *path) uint no_subparts= m_part_info->no_subparts; uint i= 0; uint j= 0; - int error= 1; + int error= 0; uint temp_partitions= m_part_info->temp_partitions.elements; handler *file; partition_element *part_elem, *sub_elem; @@ -715,8 +715,8 @@ int ha_partition::rename_partitions(const char *path) NORMAL_PART_NAME); DBUG_PRINT("info", ("Rename subpartition from %s to %s", norm_name_buff, part_name_buff)); - error= file->rename_table((const char *) norm_name_buff, - (const char *) part_name_buff); + error+= file->rename_table((const char *) norm_name_buff, + (const char *) part_name_buff); } while (++j < no_subparts); } else @@ -730,8 +730,8 @@ int ha_partition::rename_partitions(const char *path) TRUE); DBUG_PRINT("info", ("Rename partition from %s to %s", norm_name_buff, part_name_buff)); - error= file->rename_table((const char *) norm_name_buff, - (const char *) part_name_buff); + error+= file->rename_table((const char *) norm_name_buff, + (const char *) part_name_buff); } } while (++i < temp_partitions); } @@ -765,8 +765,8 @@ int ha_partition::rename_partitions(const char *path) RENAMED_PART_NAME); DBUG_PRINT("info", ("Rename subpartition from %s to %s", norm_name_buff, part_name_buff)); - error= file->rename_table((const char *) norm_name_buff, - (const char *) part_name_buff); + error+= file->rename_table((const char *) norm_name_buff, + (const char *) part_name_buff); } file= m_new_file[part]; create_subpartition_name(part_name_buff, path, @@ -775,8 +775,8 @@ int ha_partition::rename_partitions(const char *path) TEMP_PART_NAME); DBUG_PRINT("info", ("Rename subpartition from %s to %s", part_name_buff, norm_name_buff)); - error= file->rename_table((const char *) part_name_buff, - (const char *) norm_name_buff); + error+= file->rename_table((const char *) part_name_buff, + (const char *) norm_name_buff); } while (++j < no_subparts); } else @@ -792,8 +792,8 @@ int ha_partition::rename_partitions(const char *path) TRUE); DBUG_PRINT("info", ("Rename partition from %s to %s", norm_name_buff, part_name_buff)); - error= file->rename_table((const char *) norm_name_buff, - (const char *) part_name_buff); + error+= file->rename_table((const char *) norm_name_buff, + (const char *) part_name_buff); } file= m_new_file[i]; create_partition_name(part_name_buff, path, @@ -801,7 +801,7 @@ int ha_partition::rename_partitions(const char *path) TRUE); DBUG_PRINT("info", ("Rename partition from %s to %s", part_name_buff, norm_name_buff)); - error= file->rename_table((const char *) part_name_buff, + error+= file->rename_table((const char *) part_name_buff, (const char *) norm_name_buff); } } |