closeIdleConnections during connect-SOAP

Hi,

We are getting below error while queue processor processing an item and is stuck at “ready for processing”. Queue processor runs an activity which calls connect-SOAP from data page.

com.pega.apache.commons.httpclient.MultiThreadedHttpConnectionManager.closeIdleConnections(MultiThreadedHttpConnectionManager.java:600) at com.pegarules.generated.activity.ra_action_invokeaxis2_74f8616d6bb6483ed80272d43b749496.step6_circum0(ra_action_invokeaxis2_74f8616d6bb6483ed80272d43b749496.java:904) at com.pegarules.generated.activity.ra_action_invokeaxis2_74f8616d6bb6483ed80272d43b749496.perform(ra_action_invokeaxis2_74f8616d6bb6483ed80272d43b749496.java:162)

@NaveenReddyMekala :warning: This is a GenAI-powered tool. All generated answers require validation against the provided references.

The error you’re encountering with the MultiThreadedHttpConnectionManager.closeIdleConnections method suggests there’s an issue with how HTTP connections are being managed when your queue processor tries to execute the SOAP request. This typically happens when connections aren’t being properly closed or managed, causing the queue processor to get stuck.

Here are several approaches to resolve this issue:

1. Verify Connect Request Processor Configuration

First, check that your Connect Request Processor is correctly configured:

  • Ensure it’s associated with the correct ruleset containing your Connect SOAP rules
  • Verify the queue location and dequeuing options are correctly set
  • Make sure the request processor is properly referenced in your SOAP connector

2. Check the ProcessConnectQueue Agent Status

The ProcessConnectQueue agent (part of Pega-IntSvcs) is responsible for processing queued connector requests:

  • This agent is disabled by default
  • Verify it’s enabled by checking the “Enabled?” option on the Schedule tab of the agent schedule instances (Data-Agent-Queue class)
  • If it’s not enabled, enable it and restart the agent

3. Review Your SOAP Connector Configuration

Ensure your SOAP connector is properly configured for queue processing:

  • On the Service tab, check if “Intended for” is set to “queuing” if you want asynchronous processing
  • If using synchronous processing, make sure the connection timeout settings are appropriate
  • Verify that any authentication/security settings are correct

4. Implement Connection Management Best Practices

To address the specific closeIdleConnections error:

  • Consider implementing proper connection cleanup in your activities
  • If using custom connection management code, ensure connections are properly closed after use
  • Consider implementing error handling to gracefully manage connection failures

5. Consider Asynchronous Processing

If not already using it, consider configuring your SOAP connector for asynchronous processing:

  • This allows users to continue working while waiting for responses
  • Helps prevent timeouts and connection issues from blocking the main thread
  • Can be more resilient to external system availability issues

References: