Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] Changing keepAlive property of ECF Generic

Hi Pablo,

On 7/4/2012 4:24 AM, Pablo García Sánchez wrote:
Hi folks!

I am getting the "ECFException Request timed out after 30000ms" [1]
when a service lasts more than 30 sec. As my services are
computationally expensive, I changed the keepalive property adding the
next argument to the Program Arguments (or in the VM arguments) in the
Launch Configuration:

-Dorg.eclipse.ecf.provider.generic.keepalive=120000

However, I still getting the same exception of 30000ms [1].

Is this property correctly setted?

I believe the property you want to set is: ecf.remotecall.timeout...i.e.:

-Decf.remotecall.timeout=40000

This property is documented in [1]. We should have a single wiki page enumerating all the properties (and default values) for remote services, but we do not have it yet. If you (or someone) would like to create such a page, I will add to it.



Also, I take the opportunity to ask another question. How to avoid the
BrokenPipe exception when a remote service leaves? (for example,
closing a remote equinox). Service is correctly managed with the
"unbind" local method, but just to avoid print the exception in the
screen, for example :)

Thanks in advance!

Could you present an example of the BrokenPipe exception output that you are referring to? ...and you mean just to prevent the exception/stack trace info from going to the log...is that correct?

Thanks,

Scott

[1] http://download.eclipse.org/rt/ecf/3.5.6/javadoc/org/eclipse/ecf/remoteservice/IRemoteCall.html#DEFAULT_TIMEOUT




[1]
Exception in thread "Thread-5" org.osgi.framework.ServiceException:
Service exception on remote service proxy
rsid=org.eclipse.ecf.remoteservice.RemoteServiceID[containerID=StringID[ecftcp://localhost:3782/server];containerRelativeID=2]
	at org.eclipse.ecf.remoteservice.AbstractRemoteService.invoke(AbstractRemoteService.java:282)
	at $Proxy1.start(Unknown Source)
	at es.ugr.osgiliath.experimentlauncher.Launcher$AlgRunnable.run(Launcher.java:211)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.eclipse.ecf.core.util.ECFException: Request timed out
after 30000ms
	at org.eclipse.ecf.provider.remoteservice.generic.RegistrySharedObject.callSynch(RegistrySharedObject.java:882)
	at org.eclipse.ecf.provider.remoteservice.generic.RemoteServiceImpl.callSync(RemoteServiceImpl.java:55)
	at org.eclipse.ecf.remoteservice.AbstractRemoteService.invokeSync(AbstractRemoteService.java:245)
	at org.eclipse.ecf.remoteservice.AbstractRemoteService.invoke(AbstractRemoteService.java:277)
	... 3 more
Caused by: org.eclipse.equinox.concurrent.future.TimeoutException
	... 7 more





Back to the top