From a9d5ca16e71dbce90df55008219cbf84f106ab8f Mon Sep 17 00:00:00 2001 From: lukeman Date: Thu, 28 Mar 2024 21:08:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86issue=EF=BC=9A=E5=B9=B6?= =?UTF-8?q?=E5=8F=91=E9=87=8D=E7=BC=96=E8=AF=91=E5=AF=BC=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E5=90=8C=E6=97=B6=E6=9B=B4=E6=96=B0=E6=8A=A5?= =?UTF-8?q?=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/backend/utils/gsplsql/gsdependencies.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/common/backend/utils/gsplsql/gsdependencies.cpp b/src/common/backend/utils/gsplsql/gsdependencies.cpp index 1812692ad..8e140fea5 100644 --- a/src/common/backend/utils/gsplsql/gsdependencies.cpp +++ b/src/common/backend/utils/gsplsql/gsdependencies.cpp @@ -1231,6 +1231,12 @@ void gsplsql_prepare_gs_depend_for_pkg_compile(PLpgSQL_package* pkg, bool isCrea GSDEPEND_OBJECT_TYPE_INVALID, isCreate ? GSDEPEND_REFOBJ_POS_IN_PKGALL_OBJ : GSDEPEND_REFOBJ_POS_IN_PKGRECOMPILE_OBJ }; + NameData schema_name_data; + NameData pkg_name_data; + StringInfoData object_name_data; + gsplsql_construct_non_empty_obj(&obj_desc, &schema_name_data, &pkg_name_data, &object_name_data); + uint32 hash_value = string_hash(object_name_data.data, object_name_data.len); + LockDatabaseObject(DependenciesRelationId, hash_value, 0, AccessExclusiveLock); pkg->preRefObjectOidList = gsplsql_delete_objs(relation, &obj_desc); heap_close(relation, RowExclusiveLock); pkg->preSelfObjectList = gsplsql_get_depend_obj_list_by_specified_pkg(schema_name, pkg->pkg_signature,