on 02-05-2015 5:06 AM
Dear All,
We have a scenario where we need to get weather data from website www.webserviceX.NET and store weather data in ECC. Scenario will be syncronous proxy(ECC)->PI->soap(webserviceX). The limitation for this website is it will accept 1 city per call, hence if we want to retreive weather for 10 cities then 10 soap calls to be made. To acheive this we created a report in ECC & scheduled to run in background. This report works fine when run in foreground for all cities but when we run in background we will recive below error message in PI for some of the soap calls. Ex: If 10 calls were made in background 3 to 4 calls will fail with below mentioned error. Your inputs on this will be highly appreciated.
Error message in SXMB_moni of PI
com.sap.engine.interfaces.messaging.api.exception.MessagingException: SOAP: Response message contains an errorXIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.Open() at WebServicex.GlobalWeather.GetWeather(String CityName, String CountryName) --- End of inner exception stack trace ---</
Hi Santhosh,
The issue is with background job . The same runs ok with foreground job.
Thus need to check if background job making the connection pool calls faster than foreground process. If this is the case then even if you increase the pool size the problem will surface again.
Regards
Anupam
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
80 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.