These are chat archives for akkadotnet/akka.net

16th
Aug 2017
Bartosz Sypytkowski
@Horusiath
Aug 16 2017 04:55
@ayoung you're using Java convention for qualified class name. Use .NET fully qualified type name with an assembly instead ;)
Andrew Young
@ayoung
Aug 16 2017 04:56
i tried that as well
but got the same thing.
Bartosz Sypytkowski
@Horusiath
Aug 16 2017 05:03
try: Akka.Cluster.Tools.PublishSubscribe.DistributedPubSubExtensionProvider, Akka.Cluster.Tools
Andrew Young
@ayoung
Aug 16 2017 05:15
ah. i need the full type with the assembly.
ok i'll give that a shot tomorrow :) thanks.
so looks like the docs need to be updated.
Xcessity
@Xcessity
Aug 16 2017 07:03
Does anyone know the correct syntax how to create an actor with a BoundedMessageQueue mailbox (with mailbox-capacity = 2 and mailbox-push-timeout-time = 100ms)?
kariem-ali
@kariem-ali
Aug 16 2017 10:00
Hi. I am creating a custom serializer with version 1.2.3 (using hyperion for serialization) according to the documentation here http://getakka.net/articles/networking/serialization.html#customization. The correct configuration is in place and my custom serializer is initialized but ToBinary and FromBinary never get called. Any reasons why this might happen?
Carlos Torrecillas
@CarlosTorrecillas
Aug 16 2017 10:46
Hi guys, are actor paths case sensitive at all?
kariem-ali
@kariem-ali
Aug 16 2017 11:19
@kariem-ali To clarify, the problem is that my custom serializer is not used at all (though initialized correctly) but rather the default hyperion serializer/deserializer is.
kariem-ali
@kariem-ali
Aug 16 2017 11:33
@kariem-ali Is the custom serialization just for the top-level message types or would it correctly resolve the relevant custom serializer (specified in configuration) for a property type?
Alex Valuyskiy
@alexvaluyskiy
Aug 16 2017 11:37
@kariem-ali if you configure Hyperion for MyCompany.Person class it means that it will serialize all instances of Person including all its properties.
kariem-ali
@kariem-ali
Aug 16 2017 11:47
@alexvaluyskiy But that's not quite what I am asking. To use your example, if MyCompany.Person (the message type) has an Address property of type Address. If a custom serializer is specified in the configuration for the typeAddress but not for MyCompany.Person would the custom serializer for Address be resolved and used correctly/automatically?
Alex Valuyskiy
@alexvaluyskiy
Aug 16 2017 11:48
No
only top level class
kariem-ali
@kariem-ali
Aug 16 2017 11:49
@alexvaluyskiy OK, thanks. Is there any recommended way to implement this scenario?
Alex Valuyskiy
@alexvaluyskiy
Aug 16 2017 11:50
If you use JSON.NET you could create a custom converter for Address type and assign it via attribute to your property
kariem-ali
@kariem-ali
Aug 16 2017 11:52
Yes, I know. The point is that I need to do that but with hyperion serialization.
kariem-ali
@kariem-ali
Aug 16 2017 12:05
Does hyperion have an equivalent to a JSON.NET custom converter? Could hyperion/akka.net be configured somehow to use a specific custom serializer for a specific Type of a message property (not the message Type itself)?
Robert Stiff
@uatec
Aug 16 2017 12:40
what has happened to http://getakka.net/docs/Serilog#logging ? all the google links point to /docs but none of them work
hmm, even my history has links do /docs
yeah, as recently as the 10th of August
kariem-ali
@kariem-ali
Aug 16 2017 12:52
Robert Stiff
@uatec
Aug 16 2017 12:53
the link to serilog still doesn't work :|
Robert Stiff
@uatec
Aug 16 2017 12:57
oh yeah, google cache
AlexMihalev
@AlexMihalev
Aug 16 2017 13:37
Hi, I'm trying to use Petabridge.Cmd 0.2.2 with Akka 1.3 and looks like they become incompatible (Petabridge.Cmd depends on Akka 1.1.3 where Akka.IO.ByteString.Empty defined as field)
Aaron Stannard
@Aaronontheweb
Aug 16 2017 13:37
yep it needs to be upgraded
@uatec @kariem-ali can you log an issue with that missing page?
we can port that from our previous doc repo: https://github.com/akkadotnet/getakka.net
@AlexMihalev we'll be upgrading Petabridge.Cmd this week
I have to rewrite the serializer to not use Hyperion and use protobuf instead
so that way the same Petabridge.Cmd client can talk to a .NET Core / .NET 4.* with no wire compatibility issues
AlexMihalev
@AlexMihalev
Aug 16 2017 13:48
Oh that would be great
kariem-ali
@kariem-ali
Aug 16 2017 14:00
@Aaronontheweb Here's the issue akkadotnet/akka.net#2997

@Aaronontheweb Is there a recommended way to do this? (Full thread above)

Does hyperion have an equivalent to a JSON.NET custom converter? Could hyperion/akka.net be configured somehow to use a specific custom serializer for a specific Type of a message property (not the message Type itself)?

Robert Stiff
@uatec
Aug 16 2017 14:34
would anybody be interested in a write up of my current project? it's a bulk data processor written in .net core, akka.net, react + web sockets and hosted in kubernetes
Stephen Newman
@goodisontoffee
Aug 16 2017 14:46
@uatec that would be interesting to me :)
Robert Stiff
@uatec
Aug 16 2017 14:51
cool
gotta do the react+websockets bit then
Janusz FijaƂkowski
@JohnnyTheAwesome
Aug 16 2017 14:55
@uatec By all means if you've got something to show then please do so. I'm looking forward to being able to share my work as well. Of course first I have to finish it... and get my corporate overlords to agree.;)
Robert Stiff
@uatec
Aug 16 2017 15:07
i guess, if i want to share anything truly juicy i should get the sign off
a question about node discovery though...
i have a control API which is web API connected to my cluster, however it's view of the cluster only sees itself and the first peer is has connected to
do i have to discover all peers and configure for them? or will it route across the cluster to find an actor on a peer it can't see?
or am i looking at the wrong data?
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:12
have all nodes connect to the same set of seed nodes
and everything will work
Robert Stiff
@uatec
Aug 16 2017 15:13
hmm, that IS what i had thought I had tone
s/tone/done
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:13
the Cluster.State property will enumerate the full range of nodes that are current members of the cluster
Robert Stiff
@uatec
Aug 16 2017 15:13
looking in Cluster.Get(mySystem).state.members,
yeah, that's what i thought
my DNS resolution must not have returned what i expected
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:14
if you have some peers who aren't showing up on there, I'd double check your seed node configuration
for whatever reason... lots of users immediately jump to trying to use Consul or some sort of service discovery mechanism for bootstrapping clusters
Robert Stiff
@uatec
Aug 16 2017 15:14
yeah, i am resolving my peers using DNS service discovery, then injecting them at run time
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:14
which, I'm going to be unequivocal, is a really awful idea if you aren't familiar with how cluster works
you're just going to introduce moving parts and fuck yourself up
Robert Stiff
@uatec
Aug 16 2017 15:15
well, i'm not :)
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:15
yeah I'm saying this for the benefit of the room
not you specifically
Akka.Cluster is smart; it's not a stateless HTTP endpoint
it does not need to be babysat
Robert Stiff
@uatec
Aug 16 2017 15:15
deploying to kubernetes, i don't actually know where my nodes are until runtime
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:16
provide a consistent, reachable set of seed nodes that sit OUTSIDE OF YOUR DEPLOYMENT ZONE
meaning, YOUR SEED NODES ARE NOT TOUCHED DURING DEPLOYMENTS. EVER.
Robert Stiff
@uatec
Aug 16 2017 15:16
e.g. using lighthouse
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:16
yeah
and then have all nodes in the cluster use the same seed node configuration
Robert Stiff
@uatec
Aug 16 2017 15:16
that does make sense
but in that situation, it will connect to the seed node, and then the seed node will tell it where it's peers are, right?
Aaron Stannard
@Aaronontheweb
Aug 16 2017 15:17
yep
the seed nodes are aware of the full membership of the cluster
Robert Stiff
@uatec
Aug 16 2017 15:18
so i have 3 workers, and 1 admin node. The admin node has found one of the workers, does that not mean that that worker should have told my admin node where the other workers are?
(I will put in the lighthouse shortly, but i just want to understand this bit)
Andrew Young
@ayoung
Aug 16 2017 16:44

seed nodes that sit OUTSIDE OF YOUR DEPLOYMENT ZONE

i've heard this more than once :)

Andrew Young
@ayoung
Aug 16 2017 16:56
@Aaronontheweb what mechanism in dotnet new renames all the files in the template?
i find that fascinating :sparkles:
Chris Karcz
@ckarcz
Aug 16 2017 21:24
hi guys- i have a question. is there any way to hook into the actor creation and create an actor (local/remote) as a child process of the destination actor system?
i'm trying to work around a legacy system that is not thread safe but use akka' fault tolerant distributed cluster remote capabilities
Andrew Young
@ayoung
Aug 16 2017 22:09
@ckarcz can you ask that question again? that was a little cloudy to me.