Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 12:20
    IgorFedchenko commented #3973
  • 12:17
    IgorFedchenko commented #3973
  • 11:58
    IgorFedchenko synchronize #3973
  • 11:33
    IgorFedchenko commented #3973
  • 11:25
    IgorFedchenko synchronize #3973
  • 07:04
    dependabot-preview[bot] labeled #3996
  • 07:04
    dependabot-preview[bot] opened #3996
  • 07:04

    dependabot-preview[bot] on nuget

    Bump Microsoft.NET.Test.Sdk fro… (compare)

  • 07:04
    dependabot-preview[bot] labeled #3995
  • 07:04

    dependabot-preview[bot] on nuget

    Bump BenchmarkDotNet from 0.10.… (compare)

  • 07:04
    dependabot-preview[bot] opened #3995
  • Oct 17 22:42
    Aaronontheweb commented #3944
  • Oct 17 22:41
    Aaronontheweb commented #3973
  • Oct 17 21:17
    IgorFedchenko commented #3973
  • Oct 17 21:08
    IgorFedchenko commented #3973
  • Oct 17 19:59
    IgorFedchenko synchronize #3973
  • Oct 17 19:34
    IgorFedchenko synchronize #3973
  • Oct 17 16:12
    Aaronontheweb commented #3993
  • Oct 17 15:51
    dependabot-preview[bot] synchronize #3991
  • Oct 17 15:51

    dependabot-preview[bot] on nuget

    Bump Microsoft.Extensions.Depen… (compare)

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?
Marc Piechura
@marcpiechura
@Ralf1108 yes, you shouldn't use Akka.Streams with remote actors
Noel
@nanderto
@ @alexvaluyskiy do you mean a separate repository under my account? I don't imagine that I have access under Akka.net
Alex Valuyskiy
@alexvaluyskiy
Yes, under your account
Noel
@nanderto
ok no problem I will get it done today
Ralf
@Ralf1108
@Silv3rcircl3 sad to hear that. Thought that was the point in "Akka Streams".... to distribute stream processing over many machines. WIthout that it is only a Streams implementation with local actors.
Marc Piechura
@marcpiechura
@alexvaluyskiy btw I'm done with the adapter for azure if you want to take a look
William Austin
@wyldebill
i want to use akka.net actors in a simple domain as such - you find interesting places and submit their lat/long to the system. the system catalogs it and makes it available for others to search/query. would each place be a separate actor?