From 5691bf976cf8e77e00484877161aed6552fe8ae0 Mon Sep 17 00:00:00 2001 From: sundechao Date: Tue, 18 Jun 2024 16:22:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B7=BB=E5=8A=A0=E8=A7=A6?= =?UTF-8?q?=E5=8F=91=E5=99=A8=E5=92=8C=E7=B3=BB=E7=BB=9F=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E5=9C=A8=E7=B4=A2=E5=BC=95=E4=B8=8A=E6=97=A0=E6=B3=95=E8=BF=9B?= =?UTF-8?q?=E8=A1=8C=E9=97=AA=E5=9B=9Edrop=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gausskernel/storage/tcap/tcap_drop.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gausskernel/storage/tcap/tcap_drop.cpp b/src/gausskernel/storage/tcap/tcap_drop.cpp index 764194f98..5cf3bd79a 100644 --- a/src/gausskernel/storage/tcap/tcap_drop.cpp +++ b/src/gausskernel/storage/tcap/tcap_drop.cpp @@ -1112,7 +1112,10 @@ static bool TrNeedPhyDelete(Relation depRel, ObjectAddresses *targetObjects, Obj /* Step 1: tag refobjs of thisobj, return directly if ALL refobjs not need physical drop. */ for (int i = 0; i < refobjs->numrefs; i++) { item = refobjs->refs + i; - if (!TrObjIsInList(targetObjects, item)) { + /* Skip the judgemnt on the obj in the pg_proc table and perform logical delection + * by default. + */ + if (item->classId != ProcedureRelationId && !TrObjIsInList(targetObjects, item)) { result = true; break; }