Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 09:00
    Horusiath commented #4077
  • 06:31
    Aaronontheweb commented #4085
  • 06:28
    Aaronontheweb commented #4085
  • 06:24
    Aaronontheweb commented #4085
  • Dec 07 11:49
    IgorFedchenko commented #4085
  • Dec 07 10:31
    IgorFedchenko commented #4085
  • Dec 07 08:36
    IgorFedchenko commented #4085
  • Dec 06 20:57
    IgorFedchenko commented #4085
  • Dec 06 20:32
    IgorFedchenko commented #4085
  • Dec 06 20:01
    IgorFedchenko commented #4085
  • Dec 06 19:55
    IgorFedchenko commented #4085
  • Dec 06 16:22
    Aaronontheweb labeled #3997
  • Dec 06 16:22
    Aaronontheweb closed #3997
  • Dec 06 16:20
    IgorFedchenko commented #3997
  • Dec 06 16:08
    IgorFedchenko commented #4085
  • Dec 06 15:50
    Aaronontheweb assigned #4085
  • Dec 06 15:50
    Aaronontheweb labeled #4085
  • Dec 06 15:50
    Aaronontheweb labeled #4085
  • Dec 06 15:49
    Aaronontheweb closed #4032
  • Dec 06 14:58
    IgorFedchenko commented #4032
slc
@slc
nope, all syncronous
Ricky Blankenaufulland
@ZoolWay
ok
then check for the string/bool
slc
@slc
no async/await anywhere
yup, just about to try that
cannot Tell(true) either
:(
I guess that somewhat rules out serialisation/deserialisation issues
Im going to pull out an example from my solution and see if I can replicate in isolation
Ralf
@Ralf1108
@Silv3rcircl3 ok thx for the hints!
slc
@slc
@ZoolWay @Danthar - Found it! Serialization problem with the message being passed back. Message had a private constructor and I assume JSON.NET couldnt deserialise.
So annoying that the error message is a little elusive, nevermind
Jeff
@jpierson
Greetings all, just learning Akka.NET and I'll have some questions concerning Clustering, Routing, and Sharding. Is this the best place to ask those questions?
Jeff
@jpierson
In the examples I've seen with Cluster Routing it appears that the routing actor is created via ActorSystem.ActorOf on the same node where messages are being dispatched. Is this the general pattern or are there other options or reasons for having the router itself somewhere else in the cluster? If so is using an actor singleton the way to reach that router?
Peter Rosconi
@prosconi
Anyone know when cluster metrics events are expected to be completed?
Noel
@nanderto
Hi, I created a new implementation of Akka.Persistence.ServiceFabric, It uses ServiceFabric reliable collections that are embedded in the actor instead of calling a service like the old version did. I know its not on the road map for Akka.net and the old version has not seen any updates for some time. DOes anyone know if there is any interest in this implementation? its located here https://github.com/nanderto/akka.net/tree/ServiceFabric/src/contrib/persistence
Valeriy Reutskiy
@vvreutskiy
Hello!
I am trying to set up cluster client and I got stumbled over this comment in ClusterToolsExample.Node.Program.RunClusterClient method:
//NOTE: to properly run cluster client set up actor ref provider for nodes on provider = "Akka.Remote.RemoteActorRefProvider, Akka.Remote"
But if I change provider to RemoteActorRefProvider, how will nodes connect to each other in the cluster?
Alex Valuyskiy
@alexvaluyskiy
@nanderto yes, could you create a separate repository for SF provider, first?
Ralf
@Ralf1108
regarding "Akka.Streams - Integrating with Actors" from http://getakka.net/docs/streams/integration#integrating-with-actors. There is a passage which states:
Warning
IActorPublisher and IActorSubscriber cannot be used with remote actors, because if signals of the Reactive Streams protocol (e.g. request) are lost the stream may deadlock.
does this mean that Akka Streams wont work reliably if used with actors on different machines?
Marc Piechura
@marcpiechura
@Ralf1108 correct, the problem is that for example the publisher is only allowed to send a new element if it receives a request message and if the message doesn't arrive due to network issues the publisher will not send any more elements
Ralf
@Ralf1108
i just found that it is possible to create the actor sink via Sink.ActorRefWithAck(). Does this improve the reliability?
and if there are network issues... i think it is ok to terminate the stream
Marc Piechura
@marcpiechura
when you use ActorRefWithAck the destination actor needs to send a Ack message back to the sender of the element, this way you can backpressure the stream from the destination actor
problem is if you use remote you don't know if the ack message has arrived so the problem is the same
Ricky Blankenaufulland
@ZoolWay
Is there a way do prefix the generated name for child actors? I cannot specify a name because I will dynamically create children but it would be nice to give their names a prefix
Ralf
@Ralf1108
@Silv3rcircl3 ah, now I understand. that makes sense. So the stream requires also something like a timeout to see if the destination actor failed
@ZoolWay you can provide an actor name when you create them. So feel free to implement your prefixing method by yourself :-)
@Silv3rcircl3 is there a reason why Akka Streams names its destination Sink ? The flow is that way "Source -> Flow -> Sink". Why not "Source -> Flow -> Target" ? :D
Marc Piechura
@marcpiechura
Don't know :smile: it comes from the jvm
Nop no timeout, when the actor failed the stream is closed and that is archived by watching the destination actor
The ack message is a signal to the stream that the actor can process the next element
If you want to read more about the underling protocol you can take a look at the reactive streams repository https://github.com/reactive-streams/reactive-streams-dotnet
Erik Lagerholm
@stabface
Does anyone have a code example of a decorator pattern implementation for an Akka Actor?
Ralf
@Ralf1108
@Silv3rcircl3 and if the stream doesn't get back the ack in specified time the stream will could be consideres as failed. Because of network issues there is no other possibility? if this happens in production the stream will be blocked and wont get cleaned up ?
sounds bad :-(
Ricky Blankenaufulland
@ZoolWay
@Ralf1108 I know that but was hoping to be able to use the automatic naming somehow. If you name them by my own, I will always need some kind of actor-spaning counter and that's it for concurrency...
Marc Piechura
@marcpiechura
Correct, if the stream doesn't get the ack it will not process any more elements
It will also fail if the remote watcher sends a terminated message for the destination actor
but that's not guaranteed because afaik the remote watcher has something like a timeout and if the network failure only occurs for a short time period the actor maybe isn't seen as dead and therefore no terminated message will be send to the stream but the ack is still lost and you have your deadlock
Arsene
@Tochemey
Hello I am having some problems logging fromm within my actor using Nlog.
This is my config
  <akka>
    <hocon>
      <![CDATA[
          akka 
          {
            loggers = ["Akka.Logger.NLog.NLogLogger, Akka.Logger.NLog"]
            # here we are configuring log levels
            stdout-loglevel = DEBUG
            loglevel = DEBUG
            log-config-on-start = on        
            actor 
            {                
                debug 
                {  
                      receive = on 
                      autoreceive = on
                      lifecycle = on
                      event-stream = on
                      unhandled = on
                }
            }
          }
      ]]>
    </hocon>
  </akka>
The only thing I see are the ActorSystem log.
Ricky Blankenaufulland
@ZoolWay
How do you obtain loggers inside your actors and what do you expect to see?
Arsene
@Tochemey
Like this
protected readonly ILoggingAdapter Logging = Context.GetLogger();
Ricky Blankenaufulland
@ZoolWay
And do you see log message you product with this.Logging.Info("Test"); ?
Arsene
@Tochemey
Nope
Ricky Blankenaufulland
@ZoolWay
And when you do a regular nlog logging outside of the actor system it works?
Arsene
@Tochemey
Yes