You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Instance 1 connects to instance 2 using rlinks with forward_local_invocations and forward_remote_invocations set to true.
Instance 1 registers procedure foo.bar.1 and instance 2 registers foo.bar.2 on their ends
Since both RLinkLocalSession and RLinkRemoteSession are subscribed to wamp.subscription.on_create, when instance 1 successfully registers procedure foo.bar.2 due to the rlink connection, it gets an event wamp.subscription.on_create on the local leg, so it then tries to re-register the procedure on the remote leg.
Exception gets raised here and since there is no error handling here, bad things happen
This WAMP message item collects all node IDs of router nodes a message has traveled when crossing rlinks. And this field can then be used to filter looped back messages.
Now, there will be errors left in the code. I guess we need some CI test approach where we can add specific test scenarios, including the topology between nodes and their config, to robustly fix such issues robustly and prevent them to reappear ...
Imagine two Crossbar instances
forward_local_invocations
andforward_remote_invocations
set to true.foo.bar.1
and instance 2 registersfoo.bar.2
on their endsRLinkLocalSession
andRLinkRemoteSession
are subscribed towamp.subscription.on_create
, when instance 1 successfully registers procedurefoo.bar.2
due to the rlink connection, it gets an eventwamp.subscription.on_create
on the local leg, so it then tries to re-register the procedure on the remote leg.Exception gets raised here and since there is no error handling here, bad things happen
crossbar/crossbar/worker/rlink.py
Line 309 in 712d9da
The text was updated successfully, but these errors were encountered: