If you’ve ever tried to cancel a lot of messages with errors, either manually or with a report, you may have noticed that the table space increases. You may have been wondering why this is so.
The table space increases because, when a message is cancelled, a new message version is written. The new message contains all the headers and payload of the original message. This means that the original versions and the new version are temporarily both in the same table. As a result, the table space increases.
The screenshot below shows an example of error message before and after cancellation. The retention period starts as soon as the message is cancelled.
The amount of space used in the database depends on the following factors:
- Trace Level
The parameter is set to analyze the message processing so that individual and/or all steps of a pipeline are documented. For this new version, the amount of data in the headers (in particular, the trace header object) depends on the configuration of TRACE_LEVEL. You can find this using t-code SXMB_ADMIN -> Integration Engine Configuration -> Category: Runtime -> Configuration.
- Message Type
If a message with an error is an acknowledgement, there is no payload.
- PI Release
- For PI 7.10 (and higher) an optimization has been included that skips writing the payload as long as it has not changed.
- For PI 7.0 (and lower) the optimization mentioned above is not yet in place. Therefore, the payload will be written for the newly created version. The space required for storing the payload depends of its size and also on its structure. The payload is stored as a compressed data stream to SXMSCLUR, that is, if the factor of compression is high, the amount of additionally required disc space is low (and vice versa).
SAP Note 872388 – Troubleshooting archiving and deletion in PI