summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mysql-test/r/partition_federated.result6
-rw-r--r--mysql-test/t/partition_federated.test21
-rw-r--r--storage/federated/ha_federated.cc2
3 files changed, 28 insertions, 1 deletions
diff --git a/mysql-test/r/partition_federated.result b/mysql-test/r/partition_federated.result
new file mode 100644
index 00000000000..2d98e366c95
--- /dev/null
+++ b/mysql-test/r/partition_federated.result
@@ -0,0 +1,6 @@
+drop table if exists t1;
+create table t1 (s1 int) engine=federated
+connection='mysql://root@localhost/federated/t1' partition by list (s1)
+(partition p1 values in (1), partition p2 values in (2));
+ERROR HY000: Engine cannot be used in partitioned tables
+End of 5.1 tests
diff --git a/mysql-test/t/partition_federated.test b/mysql-test/t/partition_federated.test
new file mode 100644
index 00000000000..c8483291228
--- /dev/null
+++ b/mysql-test/t/partition_federated.test
@@ -0,0 +1,21 @@
+#
+# Tests for partitioned FEDERATED
+#
+-- source include/have_partition.inc
+-- source include/not_embedded.inc
+-- source include/have_federated_db.inc
+
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+
+#
+# Bug #22451 Partitions: duplicate results with engine=federated
+#
+
+--error ER_PARTITION_MERGE_ERROR
+create table t1 (s1 int) engine=federated
+connection='mysql://root@localhost/federated/t1' partition by list (s1)
+(partition p1 values in (1), partition p2 values in (2));
+
+--echo End of 5.1 tests
diff --git a/storage/federated/ha_federated.cc b/storage/federated/ha_federated.cc
index 7330a19b791..f69b02e5204 100644
--- a/storage/federated/ha_federated.cc
+++ b/storage/federated/ha_federated.cc
@@ -406,7 +406,7 @@ int federated_db_init(void *p)
federated_hton->commit= federated_commit;
federated_hton->rollback= federated_rollback;
federated_hton->create= federated_create_handler;
- federated_hton->flags= HTON_ALTER_NOT_SUPPORTED;
+ federated_hton->flags= HTON_ALTER_NOT_SUPPORTED | HTON_NO_PARTITION;
if (pthread_mutex_init(&federated_mutex, MY_MUTEX_INIT_FAST))
goto error;