Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Troubleshoot integration job failures

Describes issues and resolutions for integration job failures in Optimizely Configured Commerce.

Integration services

Integration is a series of jobs that run both real-time and batch. It is important to monitor that the jobs are all running properly and to take corrective action if they are not. Oftentimes, the corrective action is to simply restart the job.

  1. If a job failed, check for windows event ID 5011-5013. These indicate an app pool recycle. If this event is located, ensure app pool recycles on the web servers are scheduled for a time that will not interfere with integration jobs. For example if the first nightly integration job is scheduled for 10pm, the application pool recycle could be scheduled for 9:45pm. In a load balanced environment staggering the application pool recycling is recommended. If all web servers recycle the application pool at the same time the web site may be inaccessible for a brief period of time.
    1. Open IIS Manager.
    2. Go to Application Pools.
    3. Right click the Configured Commerce platform's application pool.
    4. In Actions, under Edit Application Pool, click Recycling...
    5. Uncheck Regular Time Intervals
    6. Check Specific Time(s) and pick and date and time that is during off-peak hours.
  2. Monitor [serverip]/integration/integrationservice.svc for uptime
  3. If a job fails:
    1. Reschedule the job manually and see if it completes successfully.
    2. If the job is still failing ensure the Navision database is available to the WIS server.
    3. If a job continues to fail, contact Insite support to help troubleshoot.

Avoid stored procedure time outs

Some stored procedures are set to timeout after 90 seconds. In a typical environment, 90 seconds should be a sufficient amount of time. However, there are times where running a stored procedure with excessively large can cause the procedure to timeout. To avoid this, a custom post-processor would need to be written that includes a longer timeout. To use this post processor, a job parameter named [StoredProcedureName] is needed, which should contain the name of the stored procedure to run.