From f76d7a39330998847bc17162436ecdc70f50f0ae Mon Sep 17 00:00:00 2001 From: xujp Date: Tue, 8 Nov 2022 15:47:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=A7=E8=A1=8Cdebug?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E6=95=B0=E6=8D=AE=E5=86=99=E5=85=A5=E7=9A=84?= =?UTF-8?q?=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit classnotfound CommandToggleRemarkComment 修复不同schema下相同名称函数无法执行的问题.原因是直接call命令时缺少schema条件 检视意见修改 --- .../mppdbide/bl/serverdatacache/DebugObjects.java | 3 ++- .../src/messages.properties | 3 ++- .../src/messages_zh_CN.properties | 3 ++- .../mppdbide/utils/IMessagesConstantsOne.java | 5 +++++ .../opengauss/mppdbide/utils/VariableRunLine.java | 7 ++++++- .../mppdbide/view/handler/ExecuteEditorItem.java | 3 +++ .../view/handler/debug/StartDebugHandler.java | 15 +++++++++++++++ 7 files changed, 35 insertions(+), 4 deletions(-) diff --git a/code/datastudio/src/org.opengauss.mppdbide.bl/src/org/opengauss/mppdbide/bl/serverdatacache/DebugObjects.java b/code/datastudio/src/org.opengauss.mppdbide.bl/src/org/opengauss/mppdbide/bl/serverdatacache/DebugObjects.java index 0b95a949..f788409b 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.bl/src/org/opengauss/mppdbide/bl/serverdatacache/DebugObjects.java +++ b/code/datastudio/src/org.opengauss.mppdbide.bl/src/org/opengauss/mppdbide/bl/serverdatacache/DebugObjects.java @@ -27,6 +27,7 @@ import org.opengauss.mppdbide.bl.serverdatacache.DebugObjects.DebugObjectsUtils. import org.opengauss.mppdbide.utils.IMessagesConstants; import org.opengauss.mppdbide.utils.IMessagesConstantsOne; import org.opengauss.mppdbide.utils.MPPDBIDEConstants; +import org.opengauss.mppdbide.utils.VariableRunLine; import org.opengauss.mppdbide.utils.exceptions.DatabaseCriticalException; import org.opengauss.mppdbide.utils.exceptions.DatabaseOperationException; import org.opengauss.mppdbide.utils.exceptions.MPPDBIDEException; @@ -873,7 +874,7 @@ public class DebugObjects extends BatchDropServerObject implements ObjectChange, hasout = createTemplateFromParams(params, parameterObject.getTemplateParams(), template, parameterObject.getOutParams()); - if (MessageConfigLoader.getProperty(IMessagesConstants.COVERAGE_HINT).equalsIgnoreCase(coverageHint)) { + if (VariableRunLine.isDebugUsagehint != null) { usagehint.append(coverageHint + MPPDBIDEConstants.LINE_SEPARATOR); } if (hasout) { diff --git a/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages.properties b/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages.properties index 671ff78b..f5896fb5 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages.properties +++ b/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages.properties @@ -3205,4 +3205,5 @@ EXPORT_PATH = The report has been downloaded to: {0} COVERAGE_CHECK = This version does not support this function! INPUT_PARAMS = Input Params NOT_SUPPORT_BREAK = There are rows that do not support flags! -VERSION_CHECK_FAIL = Check version failed! \ No newline at end of file +VERSION_CHECK_FAIL = Check version failed! +WRITE_DATA = This operation will save the data to the his_coverage! \ No newline at end of file diff --git a/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages_zh_CN.properties b/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages_zh_CN.properties index 259934b0..b4943fc4 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages_zh_CN.properties +++ b/code/datastudio/src/org.opengauss.mppdbide.utils/src/messages_zh_CN.properties @@ -3194,4 +3194,5 @@ EXP_MARK_ROW = \u6807\u8BB0\u884C EXP_MARK_EXECUTION_LINE = \u6807\u8BB0\u6267\u884C\u884C EXP_MARKER_COVERAGE = \u6807\u8BB0\u8986\u76D6\u7387 EXP_INPUT_PARAMS = \u5165\u53C2 -EXP_UPDATE_TIME = \u7ED3\u675F\u65F6\u95F4 \ No newline at end of file +EXP_UPDATE_TIME = \u7ED3\u675F\u65F6\u95F4 +WRITE_DATA = \u6B64\u64CD\u4F5C\u5C06\u4FDD\u5B58\u6570\u636E\u81F3his_coverage\u8868\u4E2D! \ No newline at end of file diff --git a/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/IMessagesConstantsOne.java b/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/IMessagesConstantsOne.java index 35f159f2..8c6baf9e 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/IMessagesConstantsOne.java +++ b/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/IMessagesConstantsOne.java @@ -1174,4 +1174,9 @@ public interface IMessagesConstantsOne extends IMessagesConstantsTwo { * EXP_UPDATE_TIME */ String EXP_UPDATE_TIME = "EXP_UPDATE_TIME"; + + /** + * EXP_UPDATE_TIME + */ + String WRITE_DATA = "WRITE_DATA"; } \ No newline at end of file diff --git a/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/VariableRunLine.java b/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/VariableRunLine.java index e37be0f2..54f46cd1 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/VariableRunLine.java +++ b/code/datastudio/src/org.opengauss.mppdbide.utils/src/org/opengauss/mppdbide/utils/VariableRunLine.java @@ -52,7 +52,12 @@ public class VariableRunLine { public static volatile Boolean isPldebugger; /** - * id of function + * isDebugUsagehint of function + */ + public static volatile Boolean isDebugUsagehint; + + /** + * currentOid of function */ public static volatile long currentOid; } diff --git a/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/ExecuteEditorItem.java b/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/ExecuteEditorItem.java index dc2a0dc0..b6bb969f 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/ExecuteEditorItem.java +++ b/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/ExecuteEditorItem.java @@ -48,6 +48,7 @@ import org.opengauss.mppdbide.presentation.IExecutionContext; import org.opengauss.mppdbide.presentation.IResultDisplayUIManager; import org.opengauss.mppdbide.utils.IMessagesConstants; import org.opengauss.mppdbide.utils.MPPDBIDEConstants; +import org.opengauss.mppdbide.utils.VariableRunLine; import org.opengauss.mppdbide.utils.exceptions.DatabaseCriticalException; import org.opengauss.mppdbide.utils.exceptions.DatabaseOperationException; import org.opengauss.mppdbide.utils.exceptions.MPPDBIDEException; @@ -117,7 +118,9 @@ public class ExecuteEditorItem implements ExecuteWrapper { checkVersion(editor); if (editor.getDebugObject() instanceof DebugObjects) { debugObject = (DebugObjects) editor.getDebugObject(); + VariableRunLine.isDebugUsagehint = null; if (!isPldebugger) { + VariableRunLine.isDebugUsagehint = false; debugObject.setUsagehint(MessageConfigLoader.getProperty(IMessagesConstants.COVERAGE_HINT)); } else { debugObject.setUsagehint(""); diff --git a/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/debug/StartDebugHandler.java b/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/debug/StartDebugHandler.java index 06f28985..dd1b0920 100644 --- a/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/debug/StartDebugHandler.java +++ b/code/datastudio/src/org.opengauss.mppdbide.view/src/org/opengauss/mppdbide/view/handler/debug/StartDebugHandler.java @@ -25,6 +25,7 @@ import org.eclipse.e4.core.di.annotations.CanExecute; import org.eclipse.e4.core.di.annotations.Execute; import org.eclipse.swt.widgets.Display; import org.opengauss.mppdbide.adapter.keywordssyntax.SQLSyntax; +import org.opengauss.mppdbide.bl.serverdatacache.DebugObjects; import org.opengauss.mppdbide.bl.serverdatacache.DefaultParameter; import org.opengauss.mppdbide.bl.serverdatacache.IDebugObject; import org.opengauss.mppdbide.bl.serverdatacache.ObjectParameter; @@ -34,6 +35,7 @@ import org.opengauss.mppdbide.debuger.service.QueryService; import org.opengauss.mppdbide.debuger.service.WrappedDebugService; import org.opengauss.mppdbide.debuger.vo.FunctionVo; import org.opengauss.mppdbide.utils.IMessagesConstants; +import org.opengauss.mppdbide.utils.VariableRunLine; import org.opengauss.mppdbide.utils.exceptions.DatabaseCriticalException; import org.opengauss.mppdbide.utils.exceptions.DatabaseOperationException; import org.opengauss.mppdbide.utils.exceptions.MPPDBIDEException; @@ -111,6 +113,19 @@ public class StartDebugHandler { } } + private void setUsagehint(PLSourceEditor plSourceEditor) { + if (plSourceEditor.getDebugObject() instanceof DebugObjects) { + VariableRunLine.isDebugUsagehint = null; + DebugObjects debugObject = (DebugObjects) plSourceEditor.getDebugObject(); + if (!VariableRunLine.isPldebugger) { + VariableRunLine.isDebugUsagehint = true; + debugObject.setUsagehint(MessageConfigLoader.getProperty(IMessagesConstants.WRITE_DATA)); + } else { + debugObject.setUsagehint(""); + } + } + } + private void startInputParamDialog() { new InputParamsJob("input dialog", null, this).schedule(); } -- Gitee