peoplesoft - 具有 GetNextNumberWithGapsCommit 函数的 PeopleSoft AE 最初出错,但稍后会成功
问题描述
生产环境-> 2 个应用服务器域、2 个 Web 服务器域、3 个进程调度器 [AIX、1 NT]、NON RAC Oracle DB
PT 8.55.15,HCM 9.2 DB 12.2.0.1
我们正在生产环境中运行自定义 AE 程序。这个 AE 调用交付的 EOEN 应用程序包。此软件包中未进行任何自定义。还涉及自定义组件接口。自 5 年前以来,此 AE 一直在我们的环境中运行。近期没有对代码进行任何更改。
从大约 2-3 周前开始,这个 AE 一直表现得非常奇怪。它第一次出错,但在第二次/第三次重新运行时成功。我们不会更改任何参数,也不会在第二次/第三次运行中反弹任何服务。此应用程序包 [EOEN_MVC.EOEN_MODEL] 调用 PeopleCode 函数 - GetNextNumberWithGapsCommit。
我们在这个AE上设置了trace,发现每次调用“GetNextNumberWithGapsCommit”函数时程序都会出错。这些是跟踪中的行:
3905919 23:51:18.263 0.005472 Cur#8.15073404.HCMPRO RC=0 Dur=0.000094 COM Stmt=SELECT DESCR,DESCRLONG FROM PS_EOEN_REGE_LNG WHERE EOEN_EVENT_NAME=:1 AND LANGUAGE_CD = :2
3905920 23:51:18.264 0.000974 Cur#8.15073404.HCMPRO RC=0 Dur=0.000001 Bind-1 类型=2 长度=16 值=CreateTriggerESP
3905921 23:51:18.265 0.000966 Cur#8.15073404.HCMPRO RC=0 Dur=0.000000 Bind-2 类型=2 长度=3 值=ESP
3905922 23:51:18.270 0.004369 258: 如果全部 (&RS_RegEvnt(1).EOEN_REG_EVNT.EOEN_EVENT_NAME.Value) 那么
3905923 23:51:18.271 0.001026 获取字段:EOEN_REG_EVNT.EOEN_EVENT_NAME 值 = CreateTriggerESP
3905924 23:51:18.272 0.001004 259:
&NextEventID = GetNextNumberWithGapsCommit(EOEN_CONFIG.EOEN_LAST_ID, 2147483647, 1);3905925 23:51:18.273 0.001065 Cur#7.15073404.HCMPRO RC=0 Dur=0.000031 COM Stmt=UPDATE PS_EOEN_CONFIG SET EOEN_LAST_ID = EOEN_LAST_ID + 1
3905926 23:51:18.274 0.001453 Cur#2.15073404.HCMPRO RC=0 Dur=0.000042 COM Stmt=SELECT TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD-HH24.MI.SS.FF') 从 PSCLOCK
3905927 23:51:18.278 0.003895 捕获异常:SQL 严重错误。(2,125) EOEN_MVC.EOEN_MODEL.EOENInterface.OnExecute 名称:RaiseEvent PCPC:14959 语句:259
调用自:FUNCLIB_HR_ESP.TRGR_FUNCTIONS_ESP.Field 公式名称:Create_Triggers_ESP 语句:60
调用自:JOB.REPORTS_TO.SavePostChange 语句:3
进程监视器中的错误消息与上面相同:-
错误-> SQL 严重错误。(2,125) EOEN_MVC.EOEN_MODEL.EOENInterface.OnExecute 名称:RaiseEvent PCPC:14959 语句:259 调用自:FUNCLIB_HR_ESP.TRGR_FUNCTIONS_ESP.Field 公式名称:Create_Triggers_ESP 语句:60 调用自:JOB.REPORTS_TO.SavePostChange 语句:3
我尝试在应用程序服务器和进程调度程序中将 DBFlags 参数保持为“8”和“0”。
我还检查了 EOEN_MSG_CHNL 队列、其相关的服务操作 EOEN_MSG、处理程序、路由等。一切都处于活动状态并正在运行。没有失败的 IB 消息。域状态处于活动状态。
没有任何效果。并且错误仍然存在。
任何建议都可能会有很大帮助。
解决方案
推荐阅读
- android - 切换到另一个活动需要时间
- python - 在无头 linux 服务器上使用 python selenium
- python - 为什么我的 's' 键在 Python repl 中不起作用?
- c# - Unity在列表中实例化对象并从列表和游戏中销毁它
- javascript - 为什么添加跨度会改变 Chrome 中的字母位置或宽度?
- dart - 类构造函数:如何在列表中设置默认类
- java - 如何在 JavaFX 画布上快速绘制单纯形噪声?
- python - 通过检查其他列的条件来更改 Pandas Dataframe Column 的值
- firebase - Firestore 中数组的存储大小限制是多少?
- flutter - 如何在 Flutter Table 中的每个 TableRow 之间提供垂直间距