Hi Alan,
We, at Boon Edam are working on a rabbit MQ implementation using the c++ interface SimpleAmqpClient. Since you are working on this source code, maybe you can help us out with a issue when the network is broken for a while.
Communication with rabbitMQ works fine till the server is rebooted or when the network is broken for several minutes. When we try to call the createSecure(...) method after the connection was broken for a second time, we got a runtime error and the program terminates. Is there any way to prevent this error and make a new valid connection? When the interface supports a method where we can close or remove the old invalid connection, we would be able to reconnect without a program termination. Hope you can help us out.
using
- ubuntu 14.04
- SimpleAmqpClient master (2.5.0) and also with 2.4.0 release version.
- rabbitmq-c 0.8.0 (4.2.1)
Thanx, Walt
Hi Alan,
I have made an example program in C++/Qt.
It makes a SecureConnection twice. These go all right. Then there is a small pause of 120 seconds to be able to shutdown the server where the connection was made to.
After the shutdown and restart within the 2 minutes, the application will try to make a new secure connection. It will terminate.
The certificates and server connection settings are not included in the example. But I expect you will have them yourself.
Thanx for looking at the issue,
Regards, Walt
Van: Alan Antonuk <alan.a...@gmail.com>
Verzonden: vrijdag 11 november 2016 08:17:30
Aan: Walt Kemme
CC: Bas Schoorl; simpleamqpclient-users
Onderwerp: Re: Question about SimpleAmqpClient on network error and recover from this
Hi Alan,
The example code is not the code that is wrong, but the library SimpleAmqpClient. The test just exit the application without having an exception.
This is the output of the test code for trying to connect again:
….
“35 seconds passed”
“40 seconds passed”
“45 seconds passed”
“50 seconds passed”
“55 seconds passed”
Calling CreateSecure()…
The program has unexpectedly finished.
Is seems, some internal pointer is invalid and does something really wrong when the connection became broken and a new one is tried to create. No exception is thrown.
Hope you can dig into this issue.
Thanks,