Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 05 17:21
    Aaronontheweb synchronize #4079
  • Dec 05 17:20
    Aaronontheweb labeled #4084
  • Dec 05 17:20
    Aaronontheweb labeled #4084
  • Dec 05 17:20
    Aaronontheweb milestoned #4084
  • Dec 05 17:20

    Aaronontheweb on dev

    Remove string interpolation fro… (compare)

  • Dec 05 17:20
    Aaronontheweb closed #4084
  • Dec 05 17:20
    Aaronontheweb commented #4084
  • Dec 05 15:43
    ismaelhamed opened #4084
  • Dec 04 23:34

    Aaronontheweb on dev

    Made cleanup call thread-safe (… (compare)

  • Dec 04 23:34
    Aaronontheweb closed #4081
  • Dec 04 23:34
    Aaronontheweb closed #4020
  • Dec 04 19:08
    Aaronontheweb commented #4079
  • Dec 04 18:35
    maratoss review_requested #4079
  • Dec 04 18:26
    maratoss synchronize #4079
  • Dec 04 07:42
    jiyeongj edited #4083
  • Dec 04 06:45
    jiyeongj opened #4083
  • Dec 04 06:35
    dependabot-preview[bot] labeled #130
  • Dec 04 06:35
    dependabot-preview[bot] opened #130
  • Dec 04 06:35

    dependabot-preview[bot] on nuget

    Bump System.Data.SqlClient from… (compare)

  • Dec 03 19:10
    Aaronontheweb synchronize #4081
Zetanova
@Zetanova
If there is a execution over ActorTaskScheduler.RunTask(), the next message will be processed after the execution finishes?
I am looking for a why to make a saga/process manager that can execute commands in sequenze but can except cancelation messages for them too.
Zetanova
@Zetanova
Should i just create a tempActor for each execution?
Aaron Stannard
@Aaronontheweb
C# 6 can compile down into .NET 4.5, right?
might upgrade the build agents this week to support it - I think I just have to update the versions of Mono and VS being used
Graeme Bradbury
@GraemeBradbury
@Aaronontheweb Roslyn can build 4.5
Aaron Stannard
@Aaronontheweb
@GraemeBradbury cool! I thought so
that answers my question then - I'd love to use the C# syntax features
in 6
I just didn't want to have to bump the runtime version of Akka.NET
wasn't willing to make that tradeoff
but if we can have our cake and eat it too, why not
I'm going to take a look at using some configuration management tools for our build agents and recreate them that way
my VM-image approach accumulates technical debt at an alarmingly fast rate due to how often I have to upgrade the .NET runtime as of late
so wish we had Docker for Windows already
but in lieu of that, might try some Hashicorp stuff
(if it works with Windows)
Kamil Wojciechowski
@aph5nt
how to PreStart with F# api ?
Zetanova
@Zetanova
yes Docker will be good
Roger Johansson
@rogeralsing
I did an Akka.NET presentation for MS today, nice to see that even their architects are interested
Graeme Bradbury
@GraemeBradbury
@rogeralsing :+1:
Roger Johansson
@rogeralsing
btw. regarding C#6 features, that means we need vs.net 2015 to code, right? as the tooling still needs to understand the new features (?)
even if we compile for 4.5
Zetanova
@Zetanova
they changed in the IDE and compiler a lot. Basicly the new features are "extensions" that somebody can now create by himself.
Bartosz Sypytkowski
@Horusiath
@aph5nt
let a = 
    spawn system "act"
    <| fun mailbox ->
        // this part works like pre-start
        let rec loop () = actor {
          // receive logic
        }
        loop ()
@Zetanova sagas/process managers are basically actors, and cancellations are messages
Aaron Stannard
@Aaronontheweb
@annymsMthd dude, that is awesome!
@Horusiath lol sunbathing in the UK
I'll take a look at the PR today - nice work man
Kamil Wojciechowski
@aph5nt
@Horusiath thx
Diego Frata
@diegofrata
I'm using a ReceivePersistentActor, but there is no method like Become(Action configure). How am I supposed to manage switchable behavior?
Bartosz Sypytkowski
@Horusiath
@diegofrata Become is method of Context not actor itself.
Diego Frata
@diegofrata
@Horusiath Still it doesn't have a signature that resembles the ReceiveActor. Which means I can't use the methods Command and Recover, right? Am I missing something?
Bartosz Sypytkowski
@Horusiath
behavior changes applies only to command receivers, never to recover
recovery method is applied only once actor is recovering after being recreated. It only purpose is to restore state from events and snapshots. No application logic should ever reside there, so becoming and state machines has no use in this case
Diego Frata
@diegofrata
@Horusiath but how do I reconfigure my command receivers? That's what I'm not getting.
Bartosz Sypytkowski
@Horusiath
ehh, I see. I haven't used ReceivePersistentActor, always untyped or raw version
this is missing part in the API. I'll set an issue for this one. @diegofrata thanks for pointing that out :)
Diego Frata
@diegofrata
Ah! That's fine. I'll use the untyped one for now.
Thanks for helping out!
Aaron Stannard
@Aaronontheweb
anyone else having an issue since the Paket release where ./build.cmd all fails locally?
issue with FAKE?
Running build failed.
Error:
System.Exception: Start of process  failed. Cannot start process because a file name has not been provided.
   at Fake.ProcessHelper.ExecProcessWithLambdas@76-16.Invoke(String message) in C:\code\fake\src\app\FakeLib\ProcessHelp
er.fs:line 76
   at Fake.ProcessHelper.ExecProcessWithLambdas(FSharpFunc`2 configProcessStartInfoF, TimeSpan timeOut, Boolean silent,
FSharpFunc`2 errorF, FSharpFunc`2 messageF) in C:\code\fake\src\app\FakeLib\ProcessHelper.fs:line 76
   at Fake.MSTest.MSTest(FSharpFunc`2 setParams, IEnumerable`1 assemblies) in C:\code\fake\src\app\FakeLib\UnitTest\MSTe
st.fs:line 100
   at FSI_0001.Build.clo@209-14.Invoke(Unit _arg9) in D:\Repositories\olympus\akka.net\build.fsx:line 218
   at Fake.TargetHelper.runSingleTarget(TargetTemplate`1 target) in C:\code\fake\src\app\FakeLib\TargetHelper.fs:line 48
3
Aaron Stannard
@Aaronontheweb
FAKE seems to break all the time
Aaron Stannard
@Aaronontheweb
might be a local issue this time since I uninstalled 3 older versions of VS over the weekend
Aaron Stannard
@Aaronontheweb
yeah, that was the issue
symbolic link FTW
Zetanova
@Zetanova
@Horusiath If the process-actor is Telling multiple AR an update-command the process-actor should wait on the answer of the AR's before it send the completed message to the caller. Should i just implement it with a counter ina child-actor to receive the answer of the AR's?
And the next one: If the process-actor is with a router (smallest inbox) it would need to host the real process-actor as a child, so that the process-actor can hold new commands from the router back until the child terminates. looks very complicated ... schould it be? The hole router would be then pointless. Until the process-actor would lock itself over the time of the processing and communication to the AR's and Caller (Cancel) over a child actor.
Bartosz Sypytkowski
@Horusiath
@Zetanova
  1. You could just store actors, which you'll send update message to, in separate struct like Set. Then wait for them to respond, and take of all responders from the set. Once set is empty or timeout will occur (using SetReceiveTimeout) you could send completion/failure message.
  2. Probably router is not a good choice in this scenario.