Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF » [CDO] How is timeout detected?
[CDO] How is timeout detected? [message #1042328] Tue, 16 April 2013 09:26 Go to next message
Alex Lagarde is currently offline Alex LagardeFriend
Messages: 193
Registered: May 2010
Senior Member

Hi everyone,

I was wondering how does CDO detect timeout one a client machine.

We have a customer which has a very restrictive server configuration
(only 1 port is opened) and hence "ping" the server does not even work.

With this configuration, any time a user does not modify his models for
more than a few minutes, a TimeOut Exception is raised. With our other
customers, who do not have this server configuration, TIME OUT is only
raised when server is actually down.

Any hint on the code I should look at to debug the timeout detection?

Best regards,
Alex Lagarde (Morel)
Re: [CDO] How is timeout detected? [message #1042353 is a reply to message #1042328] Tue, 16 April 2013 10:10 Go to previous message
Eike Stepper is currently offline Eike StepperFriend
Messages: 6682
Registered: July 2009
Senior Member
Am 16.04.2013 11:26, schrieb Alex Lagarde:
> Hi everyone,
>
> I was wondering how does CDO detect timeout one a client machine.
>
> We have a customer which has a very restrictive server configuration (only 1 port is opened) and hence "ping" the
> server does not even work.
>
> With this configuration, any time a user does not modify his models for more than a few minutes, a TimeOut Exception
> is raised. With our other customers, who do not have this server configuration, TIME OUT is only raised when server is
> actually down.
>
> Any hint on the code I should look at to debug the timeout detection?
Probably at the adequate end of the stack trace of the TimeoutException that you experience :P

I suspect that your server somehow closes idle connections, where the idle time is short. In some environments the
client end of such a connection is not aware until your user sends the next request, which can time out. You can use
CDONet4jSession.options().getNet4jProtocol().setTimeout() to control when requests time out.

But you probably want to keep the connection open and be notified "immediately" when it fails for any reason. You can
open a HeartBeatProtocol through the same IConnector that's used by CDO's session. Or you can use a special session type
that uses a HeartBeatProtocol internally to discover connection failure and initiate transparent reconnects:
CDONet4jUtil.createReconnectingSessionConfiguration().

Cheers
/Eike

----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper


Previous Topic:[Teneo] Semantics of Hibernate Bag for a non indexed many-to-many association
Next Topic:Alter the location and the background color of EditPart
Goto Forum:
  


Current Time: Wed Apr 24 21:28:15 GMT 2024

Powered by FUDForum. Page generated in 0.03164 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top