Client request if Network failure, ROSuperTCPChannel can not retry!

DELPHI XE, RO SDK 6.0.53.935,INDY 10.5.8 (Development Snapshot Revision 4713)

Client request if Network failure or Server stop, ROSuperTCPChannel can not retry!!!

Select ROSuperTCPChannel, Click Start Test

at client Testing , Click stop server(or Terminate NewServer.exe),
if server is remote, can disconnect the network cable
Client prompt Exception “Timeout” , Plug the Internet cable or start server, Click Yes Retry,

but prompt Exception “Connection Closed Gracefully.” and can not retry!!

if use ROIndyTCPChannel can retry!!

Other channel not tested

Hello,

Thanks for the report. The issue was logged as #54479.

Best regards

Thank you , I will Upgrade Version 6.0.57 , How to modify the source code Fix the problem? I hope can help me,

After ROSuperTCPChannel increase AutoReconnect function of this problem

I very much need fix the problem ,who can help me modify the source code ??

Hello,

We haven’t fixed this issue yet. I will inform you when it will be ready

Best regards

ROSynapseSuperTCPServer/ROSynapseSuperTCPChannel have the same problem

Hello,

Thanks for the report, we will work under this too.

Best regards

I’m now updated to 6.0.57.993, have the same problem,

I very much need fix the problem ,who can help me modify the source code ??

Hello,

Unfortunately, we haven’t fixed the issue yet. Sorry for delay

Best regards

I am also an urgent need to fix this problem!
I am also an urgent need to fix this problem!
I am also an urgent need to fix this problem!
who can help

Guys this is CRITICAL if we want to develop real time, reliable and stable systems with RemObjects.

I’m well known for pointing out the disconnection and event sink issues.

Hello,

Change given test project please and retest it : set for TROSuperTCPChannel AutoReconnect property to True and comment channel disconnection before doing retry

if Application.MessageBox(PWideChar(vMsg), '', 36) = ID_YES then begin //ROSuperTCPChannel.Client.Disconnect; aRetry := True; end;

Hope this helps

AutoReconnect cannot solve the problem, if Server stop and start, client cannot Reconnect, when Network failure user manual operation more useful

when AutoReconnect Application of freezing to death

sorry for my poor English! I uploaded a simple test case,

Hello,

I’m really sorry for this prolonged investigation. We have boosted the priority of this issue to react faster on this from now on.
So what’s found. First, there is a problem regarding OnException event and superchannels. If the connection has been broken on the communication level superchannels must follow the special procedure to reestablish it. Just sending the recent package again doesn’t work. That’s why this event usage is limited to plain channels or exceptions related to business logic. It is logged and will be fixed sooner or later.
The workaround. Using AutoReconnect = true seems to be the best solution in this case. The AutoReconnect logic takes care of all required connection reestablish procedures and does it in background. Turn this property on in the designer and let it it do it’s job. I have tested your application carefully following your instructions - it does not freeze and behaves as expected. In real life there is a chance of race condition so please check server’s Connected property before retrying the request to make sure the connection established (anyway retrying with the disconnected channel makes little sense).

Best regards - Sergey.

Sorry, My Test case AutoReconnect = True can be used,

I hope as before, When AutoReconnect = False,
OnException aRetry = True,Any error and network failure or disconnected can reconnect and try again

TestRORetry2.0.rar have a problem, Sleep(60000) but ROSuperTCPChannel.RequestTimeout =6000,

Hello,
ROSuperTCPChannel.RequestTimeout is time in milliseconds and it should be more than sleep.
Please set Sleep(60000) and ROSuperTCPChannel.RequestTimeout =60100,

Hello,

I hope as before, When AutoReconnect = False,
OnException aRetry = True,Any error and network failure or disconnected can reconnect and try again
Unfortunately this cannot be used with superchannels atm, quite sophisticated fixes to the internal logic are required.
exdsoft said: TestRORetry2.0.rar have a problem, Sleep(60000) but ROSuperTCPChannel.RequestTimeout =6000,
Sorry for confusing you, it seems one of my debugging things spilled out.

Best regards - Sergey.

Was this problem ever fixed? We are more careful updating the DA and the SDK because issues like this one.

Hi, if I discover that the server had freeze, destroy the component and recreate it manually, should work?? If yes how can I find out that server is dead? Or that somehow connection is not working anymore?