Skip to Content
Author's profile photo Anil Veepuri

Create your own Automatic Message Restart job on PI Java Stack (PI 7.3 EHP1)

So far, till we arrived at Java Single stack of PI, we have the luxury of scheduling most of the house keeping jobs on ABAP stack. One of the most important of those jobs is automatic message restarting. Let’s see how we can create our own Automatic Message Restart Job in PI (This blog is based on PI 7.3 EHP1, SP05).

To begin with, the default jobs that were provided on the AAE are

  1. Default Version Archive Job
  2. Default Delete Job
  3. Default Recover Job


Let’s consider a message that got failed (deliberately though) in the receiver file adapter. The message Id is ‘f1042b3f-b580-11e2-a376-000001ffb7ce‘.


Now, it’s time to create our own message restarting job. Go to Configuration and Monitoring Home -> Adapter Engine -> Background Job Processing Monitor -> Create Job . You will get the below screen.


In the Job Details tab, select the job type as Restart and fill the other attributes. The job name is given to be MyMsgRestartJob in this case. Move on to the Parameters tab.


In the drop down list, there are two options. Select MAX-RESTART and fill the parameter with the appropriate value.


Move on to the Rules tab.


Create a Rule Definition. This rule definition has various options. Few of them are Sender Component, Receiver Component, Interface, Interface Namespace etc. Based on the above combinations, you can create your own rule. This job restarts only those messages that are in NDLV state and that meet the rule created in this step.


Save and Activate the Job.


Now that our job is active, it will be executed in the next one hour (as per scheduled earlier). But, in order not to wait till the next run and at the same time to prove that the job works fine, we will execute the job manually by hitting the button Execute Now in the above image.

Execute the job and check the message log of the same message that we considered in the beginning.


Observe the time that we had executed our message restart job and the log version that shows that the “Message restart triggered by restart job: MyMsgRestartJob”.

Go ahead and create your own jobs… 🙂

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member


      I have created the Automatic Message Restart job with my own user id by following the steps mentioned in your blog. But when I am clicking the Execute Now button nothing happens. Also the job is not getting executed automatically at mentioned intervals (say in every 1 hour). The status is showing 'Unknown' with no green box.

      Is there anything I am missing?



      Author's profile photo Former Member
      Former Member

      Nice to know...


      Author's profile photo Jochen Hätty
      Jochen Hätty

      Awesome, thank you very much for this article! 🙂

      Author's profile photo charan kumar
      charan kumar

      Nice Blog.

      Can we create a job to resend messages in holding status .??

      Author's profile photo Jochen Hätty
      Jochen Hätty

      Message in status "holding" will be re-send automatically.

      How often and how long that retries take place, is defined in the inbound communication channel of that specific scenario.

      Or are you referring to a different status?

      Author's profile photo charan kumar
      charan kumar


      Thanks for reply.

      In my case messages are getting holding status even predecessor delivered successfully.Until re-send manually messages are not delivering. I want to create background job to resend holding messages.

      1) Is it possible to create background job to resend HOLD(Not System Error) message for particular channel?(without using EJB)

      2)I am using SOAP channel at receiver. How to configure inbound channel to resend holding messages.

      Thank you.

      Author's profile photo Xavier San Sebastián
      Xavier San Sebastián

      I'm in the same situation. I use Extended EOIO Error Handling and I don't know how to restart the holding messages. Trying to find a work around.

      Author's profile photo Mikhail Evlakhov
      Mikhail Evlakhov

      Thanks you for this article!

      Author's profile photo Avinash Varma Nadimpalli
      Avinash Varma Nadimpalli



      Could you please tell me if there is a way to resend the cancelled messages in SAP PI 7.31

      My requirement: Messages getting cancelled in SAP PI 7.31 as the target system is down and i need to resend them manually.




      Author's profile photo Sampathi Geetha
      Sampathi Geetha


      Using the above blog there is any way to cancel the error messages for a particular interface in adapter engine.

      could you please suggest any solution for this.

      Author's profile photo Patrick Duchesneau
      Patrick Duchesneau



      Would you have similar for the MQMON housekeeping?