Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 20:34
    Aaronontheweb synchronize #5516
  • 01:57
    Aaronontheweb commented #5400
  • 01:42
    Aaronontheweb closed #5525
  • 01:42
    Aaronontheweb commented #5525
  • 01:41
    Aaronontheweb assigned #5525
  • 01:41
    Aaronontheweb unassigned #5525
  • 01:40
    Aaronontheweb assigned #5525
  • 01:40
    Aaronontheweb labeled #5525
  • Jan 20 18:19
    Arkatufus synchronize #5516
  • Jan 20 18:08
    Arkatufus synchronize #5516
  • Jan 20 18:05
    Arkatufus edited #5516
  • Jan 20 18:05
    Arkatufus labeled #5524
  • Jan 20 18:05
    Arkatufus unlabeled #5524
  • Jan 20 18:02
    Arkatufus synchronize #5516
  • Jan 20 17:32
    fscavo opened #5525
  • Jan 20 16:31
    Arkatufus edited #5524
  • Jan 20 16:29
    Arkatufus edited #5524
  • Jan 20 16:29
    Arkatufus opened #5524
  • Jan 20 16:29
    Arkatufus labeled #5524
  • Jan 20 01:45

    Aaronontheweb on dev

    Removed comment that no longer … (compare)

Marc Piechura
@marcpiechura
@nbparrel Try “akka://MySystem/user/*er”
nbparrell
@nbparrell
That worked. Thanks :). Is MySystem the root for every compilation of akka.net or is it set by user at some point?
Marc Piechura
@marcpiechura
Look at your first line a little bit closer 😜
Arsene
@Tochemey
Hello
nbparrell
@nbparrell
@marcpiechura Lol the perils of being new thanks for pointing that out. Makes more sense.
AltcoinsBattle
@AltcoinsBattle_twitter
@marcpiechura rewritten, with your second approach -> that works :) Await doesn't solve the issue .. The idea, if I have multiple sources : first of all I merge these sources (concat doesn't work), and then use ForEach with one method that processes all the different events that I interesting in! Thank you)
nathvi
@nathvi
Is it possible to send an Actor A from windows service S1 to windows service S2, and have that actor A be persisted when S2 is restarted.
?
I'm trying to come up with a good way to make a bunch of "dumb" service clients that pull their actors from some sort of actor registry.
Nick Polyderopoulos
@NickPolyder
Hello,
Is there somewhere a list with the currently available plugins for akka.net (For Example Persistence Plugins that were created by the community) ?
Aaron Stannard
@Aaronontheweb
@NickPolyder not in our docs
that'd be a good thing to add though
we do have AkkaNetContrib: https://github.com/akkanetcontrib
which has some
Nick Polyderopoulos
@NickPolyder
Yeap. It could at least have a list that are inside the core project. (For example i see that the core project has the Persistance for the SqlServer and Sqlite )
Havret
@Havret
How can I test PersistentFSM? Can I initialize it in specific state or feed it with specific evens as a part of my "arrange" test phase?
Lutando Ngqakaza
@Lutando

quick question

        // Parameters:
        //   handler:
        //     The message handler that is invoked for incoming messages of the specified type
        //     T. It should return trueif it handled/matched the message; false otherwise.

for

        protected void Receive<T>(Func<T, bool> handler);

if handler return false will the receive actor try to use another handler (down the list) if it matches the type?

Stijn Herreman
@stijnherreman
I'm about to attempt running Akka.NET in Azure Service Fabric, as a guest executable. Is it straightforward or will I run into some obstacles?
Arjen Smits
@Danthar
@stijnherreman if your not using remoting, should be straight forward.
Stijn Herreman
@stijnherreman
I am using remoting actually
still reading all the docs about service fabric, so haven't tried anything yet
nbparrell
@nbparrell
@marcpiechura Do you know what flavor of regex Akka.net is using?
Havret
@Havret
Is there any way to GoTo previous state in PersistentFSM?
Marc Piechura
@marcpiechura
@nbparrell not sure what you mean :)
nbparrell
@nbparrell
I figured it out. Was trying to use a negative backwards lookup and they are not supported by C# from what I have read. @marcpiechura
AndreSteenbergen
@AndreSteenbergen
I am trying to create a proxyactor, because I have a remote system with references I don't want in all my console apps. But I keep getting this error after the first message
, IWithUnboundedStash
An exception occurred while trying to apply plugin of type Akka.Actor.ActorStashPlugin to the newly created actor (Type = AnalyserService.Actors.Analyser
Cause: System.NotSupportedException: DequeBasedMailbox required, got: Mailbox
I am making the proxy actor like this:
public class ActorProxy : ReceiveActor
{
    public ActorProxy(string typeName, string actorName, params object[] constructorParameters)
    {
        var actorBaseType = typeof(ActorBase);
        var t = Type.GetType(typeName);

        if (!t.IsSubclassOf(actorBaseType))
        {
            Console.WriteLine($"{t} is not a subtype of actorbase");
            throw new ArgumentException("typeName");
        }

        //try and find an actor by type
        IActorRef targetActor = Context.ActorOf(Props.Create(() => (ActorBase)Activator.CreateInstance(t, constructorParameters)), actorName);

        Console.WriteLine(targetActor);
        ReceiveAny((msg) => {
            targetActor.Tell(msg, Sender);
        });
    }
}
All is well until I make the target actor IWithUnboundedStash
Any ideas?
Bartosz Sypytkowski
@Horusiath
@AndreSteenbergen did you configured a custom mailbox?
AndreSteenbergen
@AndreSteenbergen
no
that's the weird thing, or do I need to do that
AndreSteenbergen
@AndreSteenbergen
Thanks, just forced a mailbox using the withMailbox as parameter, works as a charm.

I do have 1 thing I don't know if it's a bug or something else, I occasionally see this error, after that the flow just stops ... I am using the example of the web crawler

[ERROR][11-4-2018 10:47:00][Thread 0018][akka://crawler/remote/akka.tcp/crawler@127.0.0.1:61662/user/api/XXXXXXX/coordinators/c1/StreamSupervisor-1/Flow-0-1-actorRefSource] The LinkedList is empty.
Cause: System.InvalidOperationException: The LinkedList is empty.
at System.Collections.Generic.LinkedList1.RemoveLast() at Akka.Streams.Implementation.ActorRefSourceActor1.ReceiveElement(T message)
at Akka.Actor.ActorBase.AroundReceive(Receive receive, Object message)
at Akka.Actor.ActorCell.ReceiveMessage(Object message)
at Akka.Actor.ActorCell.Invoke(Envelope envelope)

I can't seem to pinpoint the problem. And I don't know is it's a bug in my code or akka.net. I did tweak the numbers a bit, to not let websites crash. The code example really is a crawler of doom ;)
AndreSteenbergen
@AndreSteenbergen
250 per minute with 2 maxconcurrent.
        var htmlFlow = Flow.Create<PageToCrawl>()
            .Throttle(job.Config.ThottleAmount, job.Config.PerTimeUnit, job.Config.ThottleAmount, ThrottleMode.Shaping)
            .Via(DownloadFlow.ProcessHtmlDownloadFor(MaxConcurrentDownloads, job, pageRequester));
AndreSteenbergen
@AndreSteenbergen
When that happens the entire actor won't receive anything anymore
or the stream at least
AndreSteenbergen
@AndreSteenbergen
I have a near infinite buffer: var source = Source.ActorRef<PageToCrawl>(int.MaxValue, OverflowStrategy.DropTail);
AndreSteenbergen
@AndreSteenbergen
I did find RemoveLast is called by DropTail, but I know for sure I have not reached int.MaxValue items in the buffer.
Marc Piechura
@marcpiechura
@AndreSteenbergen could you try to reproduce it in a simpler example?
AndreSteenbergen
@AndreSteenbergen
I tried ....
It isn't actually that hard, it's also doesn't happen evry time
30% of the time I have a crawl of about 600 pages
I have also tried debug messages, but the actors are quite chatty in debug mode. Can't seem to find any useful data
AndreSteenbergen
@AndreSteenbergen
Or can it be as simple of choosing a smaller buffer e.g. 2048 * 2048? 4 million in that queue is quite a lot I guess ...
AndreSteenbergen
@AndreSteenbergen
I have test run my crawl 5 times now, still no issue ... Could Buffer.IsFull be a bit problematic with queues of size int.MaxValue?