From bef2484bdebd74199cec64604ed9a1bc60ec0ee7 Mon Sep 17 00:00:00 2001 From: lukeman Date: Tue, 8 Apr 2025 19:15:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86issue=EF=BC=9AopenGauss=207.0?= =?UTF-8?q?.0-RC1=20=E6=89=A7=E8=A1=8Chw=5Fcreate=5Ftable=5Fllt=E5=BC=95?= =?UTF-8?q?=E8=B5=B7=E5=AE=95=E6=9C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gausskernel/process/threadpool/threadpool_stream.cpp | 2 ++ src/gausskernel/process/threadpool/threadpool_worker.cpp | 2 +- src/include/threadpool/threadpool_worker.h | 2 ++ src/test/regress/input/hw_createtbl_llt.source | 4 ++++ src/test/regress/output/hw_createtbl_llt.source | 3 +++ 5 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/gausskernel/process/threadpool/threadpool_stream.cpp b/src/gausskernel/process/threadpool/threadpool_stream.cpp index 22012f5997..2d8a70116c 100644 --- a/src/gausskernel/process/threadpool/threadpool_stream.cpp +++ b/src/gausskernel/process/threadpool/threadpool_stream.cpp @@ -137,6 +137,8 @@ void ThreadPoolStream::InitStream() InitializeGUCOptions(); /* Read in remaining GUC variables */ read_nondefault_variables(); + /* Init share memory for this session. */ + init_session_share_memory(); /* Do local initialization of file, storage and buffer managers */ InitFileAccess(); diff --git a/src/gausskernel/process/threadpool/threadpool_worker.cpp b/src/gausskernel/process/threadpool/threadpool_worker.cpp index 8724294fff..bc05d12ac5 100644 --- a/src/gausskernel/process/threadpool/threadpool_worker.cpp +++ b/src/gausskernel/process/threadpool/threadpool_worker.cpp @@ -798,7 +798,7 @@ void ThreadPoolWorker::AddBackend(Backend* bn) DLAddHead(g_instance.backend_list, &bn->elem); } -static void init_session_share_memory() +void init_session_share_memory() { TableSpaceUsageManager::Init(); #ifndef ENABLE_MULTIPLE_NODES diff --git a/src/include/threadpool/threadpool_worker.h b/src/include/threadpool/threadpool_worker.h index a34006fb08..10d90fc0c8 100644 --- a/src/include/threadpool/threadpool_worker.h +++ b/src/include/threadpool/threadpool_worker.h @@ -153,4 +153,6 @@ private: knl_thrd_context *m_thrd; }; +extern void init_session_share_memory(); + #endif /* THREAD_POOL_WORKER_H */ diff --git a/src/test/regress/input/hw_createtbl_llt.source b/src/test/regress/input/hw_createtbl_llt.source index 3e14374203..d015ed703b 100644 --- a/src/test/regress/input/hw_createtbl_llt.source +++ b/src/test/regress/input/hw_createtbl_llt.source @@ -19,6 +19,9 @@ reset current_schema; show current_schema; +--test for core issue #IBXF6U +set query_dop = 1002; + --test create table tablesapce as select create table ts_t1(id int,info text) tablespace hw_createtbl_llt_tablespace; insert into ts_t1 values(generate_series(1,1000),'sadadsa'); @@ -26,6 +29,7 @@ create table ts_t2 tablespace hw_createtbl_llt_tablespace as select * from ts_t1 select relname,reltablespace from pg_class where relname in('ts_t1','ts_t2') order by 1; select relname,relfilenode,reltablespace from pg_class where relname='ts_t2'; +reset query_dop; drop table ts_t1; drop table ts_t2; diff --git a/src/test/regress/output/hw_createtbl_llt.source b/src/test/regress/output/hw_createtbl_llt.source index 46e67604fe..6f637a53f0 100644 --- a/src/test/regress/output/hw_createtbl_llt.source +++ b/src/test/regress/output/hw_createtbl_llt.source @@ -25,6 +25,8 @@ show current_schema; "$user",public (1 row) +--test for core issue #IBXF6U +set query_dop = 1002; --test create table tablesapce as select create table ts_t1(id int,info text) tablespace hw_createtbl_llt_tablespace; insert into ts_t1 values(generate_series(1,1000),'sadadsa'); @@ -42,6 +44,7 @@ select relname,relfilenode,reltablespace from pg_class where relname='ts_t2'; --? ts_t2 |.* (1 row) +reset query_dop; drop table ts_t1; drop table ts_t2; -- clean enviroment -- Gitee