-
-
Notifications
You must be signed in to change notification settings - Fork 287
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pub-Sub tries to deserialize messages from not subscribed topic #2113
Comments
It looks like TopicActor starts at another non-publisher node so it has to deal with serialization. How can we force it to start at the local node for specific topics? |
Hi, That being said. That change would be pretty easy to solve. it´s mostly about allowing to have a non hardcoded kind for the topic actor. Up for suggestions here |
Under the covers, the TopicActor is registered like
Would be awesome to build this in at some point, but there is another solution to the serialization problem (although having multiple topic actor kinds is still good for the isolation) - which is to not serialize at all. In theory, the TopicActor and the PubSubMemberDeliveryActor should not actually have to deserialize the contents being published at all! I'm not sure the best way to go about this, since the messages that facilitate publishing need to be deserialized of course, just not the actual payload. Would definitely be a performance bump and make it so the publisher and subscriber are the only ones that need to know how to serialize the contents. |
We have a few nodes and some of them were using
RunAsClient
but now I disabled it and things went wrong. One of nodes (which originally didn't useRunAsClient
) leverages pub-sub for internal communication between its actors. Somehow those internal messages arrive to another node and cause a deserialization exception (because another node doesn't know anything about those internal types). This happens even though that node doesn't subscribe to the topic where this message is published (but subscribes to another). It didn't happen before theRunAsClient
change.Is this a bug or expected behavior?
The text was updated successfully, but these errors were encountered: