Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 21:12
    Aaronontheweb commented #4001
  • 21:11

    Aaronontheweb on dev

    Added missing Persistence Testiā€¦ (compare)

  • 21:11
    Aaronontheweb closed #4001
  • 20:59
    sean-gilliam commented #3889
  • 20:59
    sean-gilliam opened #4001
  • 16:07
    spankr commented #3921
  • 15:55
    Aaronontheweb labeled #3765
  • 15:54
    Aaronontheweb labeled #3765
  • 15:54
    Aaronontheweb milestoned #3765
  • 15:53
    Aaronontheweb closed #3902
  • 15:23
    Aaronontheweb commented #3921
  • 15:11
    spankr commented #3921
  • 15:05
    Aaronontheweb commented #3973
  • 15:05
    Aaronontheweb commented #3973
  • 15:02
    Aaronontheweb commented #4000
  • 15:02
    Aaronontheweb milestoned #4000
  • 15:02
    Aaronontheweb assigned #4000
  • 15:01
    Aaronontheweb commented #3889
  • 14:55
    sean-gilliam commented #3889
  • 14:35
    IgorFedchenko commented #3973
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 T. Gandote
@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 T. Gandote
@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 T. Gandote
@Tochemey
Nope
Ricky Blankenaufulland
@ZoolWay
And when you do a regular nlog logging outside of the actor system it works?
Arsene T. Gandote
@Tochemey
Yes
Arsene T. Gandote
@Tochemey
Anu idea of what is going on?
Can it be because I am using the TestKit?
Arjen Smits
@Danthar
that could be, the testkit loads its own config
you can append/override with a custom constructor in your test class
Arsene T. Gandote
@Tochemey
How do I go about it?
Jared Lobberecht
@Jared314
is the Akka.Persistence.SqlServer nuget package going to be updated for 1.1?
The source has been updated, but the nuget package isn't there
Arjen Smits
@Danthar
@Tochemey there are multiple constructors you can override
 public MyTestClass(string config) : base(config)
        {
                //load your string here? or use the constructor that takes a Config class instead of a string
        }
Kris Schepers
@schepersk
@Jared314 For now, we're just using the 1.0.8-beta versions SQL common and SQL server packages. Seems to be working just fine :-)
Jared Lobberecht
@Jared314
@schepersk I am also using 1.0.8, but I also need to start using the query api to build out some historical reporting and file export features
Alex Valuyskiy
@alexvaluyskiy
@Jared314 @schepersk we are planning to release it today
Ralf
@Ralf1108
@ZoolWay why not use a guid instead of a counter?
@Silv3rcircl3 so it's still an unresolved problem?