APAR status
Closed as suggestion for future release.
Error description
When using RFC transport in ABAP extracted job, if DataStage job is failed while retrieving the DATA from SAP the data will hang in SAP SM58 T-code. If re-run the job it will hang for ever due to un-sent data setting in SM58. Please enhance the SAP-PACk to clean up SM58 data when RFC destination is created Dynamically by DataStage.
Local fix
we have evaluated tRFC LUW cleanup problem in more details and came out with a following procedure to enable tRFC cleanup using current ABAP stage capabilities. 1) This is one time job, only once per SAP app server system. Make the attached ABAP report available in your SAP system. This ABAP report deletes all LUWs in the tRFC queue of the specified RFC destination for the user running ABAP program (System user for example). *&-------------------------------------------------------------- -------* *& Report Z_DELLUW *& *&-------------------------------------------------------------- -------* REPORT Z_DELLUW. DATA: sel_tab TYPE TABLE OF rsparams, sel_tabline LIKE LINE OF sel_tab. PARAMETERS rfc_dest(32) TYPE c. * Specify filter criteria to select the LUWs that should be deleted: * Set date (01/01/1979 - today) sel_tabline-selname = 'DAY'. sel_tabline-kind = 'S'. sel_tabline-sign = 'I'. sel_tabline-option = 'BT'. sel_tabline-low = '19700101'. sel_tabline-high = sy-datum. APPEND sel_tabline TO sel_tab. * Set RFC destination sel_tabline-selname = 'DEST'. sel_tabline-kind = 'S'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = rfc_dest. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * Set owner of the LUW (* to delete all LUWs registered for the specified RFC destination sel_tabline-selname = 'OWNER'. sel_tabline-kind = 'S'. sel_tabline-sign = 'I'. sel_tabline-option = 'CP'. sel_tabline-low = sy-uname. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * Set LUW state (all possible states are added) * CPICERR sel_tabline-selname = 'CPIC'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * SYSFAIL sel_tabline-selname = 'FAIL'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * RECODRDED, VBRECORD, CONFAIL sel_tabline-selname = 'REC'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * SENDED sel_tabline-selname = 'SENT'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * EXECUTED sel_tabline-selname = 'EXEC'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * SYSLOAD sel_tabline-selname = 'LOAD'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * RETRY, ARETRY sel_tabline-selname = 'RETRY'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * ANORETRY sel_tabline-selname = 'NORETRY'. sel_tabline-kind = 'P'. sel_tabline-sign = 'I'. sel_tabline-option = 'EQ'. sel_tabline-low = 'X'. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. * Execute the report that deletes the LUWs registered for the specified RFC destination SUBMIT RSARFCER WITH SELECTION-TABLE sel_tab AND RETURN. If there are more then one user that can run the ABAP program then program should be modified to '*', but in that case the running user has to have capability to delete tRFC messages of all other users that had executed the program. * Set owner of the LUW (* to delete all LUWs registered for the specified RFC destination sel_tabline-selname = 'OWNER'. sel_tabline-kind = 'S'. sel_tabline-sign = 'I'. sel_tabline-option = 'CP'. sel_tabline-low = sy-uname. sel_tabline-high = ''. APPEND sel_tabline TO sel_tab. 2) For each ABAP stage job that hangs, using ABAP program options button of abap stage GUI: specify the following ABAP statement under "additional commands to execute before the program starts" SUBMIT Z_DELLUW WITH rfc_dest eq RFCDEST AND RETURN. then Generate the program, upload the new program to SAP system, and then save and compile the job. If this procedure is implemented, all failed tRFC messages from the previous ABAP program executions, for the given ABAP program and RFC destination, will be deleted at the ABAP program start-up. This procedure should eliminate one of the major problems with ABAP stage tRFC hanging.
Problem summary
Problem conclusion
Temporary fix
Comments
Closed with SUG code.
APAR Information
APAR number
JR38586
Reported component name
IS PACK FOR SAP
Reported component ID
5724Q5500
Reported release
650
Status
CLOSED SUG
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2011-01-04
Closed date
2011-07-08
Last modified date
2011-07-08
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Applicable component levels
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCSRJX","label":"DataStage Pack for SAP R\/3"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.5.0","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
08 July 2011