summaryrefslogtreecommitdiff
path: root/sql/ha_partition.cc
diff options
context:
space:
mode:
authormikael/pappa@dator5.(none) <>2006-09-19 07:44:18 -0400
committermikael/pappa@dator5.(none) <>2006-09-19 07:44:18 -0400
commitfb2ad12f1de8e8a78ef340fa40a03452c2c24fb7 (patch)
treef65a68909a68d8487c02ce45c84183b79733ecd0 /sql/ha_partition.cc
parentba7a873172cbff6ee686c43f2a02ec13ada72ad3 (diff)
parent4f122ed95b6b3baa5608c5233db234c87f7de1cb (diff)
downloadmariadb-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.cc10
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