Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 07 11:49
    IgorFedchenko commented #4085
  • Dec 07 10:31
    IgorFedchenko commented #4085
  • Dec 07 08:36
    IgorFedchenko commented #4085
  • Dec 06 20:57
    IgorFedchenko commented #4085
  • Dec 06 20:32
    IgorFedchenko commented #4085
  • Dec 06 20:01
    IgorFedchenko commented #4085
  • Dec 06 19:55
    IgorFedchenko commented #4085
  • Dec 06 16:22
    Aaronontheweb labeled #3997
  • Dec 06 16:22
    Aaronontheweb closed #3997
  • Dec 06 16:20
    IgorFedchenko commented #3997
  • Dec 06 16:08
    IgorFedchenko commented #4085
  • Dec 06 15:50
    Aaronontheweb assigned #4085
  • Dec 06 15:50
    Aaronontheweb labeled #4085
  • Dec 06 15:50
    Aaronontheweb labeled #4085
  • Dec 06 15:49
    Aaronontheweb closed #4032
  • Dec 06 14:58
    IgorFedchenko commented #4032
  • Dec 06 14:57
    IgorFedchenko opened #4085
  • Dec 05 17:21
    Aaronontheweb synchronize #4079
  • Dec 05 17:20
    Aaronontheweb labeled #4084
  • Dec 05 17:20
    Aaronontheweb labeled #4084
riawz
@riawz
@Aaronontheweb thanks!
Aaron Stannard
@Aaronontheweb
@Silv3rcircl3 anything special about these specs that failed in Akka.Streams? Trying to find the common root cause given that the failure is the same, but there are other specs inside these test fixtures which pass: http://petabridge-ci.cloudapp.net/viewLog.html?buildId=15933&tab=buildResultsDiv&buildTypeId=AkkaNet_LinuxMonoBuild&guest=1
this is building off of a personal branch of mine at the moment - haven't fundamentally changed streams in any meaningful way
Boban
@bobanco
This message was deleted
Aaron Stannard
@Aaronontheweb
what it looks like to me
given that the error messages are all the same
System.InvalidOperationException : 
  at (wrapper managed-to-native) System.Reflection.Emit.DynamicMethod:create_dynamic_method (System.Reflection.Emit.DynamicMethod,System.Reflection.Emit.DynamicMethod)
  at System.Reflection.Emit.DynamicMethod.CreateDynMethod () <0x404d7590 + 0x0019e> in <filename unknown>:0 
  at System.Reflection.Emit.DynamicMethod.CreateDelegate (System.Type delegateType, System.Object target) <0x404d74f0 + 0x0003a> in <filename unknown>:0 
  at System.Linq.Expressions.Compiler.LambdaCompiler.CreateDelegate () <0x404d7370 + 0x0008a> in <filename unknown>:0 
  at System.Linq.Expressions.Compiler.LambdaCompiler.Compile (System.Linq.Expressions.LambdaExpression lambda, System.Runtime.CompilerServices.DebugInfoGenerator debugInfoGenerator) <0x404c5730 + 0x000bb> in <filename unknown>:0 
  at System.Linq.Expressions.Expression`1[TDelegate].Compile () <0x404c56e0 + 0x0000f> in <filename unknown>:0 
  at Akka.Util.Reflection.ExpressionExtensions.GetArguments (System.Linq.Expressions.NewExpression newExpression) <0x404c38b0 + 0x0011f> in <filename unknown>:0 
  at Akka.Actor.Props.Create[TActor] (System.Linq.Expressions.Expression`1 factory, Akka.Actor.SupervisorStrategy supervisorStrategy) <0x404c3690 + 0x000d7> in <filename unknown>:0 
  at Akka.Actor.LocalActorRefProvider+<CreateSystemGuardian>c__AnonStorey1.<>m__0 () <0x404bfe00 + 0x00143> in <filename unknown>:0 
  at Akka.Actor.LocalActorRefProvider.CreateRootGuardianChild (Akka.Actor.LocalActorRef rootGuardian, System.String name, System.Func`1 childCreator) <0x404b4970 + 0x0003e> in <filename unknown>:0 
  at Akka.Actor.LocalActorRefProvider.CreateSystemGuardian (Akka.Actor.LocalActorRef rootGuardian, System.String name, Akka.Actor.LocalActorRef userGuardian) <0x404bf5b0 + 0x001f3> in <filename unknown>:0 
  at Akka.Actor.LocalActorRefProvider.Init (Akka.Actor.Internal.ActorSystemImpl system) <0x404b02a0 + 0x00297> in <filename unknown>:0 
  at Akka.Actor.Internal.ActorSystemImpl.Start () <0x404afb50 + 0x000e8> in <filename unknown>:0
there's some sort of actor we're using in the test fixture for these Akka.Streams tests
which might have something that is lazily initialized or asynchronously started
and there's a race condition by which if something else happens during actor system startup before that lazy loading completes, some part of the actor creation process for the built-in actors in the fixture itself fails
are there any special test actors that these fixtures use by default in the Akka.Streams.Tests library?
going to test this theory by running the suite again
and seeing if the spec failures are any different
any ideas @Silv3rcircl3 ?
Marc Piechura
@marcpiechura
@Aaronontheweb not out of my head, haven't seen this error ever before
I need to look into the specs but as far as I remember these "one delayed one failed publisher" specs are all in a base class and you need to implement a factory method which is called from the tests
So you probably only need to fix it in one place ;)
I don't have time the next two days but I could look into it over the weekend if you haven't fixed it until then
Peter Hvidgaard
@hvidgaard
If I have an actor that must update the UI, must I create it in HOCON or can I use it programmatically without config?
Arjen Smits
@Danthar
You can pass the correct dispatcher programmatically
Peter Hvidgaard
@hvidgaard
@Danthar

If I use

Context.ActorOf(Context.DI().Props<UiWorkerActor>().WithDispatcher("akka.actor.synchronized-dispatcher"), "ui-worker");

I get the following error: "The current SynchronizationContext may not be used as a TaskScheduler."

Am I missing something?
I'm using 1.1.1.27
Bartosz Sypytkowski
@Horusiath
@hvidgaard you're probably using async somewhere in your UiWorkerActor
you cannot combine that with synchronized-dispatcher
Peter Hvidgaard
@hvidgaard
@Horusiath The error comes when the child actor is created.
Bartosz Sypytkowski
@Horusiath
I would guess, that one of the actor or its children is using something like async version of Receive
Peter Hvidgaard
@hvidgaard
It only calls Recieve<>(), no async code.
same for the parent.
the parent is created on the UI thread, is that a problem?
Bartosz Sypytkowski
@Horusiath
can you show the error stacktrace? - it doesn't come from akka
Peter Hvidgaard
@hvidgaard
This message was deleted
at Akka.Actor.LocalActorRefProvider.ActorOf(ActorSystemImpl system, Props props, IInternalActorRef supervisor, ActorPath path, Boolean systemService, Deploy deploy, Boolean lookupDeploy, Boolean async)
at Akka.Actor.ActorCell.MakeChild(Props props, String name, Boolean async, Boolean systemService)
at Akka.Actor.ActorCell.ActorOf(Props props, String name, Boolean isAsync, Boolean isSystemService)
at Akka.Actor.ActorCell.ActorOf(Props props, String name)
at FF.Frontends.WPF.SearchModule.Actors.SearchActor..ctor(SearchResultViewModel searchResultViewModel) in C:\repo\FF3.0\Source\FF\Frontends\Wpf\Modules\FF.Wpf.SearchModule\Actors\SearchActor.cs:line 22
at lambda_method(Closure )
at SimpleInjector.InstanceProducer.BuildAndReplaceInstanceCreatorAndCreateFirstInstance()
at SimpleInjector.InstanceProducer.GetInstance()
inner exception
at System.Threading.Tasks.SynchronizationContextTaskScheduler..ctor()
at Akka.Dispatch.CurrentSynchronizationContextExecutorServiceFactory.Produce(String id)
at Akka.Dispatch.Dispatcher.LazyExecutorServiceDelegate.<>c__DisplayClass3_0.<.ctor>b__0()
at Akka.Util.FastLazy`1.get_Value()
at Akka.Dispatch.Dispatcher.ExecuteTask(IRunnable run)
at Akka.Dispatch.CurrentSynchronizationContextDispatcherConfigurator.Dispatcher()
at Akka.Dispatch.Dispatchers.Lookup(String dispatcherName)
at Akka.Actor.LocalActorRefProvider.ActorOf(ActorSystemImpl system, Props props, IInternalActorRef supervisor, ActorPath path, Boolean systemService, Deploy deploy, Boolean lookupDeploy, Boolean async)
Bartosz Sypytkowski
@Horusiath
from what I see it looks like the child (the one which is going to use synchronized-dispatcher) is created from thread that doesn't have SynchronizationContext set (which is basically any background/non-ui thread)
you may need to check if synchronization context is set, and if not, set it manually if (SynchronizationContext.Current == null) SynchronizationContext.SetSynchronizationContext(context)
Peter Hvidgaard
@hvidgaard
But that requires that I have access to it? okay, I'll see what I can figure out without hard coupling everything together.
Bartosz Sypytkowski
@Horusiath
by default sychronization context is set only in UI thread, so you may want to capture it from there or use framework-specific one (i.e. Windows Forms does have it's own class for that)
Aaron Stannard
@Aaronontheweb
@Silv3rcircl3 yeah, the FlowInterleave specs implement a base class but the others do not
got 13 totally different random specs to fail this time
in Akka.Streams
so I think that it's something across the board with the DSL compiler
or at least something we're using to test it
dammit Mono
why you have to be so weird
Marc Piechura
@marcpiechura
I see, I really have no idea. @alexvaluyskiy mentioned that https://github.com/akkadotnet/akka.net/blob/ade2176dd5c1342d248c2a06bb72c81a8add18c8/src/core/Akka.Streams/Dsl/Keep.cs will not work on .netcore and since it contains some generic edge case stuff it's maybe worth a shot
Maybe the part that is missing on netcore is also not implemented on mono
Maciek Misztal
@mmisztal1980
@Aaronontheweb In a cluster: when a role-leader goes down and a new one gets elected, is there an event that signals it?