Deleting unwanted entries from RFC tables (ARFCSSTATE, ARFCSDATA etc.)

375566 Large number of entries in tRFC and qRFC tables
366869 HOLD/EXECUTED/WCONFIRM entries in ARFCRSTATE
For tRFC outbound the tables used are ARFCSSTATE and ARFCSSDATA.
For qRFC outbound the tables used are TRFCQOUT ARFCSSTATE and ARFCSSDATA.
The RFC tables should be kept as small as possible - in some cases these tables can contain millions of entries.
To check the number of entries goto SE16, enter the table name, for example ARFCSDATA, then choose the "Number of Entries" Option:
  

The 3 notes above detail reports for deleting entries in the RFC tables.
Note that report RSTRFCEF is not to be used anymore, we have a new report to check inconsistencies as described in the SAP note: 779664
The report RSTRFCEF will be replaced by the report RSTRFCEG.
Note that report RSTRFCEG contains a parameter CHECK_ONLY, if you mark it, then the inconsistencies will not be deleted.
The standard way to delete queue entries is to run report RSTRFCQD/DS as a batchjob as mentioned in note
763255
In SMQ1 you can goto "QRFC" in the Menu and then choose reorganise, this will delete ALL queues in SMQ1. However, if you want to delete
selected queues then you could choose "Edit" in the menu and then choose "delete Selected objects".
Note 779664 - Consistency check of qRFC queues with deletion
Symptom
You suspect that there are inconsistencies in the data of the qRFC outbound queue. You base this assumption on:
  • LUWs that are still displayed in transaction SMQ1, but were already processed.
  • An unchanged or a steadily increasing volume of data in the QREFTID or ARFCSDATA tables.
You suspect that there are inconsistencies in the data of the qRFC incoming queue. You base this assumption on:
  • LUWs that are still displayed in transaction SMQ2, but were already processed.
Other terms
qRFC, SMQ1, SMQ2
RSTRFCEF, RSTRFCEL, RSTRFCEK, note 760113
Reason and Prerequisites
The inconsistencies could be caused by the fact that, after an LUW was processed, the data describing this LUW could not be deleted from all tables of the qRFC data model.
The tables in question in the outbound processing are: TRFCQOUT, QREFTID , ARFCSSTATE, ARFCSDATA.
The tables in question in the inbound processing are: TRFCQIN, TRFCQINS, TRFCQSTATE, TRFCQDATA.
Solution
You can identify and delete inconsistencies in the outbound queue using report RSTRFCEG.
You can identify and delete inconsistencies in the inbound queue using report RSTRFCEH.
  • Attributes of the RSTRFCEG and RSTRFCEH reports:
    • The reports should be scheduled as a background job.
    • If the background job is executed parallel to other processing in the qRFC using the "Check only" option, it may also report temporary inconsistencies that can no longer be found as inconsistencies when the processing finishes. The report therefore already checks all inconsistencies a second time.
    • If the background job is used to delete inconsistent entries and is executed in parallel to other processes in the qRFC, database locks may occur. We therefore recommend that you do not carry out any parallel processing for the deletion.
    • All checks are carried out in all clients in the system.
    • The QDEL value is required for executing reports in the S_ADMI_FCD authorization object.
  • Common parameters of the RSTRFCEG and RSTRFCEH reports:
    • LUWs in the memory (READ)  This parameter enables you to limit the number of LUWs to be checked. This parameter is essential for the system load (low value) and performance (high value).
    • LUWs up to DB commit (BLK_SIZE) - This parameter controls the number of inconsistent LUWs before the database commit is executed for the deletion. This parameter is essential for the system load (low value) and performance (high value).
    • "Check only" checkbox (CHECK) - This parameter enables you to display the number of inconsistent LUWs. Deletions are not possible in this mode.
  • Additional parameters of the RSTRFCEG report:
    • "TRFCQOUT table check" (QOUT) checkbox - This parameter activates the check from the TRFCQOUT table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
    • "ARFCSSTATE table check" checkbox (STATE) - This parameter activates the check from the ARFCSSTATE table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
    • "QREFTID table check" checkbox (REFTID) - This parameter activates the check from the QREFTID table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
    • "ARFCSDATA table check" checkbox (DATA) - This parameter activates the check from the ARFCSDATA table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
  • Additional parameters of the RSTRFCEH report:
    • "TRFCQIN table check" checkbox (QIN) - This parameter activates the check from the TRFCQIN table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
    • "TRFCQINS table check" checkbox (QINS) - This parameter activates the check from the TRFCQINS table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
    • "TRFCQSTATE table checkbox" check (STATE) - This parameter activates the check from the ARFCSSTATE table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
    • "TRFCDATA table check" checkbox (DATA) - - This parameter activates the check from the ARFCSDATA table. If you can already eliminate this table as the source element for an inconsistency, for performance reasons, you should deactivate this check.
The reports mentioned above are provided in the Support Packages attached to this note. You can receive local versions of the reports from the attachment to this note and create them yourself in the customer namespace.


1. Weekly rebuild index table: ARFCSSTATE, ARFCSDATA, ARFCRSTATE, TRFCQOUT, TRFCQIN, TRFCQSTATE and TRFCQDATA
2. RSTRFCQDS (Outbound Q delete), RSTRFCER (ARFCRSTATE delete) as Monthly job
3. Delete inconsistencies in the outbound queue using report RSTRFCEG and delete inconsistencies in the inbound queue using report RSTRFCEH by Monthly basis.

No comments: