I have a program that runs on boxA. It does an SQL connect to boxB and then does:
to run MYPGM on boxB, pass it value field1, and receive value field2 back.
What we are finding is even though MYPGM runs and completes correctly, sometimes the new value for field2 is not passed back. When this happens the SQL call returns state 38501/code -443, error details:
The joblog for the local job and the remote job both show no other errors of note.
Does anyone know why this happens, and how we can make it work correctly?
Code:
exec sql call MYPGM(:field1,:field2);
What we are finding is even though MYPGM runs and completes correctly, sometimes the new value for field2 is not passed back. When this happens the SQL call returns state 38501/code -443, error details:
Code:
Additional Message Information Message ID . . . . . . : SQL0443 Severity . . . . . . . : 30 Message type . . . . . : Diagnostic Date sent . . . . . . : 11/04/19 Time sent . . . . . . : 11:40:36 Message . . . . : Trigger program or external routine detected an error. Cause . . . . . : Either a trigger program, external procedure, or external function detected and returned an error to SQL. If the error occurred in a trigger program, the trigger was on table MYPGM in schema MYLIB. If the error occurred in an external procedure or function, the external name is MYPGM in schema MYLIB. The associated text is ???????????? ????????????. If the error occurred in a trigger program, the associated text is the type of trigger program. If the error occurred in an external function, the associated text is the text of the error message returned from the external function. Recovery . . . : Refer to the joblog for more information regarding the detected error. Correct the error and try the request again.
Does anyone know why this happens, and how we can make it work correctly?