Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 06:58
    dependabot-preview[bot] labeled #4370
  • 06:58

    dependabot-preview[bot] on nuget

    Bump BenchmarkDotNet from 0.12.… (compare)

  • 06:58
    dependabot-preview[bot] opened #4370
  • Apr 06 22:45

    Aaronontheweb on dev

    sharding - release shard lease … (compare)

  • Apr 06 22:45
    Aaronontheweb closed #4369
  • Apr 06 22:45
    Aaronontheweb milestoned #4369
  • Apr 06 22:45
    Aaronontheweb labeled #4369
  • Apr 06 22:45
    Aaronontheweb commented #4363
  • Apr 06 22:31
    yesh-nadella commented #4363
  • Apr 06 22:05
    Arkatufus commented #4368
  • Apr 06 19:55
    zbynek001 opened #4369
  • Apr 06 17:38
    Aaronontheweb assigned #4368
  • Apr 06 17:38
    Aaronontheweb labeled #4368
  • Apr 06 17:37
    Aaronontheweb milestoned #4368
  • Apr 06 17:37
    Aaronontheweb labeled #4368
  • Apr 06 15:07
    PiotrJustyna opened #4368
  • Apr 03 22:24
    huzaifak opened #4367
  • Apr 03 21:45
    Aaronontheweb commented #4344
  • Apr 03 05:55
    Lutando commented #4344
  • Apr 02 17:23
    huzaifak commented #4303
Bartosz Sypytkowski
@Horusiath
nonetheless config reload on every new actor sounds like serious issue
Onur Gumus
@OnurGumus
it has to do with persistence extensions. I have collected the full stack trace but not with me now
zbynek001
@zbynek001
@OnurGumus I've added that ISupportSerializationConfigReload interface. It's called only inside InjectTopLevelFallback, so is something maybe calling that too often?
Onur Gumus
@OnurGumus
@zbynek001 I think it is called first from this.<Extension>k__BackingField = Persistence.Instance.Apply(ActorBase.Context.System); in EventSourced.ctor
that in turn calls .RegisterExtension(this));
And that calls extension.CreateExtension(this)));
and that calls public PersistenceExtension(ExtendedActorSystem system)
{
this._system = system;
this._system.Settings.InjectTopLevelFallback(Persistence.DefaultConfig());
So it is triggered from EventSource.ctor
Bartosz Sypytkowski
@Horusiath
@OnurGumus I've checked calling multiple persistent actors of multiple different types - serializers are created twice: once on actor system creation, then when Persistence plugin applies for first time. This works as designed, since plugins can introduce their own serializers at runtime and trigger actor system to recreate them
you can poke actor system to explicitly initialize all requested plugins right on the start from configuration
Onur Gumus
@OnurGumus
how do I do that
zbynek001
@zbynek001
@OnurGumus .RegisterExtension is caching the extensions, so CreateExtension will be called only once per type
Onur Gumus
@OnurGumus
@zbynek001 I concur
but I find this behavior surprising
Bartosz Sypytkowski
@Horusiath
akka {
  extensions = [ "Akka.Persistence.Persistence, Akka.Persistence" ]
}
Tbh I'll definitelly want to change this part in the future, once we'll introduce native dependency injection support
Onur Gumus
@OnurGumus
Come to think of it, after actor creation you change your serializer settings and boom, it's gone suddently
took me few hours to find it out.
Bartosz Sypytkowski
@Horusiath
@OnurGumus in most of the new frameworks you can encounter runtime configuration reloads - even Microsoft.Extensions.Configuration has reload tokens defined as part of the API
Onur Gumus
@OnurGumus
Perhaps...
goti2
@goti2
Hi everyone, how to use ask method in xamarin.forms
Maciek Misztal
@mmisztal1980
Hey all, is there a code sample or tutorial on Akka.Cluster.Sharding?
Ondrej Pialek
@ondrejpialek
@Horusiath is writing one... :)
Maciek Misztal
@mmisztal1980
cheers
Kento
@robinsondotnet
Is it possible to use Cluster or distributedData using Akka.TestKit?
I always get "Object reference not set to an instance of an object" when "DistributedPubSub.Get(Context.System).Mediator;" or "Cluster.Get(Context.System);" is being executed inside Actor's behavior.
Bartosz Sypytkowski
@Horusiath
@robinsondotnet have you configured your test to work with cluster? (akka.actor.provider = cluster)
also, for cluster/ddata you probably should use multi node test kit
Kento
@robinsondotnet
@Horusiath Should I use the app.config file for testkit or configure it with this.Sys.Settings.Config.WithFallback()?
The ActorSystem is provided by the TestKit, right?
Bartosz Sypytkowski
@Horusiath
you can pass config into TestKit constructor
Kento
@robinsondotnet
nice. thank you @Horusiath
goti2
@goti2
Guys, tell me please how to use akka.net remote in Xamarin forms, and does it have a sense?
Maciek Misztal
@mmisztal1980
Another question: can anyone explain how should I work with the PersistentFSM ? this example: https://github.com/akkadotnet/akka.net/blob/a478c5e8c8d5de97dcf7bcea7e2a80fbaa5e6cc8/docs/examples/DocsExamples/Persistence/WebStoreCustomerFSMActor.cs suggests that I do not need to call Persist, nor do I need to call Recover, does this mean that PersistentFSM is capable of recovering its state on its own?
Bartosz Sypytkowski
@Horusiath
@mmisztal1980 PersistentFSM stores events as part of the Applying definition. Recovery/state-update happens as defined in your ApplyEvent override.
Ondrej Pialek
@ondrejpialek
So I wonder - if I debug my app do all the timeouts still... timeout? :) I see my cluster breaks if I debug for too long and then goes up again after debugger is resumed. What about message timeout in inbox, asks etc?
What is the development scenario here - have a dev config with the timeouts in minutes?
Onur Gumus
@OnurGumus
In event sourcing, I am seeing my states are also being persisted besides the events. Is this expected ?
And how does journal reader treat them in that case ?
Bartosz Sypytkowski
@Horusiath
@OnurGumus how are you storing your actor's state?\
Onur Gumus
@OnurGumus
I don't do anything special. I use apply
Standard FSM pattern
I see my states persisted with a different manifest name
whenever they occur.
Oh and it is PersistentFSM
Bartosz Sypytkowski
@Horusiath
I guess that PersistentFSM is snapshotting the state on successful application (I'm not sure if it should happen on every event application or not)
Onur Gumus
@OnurGumus
To the EventJournal Table?
Bartosz Sypytkowski
@Horusiath
snapshots are usually stored separately from events
Onur Gumus
@OnurGumus
It is in EventJournal Table, I have not configured snapshots