Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 09:22
    ismaelhamed commented #3863
  • Oct 19 23:39
    valdisz synchronize #3889
  • Oct 19 23:08
    edvinasz commented #2947
  • Oct 19 13:36
    Aaronontheweb commented #3973
  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3995
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump BenchmarkDotNet from 0.10.… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] edited #3995
  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3993
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump Google.Protobuf from 3.9.1… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3991
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump Microsoft.Extensions.Depen… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3989
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump ApiApprover from 3.0.1 to … (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3992
  • Oct 19 13:34
    dependabot-preview[bot] edited #3993
  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3985
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump System.Reflection.Emit fro… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3986
  • Oct 19 13:34

    dependabot-preview[bot] on nuget

    Bump FsCheck.Xunit from 2.9.0 t… (compare)

  • Oct 19 13:34
    dependabot-preview[bot] synchronize #3983
Aaron Stannard
@Aaronontheweb
and anything can happen
you essentially introduce a moving part where there isn't and shouldn't be one
Maxim Cherednik
@maxcherednik
ok, planing to simplify the remoting a bit :)
Aaron Stannard
@Aaronontheweb
so if the view Consul has of the cluster is different as nodes boot up at slightly different times
changes and thus reports different seed node orders back to the other nodes who are starting
what's your solution to that?
the Lighthouse approach is dead simple: bootstrap the seeds first and then never touch them on deployment
eliminates the entire problem category
Bartosz Sypytkowski
@Horusiath
@Aaronontheweb consul offers distributed lock/lease acquisition, and I'm using it to establish first initial node in the cluster.
Aaron Stannard
@Aaronontheweb
do you have a unit test that proves that this works?
(I know Consul works)
Bartosz Sypytkowski
@Horusiath
it's not ideal, but it works. The more irritating stuff is that consul reaction and convergence times are worse than pure akka.net - detecting dead nodes can take up to a minute
Aaron Stannard
@Aaronontheweb
gotcha
well, keep at it
hopefully people will find it useful!
I'm thinking about using your new Reminders package in my current project
was going to use Quartz instead
but since I'm already planning on using Akka.Persistence yours seems simpler
stevemesser
@stevemesser

Should you be able to apply a custom dispatcher to a router?

I am trying to isolate the database actors in their own threadpool.

I have the following hocon

    custom-dedicated-dispatcher 
    {
        type = PinnedDispatcher
        throughput = 10
    }

    custom-datastore-dispatcher 
    {
        type = ForkJoinDispatcher
        throughput = 85
        dedicated-thread-pool 
        {
            thread-count = 4
            threadtype = background
        }
    }

    akka 
    {
        actor
        {
            deployment
            {
                **# this appears to work - verified in the debugger**
                /engineroot/httpserver
                {
                  dispatcher = custom-dedicated-dispatcher                  
                }

                **# this appears to work - verified in the debugger**                
                /logstore
                {
                    dispatcher = custom-datastore-dispatcher 
                }

                **# this doesn't work - debugger still shows the default dispatcher** 
                /engineroot/httpserver/dispatcher/processor/datastorepool
                {
                    dispatcher = custom-datastore-dispatcher    
                    router = round-robin-pool
                    nr-of-instances = 4
                }
            } # deployment
        } # actor
    } # akka
Alan Hemmings
@goblinfactory
Can anyone help explain why my #akka.net hello world supervisor sample wont resume the actor? The first exception causes the system to stop instead of resuming. (oops! Sorry didn't realise it would spam-inline it here! )
https://gist.github.com/goblinfactory/1fce6afe3480d8e7a8a30ae5cc30dbf3
In my gist demo, the moment the StringLengthCounter receives the null message, it stops instead of being resumed by the supervising actor (in this case the ArrayCounter). It just stops there.
Bartosz Sypytkowski
@Horusiath
@goblinfactory nulls are not allowed as messages
Alan Hemmings
@goblinfactory
@goblinfactory aaah, of course. I totally misread the error message in the console window, I was thinking it was being thrown inside the StringLengthCounter. That's it alright, thank you! Thank you! Lost an evening of akka coding because of that blindspot. :D
Alan Hemmings
@goblinfactory
Hi all, if I create the following IActorRef extension method, would it screw up the stacktrace and, would that matter at all?
public static void TellOrIgnore(this IActorRef actor, object message) { if (message is null) return; actor.Tell(message); }
Kosta Petan
@kostapetan
Hey guys, job post ahead.
We are a small Swedish company called Record Union that does Music Distribution.
Currently, we are hiring backend developers who won't mind picking a fight with our interesting stack, which includes Akka.net, Kubernetes, GCP and a dash of F# here and there.
If this seems like something you are excited to do, it's probably because it really is.
Full disclosure: I am the Technial Lead and I've kindly asked @Aaronontheweb if it's ok to post a job add here.
Jonas
@jonasro_twitter
I am working with Akka.Io these days and are trying to make my tcp listener as bulletproof as possible with regards to network issues or similar. Does anyone here know of any guidance/articles/blog posts available on this topic or have some general tips for me?
Arsene T. Gandote
@Tochemey
Hello geeks. I would like to know how I can integrate the DI of Akka.NET and NetCore DI. Thank you
BlueManiac
@BlueManiac
BlueManiac
@BlueManiac
I'm currently working on a solution using akka.IO tcp. We receive one message that is around 800 bytes, this message is delivered as 3 messages in the actor. I guess that is because of a buffer size setting in akka somewhere. I would like this to be received as one message instead and can't for my life find any documentation on where to set the buffer size. Do anyone have any suggestions? btw. akka.net is awsome, i'm in love.
Aaron Stannard
@Aaronontheweb
@BlueManiac I'm looking at some of our code for that now; let me check
but yeah, the buffer size is something small
Bartosz Sypytkowski
@Horusiath
Regarding Akka.IO - there's a streaming article on that.
The implementation itself probably needs some hardening, and could be further optimized (even thou it's quite fast right now). We got some bugs fixed, that will come in the upcoming release.
Aaron Stannard
@Aaronontheweb
I added a model-based spec for that bytebuffer stuff; turns out it was an issue with my serializer
not an issue with Akka.IO
so I think I can close that issue out
I'll know for certain later today
petabridge/petabridge.cmd-issues#21 - parent issue
Suresh M
@Tamila0701_twitter
I'm currently working on akka.net project. I'm getting an error stating that "One or more errors occurred. A task was canceled." and there is no stack trace for this error. Do anyone have any suggestions?
Aaron Stannard
@Aaronontheweb
need to add a lot more detail than that
when does that happen, what are you trying to do, what's the error message look like, etc...
sounds like something internally that depends on the TPL timed out
Suresh M
@Tamila0701_twitter

void Wait(IActorRef target, IConfiguration config)
{
try
{
var currentState = target.Ask<States>(new CurrentState(), TimeSpan.FromMinutes(1));
currentState.Wait();

            if (currentState.Result == States.Idle)
            {
                return;
            }

...........
...........

Getting error when currentState.Wait() is executed.

Bart de Boer
@boekabart
You get an AggregateException , most likely, you can inspect its InnerExceptions . Does it take about a minute for this to happen? If so, it's just the timeout cancelling the task.
Maxim Cherednik
@maxcherednik
hi. I was wondering what is the API of Ask?
Aaron Stannard
@Aaronontheweb
the API?
Maxim Cherednik
@maxcherednik
I didn't manage to find from the C# doc
Aaron Stannard
@Aaronontheweb
ah yeah
Maxim Cherednik
@maxcherednik
hey Aaron