mysql/0001-fix-internal-compiler-error-Segmentation-fault.patch

50 lines
2.0 KiB
Diff

From 216086b1de9daef9cf74194354e0504b44b0519d Mon Sep 17 00:00:00 2001
From: maminjie <maminjie1@huawei.com>
Date: Thu, 10 Sep 2020 16:44:50 +0800
Subject: [PATCH] fix internal compiler error: Segmentation fault
---
sql/dd/impl/types/partition_impl.cc | 6 +++++-
sql/dd/impl/types/partition_impl.h | 1 +
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/sql/dd/impl/types/partition_impl.cc b/sql/dd/impl/types/partition_impl.cc
index da8b057..fae0bac 100644
--- a/sql/dd/impl/types/partition_impl.cc
+++ b/sql/dd/impl/types/partition_impl.cc
@@ -291,7 +291,7 @@ bool Partition_impl::deserialize(Sdi_rcontext *rctx, const RJ_Value &val) {
deserialize_each(
rctx, [this]() { return add_index(nullptr); }, val, "indexes");
deserialize_each(
- rctx, [this]() { return add_subpartition(); }, val, "subpartitions");
+ rctx, [this]() { return add_subpartition_impl(); }, val, "subpartitions");
return deserialize_tablespace_ref(rctx, &m_tablespace_id, val,
"tablespace_ref");
@@ -371,6 +371,10 @@ Partition_index *Partition_impl::add_index(Index *idx) {
///////////////////////////////////////////////////////////////////////////
Partition *Partition_impl::add_subpartition() {
+ return add_subpartition_impl();
+}
+
+Partition_impl *Partition_impl::add_subpartition_impl() {
/// Support just one level of sub partitions.
DBUG_ASSERT(!parent());
diff --git a/sql/dd/impl/types/partition_impl.h b/sql/dd/impl/types/partition_impl.h
index 3b3068a..7a10649 100644
--- a/sql/dd/impl/types/partition_impl.h
+++ b/sql/dd/impl/types/partition_impl.h
@@ -247,6 +247,7 @@ class Partition_impl : public Entity_object_impl, public Partition {
/////////////////////////////////////////////////////////////////////////
virtual Partition *add_subpartition();
+ virtual Partition_impl *add_subpartition_impl();
virtual const Table::Partition_collection &subpartitions() const {
return m_subpartitions;
--
2.23.0