Page 1 of 1

sample_client can't connect uaserverhp over 10 mins.

Posted: 04 Jul 2018, 05:00
by RichLiao
Hi

I used sample_client connect uaserverhp, it worked, but it would disconnect after 6-8 mins

The error messages on server like this:

Code: Select all

E|20:17:42.069864|25803|  uatcpmsg_close_channel: ERROR channel 36553176 not found
E|20:17:42.070028|25803|  uasession_uatcpmsg_close_channel_complete: channel 922849536 close failed with -22
E|20:17:42.896736|25803|    uasession_dispatch_message: could not find channel 922849536
E|20:17:42.896899|25803|  **** uatcpmsg_uasession_dispatch_message_complete: message dispatching failed with -22
E|20:17:42.897038|25803| **** uatcpmsg_peer_recv_complete: Receive failed with -17, Message 0x22d85b0
I think this problem is from sample_client, because other client connect uaserverhp worked fine.

And the other problem is reconnect of subscription.
While the above error is occurred, sample_client tried to reconnect subscriptions (if it has subscriptions before disconnect).
The state of finite state machine is 2->13->10->11->5->2 (created->disconnect->wait for publish->republishing->wait for recreate item->created)
I think it maybe lack a state 4, recreate item, between 5 and 2.

Best regards

Re: sample_client can't connect uaserverhp over 10 mins.

Posted: 04 Jul 2018, 11:37
by Support Team
Hello,

the Client side of the SDK is still Beta state as mentioned in the CHANGELOG.TXT:
"The client side is still considered beta and not recommended for production use "

So errors must be expected. We provide this code only to allow our customers to start their development early.
The interfaces are stable.

There are known issues about the reconnect scenario which we are working on.

The FSM itself is quite complex. If you are interested in the details of the FSM
you can generate an FSM graph from the code:
1) enable HAVE_DOT_WRITER in src/util/fsm.h.
2) recompile the SDK
3) run client_demo (or any other client application)
This creates the file client_fsm.dot in the CWD
4) generate a PNG file using Graphviz dot tool
dot -Tpng client_fsm.dot > client_fsm.png