OPS rexx abend 0C3 in module OPSQL at offset 155E RC=00000003
search cancel

OPS rexx abend 0C3 in module OPSQL at offset 155E RC=00000003

book

Article ID: 188973

calendar_today

Updated On:

Products

OPS/MVS Event Management & Automation

Issue/Introduction

Can you help explain abend 0C3 in module OPSQL at offset 155E ?

11:49:12 OPS3092J UADSTATS sd is 2020-03-25
11:49:12 OPS3092J UADSTATS st is 11:49:12
11:49:12 OPS3092J UADSTATS reqstatus is Ready
11:49:12 OPS3092J UADSTATS lpar.p is LPAR01
11:49:12 OPS3092J UADSTATS operstatus is NOT_ACTIVATED  
11:49:12 IEA995I SYMPTOM DUMP OUTPUT   
11:49:12 SYSTEM COMPLETION CODE=0C3  REASON CODE=00000003
11:49:12  TIME=11.49.12  SEQ=01481  CPU=0000  ASID=0034
11:49:12  PSW AT TIME OF ERROR  078D1000   9E37055E  ILC 4  INTC 03
11:49:12    ACTIVE MODULE           ADDRESS=00000000_1E36F000  OFFSET=0000155E
11:49:12    NAME=OPSQL
11:49:12    DATA AT PSW  1E370558 - 00044400  C1D2A7F4  00299280
11:49:12    GR 0: 00000000_00000000   1: 00000000_1E6434E0
11:49:12       2: 00000026_1E643454   3: 00000000_1E6434E0
11:49:12       4: 00000000_1E64E13C   5: 00000000_1E64E130
11:49:12       6: 00000000_00000009   7: 00000000_1E643488
11:49:12       8: 00000000_1E643454   9: 00000000_1E6434C0
11:49:12       A: 00000000_1E5D7000   B: 00000000_1E643108
11:49:12       C: 00000000_1E370388   D: 00000000_1E643198
11:49:12       E: 00000000_9E370430   F: 00000000_0000000A
11:49:12  END OF SYMPTOM DUMP
11:49:12 OPS3092J Error in OPS SQL call:
11:49:12 OPS3724O TSO CMDOSF Sent CMD=OI ALERTSYS 1318493
11:49:12 OPS3092J OI ALERTSYS 1318493
11:49:12 EOCSP0001I Rule=SPPMSG.OPS3092J Started Proc=ALERTSYS
11:49:12 OPS3092J UPDATE UAD_BCPIICTL_PANEL SET LPARSTAT=:operstatus, REQDATE=:
11:49:12 OPS3092J SQLCODE is SQLCODE
11:49:12 OPS3092J ESTAE LEVEL 1 INTERNAL SYSTEM CODE=0C3 TIME=11:49:12 SEQ=0 CP
11:49:12 OPS3092J PSW AT TIME OF ERROR 078D1000 9E37055E ILC 4 INTC 03 RSCD 000
11:49:12 OPS3092J CURRENT ROUTINE NAME=OPSQCP ADDRESS=1E36F0E0 OFFSET=0000147A
11:49:12 OPS3092J GPR  0-3  00000000 1E6434E0 1E643454 1E6434E0
11:49:12 OPS3092J GPR  4-7  1E64E13C 1E64E130 00000009 1E643488
11:49:12 OPS3092J GPR  8-11 1E643454 1E6434C0 1E5D7000 1E643108
11:49:12 OPS3092J GPR 12-15 1E370388 1E643198 9E370430 0000000A
11:49:12 OPS3092J AR  0-3  00000000 00000000 00000000 00000000
11:49:12 OPS3092J AR  4-7  00000000 00000000 00000000 00000000
11:49:12 OPS3092J AR  8-11 00000000 00000000 00000000 00000000
11:49:12 OPS3092J AR 12-15 00000000 00000000 00000000 00000000
11:49:12 OPS3092J ABENDING LOCATION  OPSQCP+X'147E'
11:49:12 OPS3092J UNKNOWN  CALLED BY OPSQCP+UNKNOWN
11:49:12 OPS3092J OPSQCP   CALLED BY OPSAMD+X'998'
11:49:12 OPS3092J OPSQCP   CALLED BY SYSTEM+UNKNOWN
11:49:12 OPS3092J TSO SERVICE ERROR - ABEND CODE X'840C3000' - REASON CODE X'0000000A'
11:49:12 OPS3092J READY

This occurs in an OPS rexx proc that tries to update a table on another system.
The code around the sql statement looks like this:

 sd = '20' || translate(date('O'),'-','/')                     
 st = time()                                                   
 reqstatus = 'Ready'                                           
 say thisrexx 'operstatus is' operstatus                       
 say thisrexx 'sd is' sd                                       
 say thisrexx 'st is' st                                       
 say thisrexx 'reqstatus is' reqstatus                         
 say thisrexx 'lpar.p is' lpar.p                               
 say thisrexx 'operstatus is' operstatus                       
                                                               
 sqlcmd = "UPDATE UAD_BCPIICTL_PANEL SET LPARSTAT=:operstatus,",
    "REQDATE=:sd,REQTIME=:st,REQSTATUS=:reqstatus ",           
    "WHERE LPAR='"lpar.p"'",                                   
    "SYSTEM(SY90)"                                             
                                                               
 address 'TSO' 'OPSQL' sqlcmd                                  
 if (rc <> 0) | (sqlcode <> 0) then signal sqlerror             

Abend 0C3 is an EXecute instruction trying to execute another EXecute.
 
Could you please clarify, what's wrong and how to fix it?

 

Environment

Release : 13.5

Component : OPS/MVS

Resolution

The error was resolved by using the ADDRESS SQL environment to issue the SQL statement rather than the OPSQL command processor.




Additional Information

If this does not resolve a similar problem for another customer, then a support case should be opened and a copy of the archived OPSLOG, and dump should be provided.