diff options
author | mikael/pappa@dator5.(none) <> | 2006-09-19 07:44:18 -0400 |
---|---|---|
committer | mikael/pappa@dator5.(none) <> | 2006-09-19 07:44:18 -0400 |
commit | fb2ad12f1de8e8a78ef340fa40a03452c2c24fb7 (patch) | |
tree | f65a68909a68d8487c02ce45c84183b79733ecd0 /sql/ha_partition.cc | |
parent | ba7a873172cbff6ee686c43f2a02ec13ada72ad3 (diff) | |
parent | 4f122ed95b6b3baa5608c5233db234c87f7de1cb (diff) | |
download | mariadb-git-fb2ad12f1de8e8a78ef340fa40a03452c2c24fb7.tar.gz |
Merge dator5.(none):/home/pappa/clean-mysql-5.1
into dator5.(none):/home/pappa/bug21210
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r-- | sql/ha_partition.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc index e435b356def..0086c728b42 100644 --- a/sql/ha_partition.cc +++ b/sql/ha_partition.cc @@ -1364,6 +1364,7 @@ int ha_partition::change_partitions(HA_CREATE_INFO *create_info, i= 0; part_count= 0; orig_count= 0; + first= TRUE; part_it.rewind(); do { @@ -1391,9 +1392,16 @@ int ha_partition::change_partitions(HA_CREATE_INFO *create_info, DBUG_RETURN(ER_OUTOFMEMORY); } } while (++j < no_subparts); + if (part_elem->part_state == PART_CHANGED) + orig_count+= no_subparts; + else if (temp_partitions && first) + { + orig_count+= (no_subparts * temp_partitions); + first= FALSE; + } } } while (++i < no_parts); - + first= FALSE; /* Step 5: Create the new partitions and also open, lock and call external_lock |