cancel
Showing results for 
Search instead for 
Did you mean: 

Transactional behaviour in third party -> XI idoc scenario

Former Member
0 Kudos

Hi,

a third party system is sending an idoc via TRFC-call with the function module "IDOC_INBOUND_ASYNCHRONOUS" to the XI-system.

The scenario is working fine, but one day the XI table space was full.

The third party systems gets the following error message:

<b>RFC_ERROR_SYSTEM_FAILURE Problems found during the EXPORT to specified key in table.</b>

For the sending third party system that is an error and the internal status is set to mode "rollback". That means the third party systems is going to send the idocs again after a specified period of time.

If i look in transaction SXMB_MONI i can see that the inbound queues were stopped (XI tried to open more than one queue, but all queues were stopped).

After getting more table space available for XI all (stopped) inbound queues were activated manually, and <b> now all messages waiting in XI were processed!</b>. To me that means XI was able to receive all messages, even the table space was full???!!!!

But this behaviour is wrong in a transactional view of the whole process. The sending system is going to send the idocs again and so the idoc's were processed twice in the XI system and respective in the receiver system.

How to handle that?

Accepted Solutions (1)

Accepted Solutions (1)

udo_martens
Active Contributor
0 Kudos

Hi Christian,

reduce (1) the attempts in transcation SMQR.

Regards,

Udo

Former Member
0 Kudos

Hi Udo,

what is the effect of setting that value to 1??

I dont understand how can the message be in the XI system, if the database is full??? More queues will be opened but cannot be processed, but the message seems to be in the XI system...and if so (the message is in XI) the error message to the sending system is wrong!?

Should i delete the messages (after solving the database problems) in transaction SXMB_MONI (is that possible?)and tell the sending system to send the messages again?? I am quite confused...

Regards,

Christian

udo_martens
Active Contributor
0 Kudos

Hi Christian,

u can jump from Monitoring to Queue with Link "Queue-ID", where u can delete or execute queued messages.

Your question "what is the effect of setting that value to 1?": Execute messages only once bevor put to error status.

Regards,

Udo

Former Member
0 Kudos

Ok, thanks Udo - thats now clear.

How do you explain that XI is queueing messages even the table space (for further processing)is full? Is there a separate table space for queueing in the XI?

udo_martens
Active Contributor
0 Kudos

Hi Christian,

don't look to questions like "What happens if XI table space is full"? The answer is: "Strange things" Even SAP can't give u an answer 4 that. U should try 2 avoid that case, not handle it.

Regards,

Udo

Answers (0)