Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 06:58
    Arkatufus opened #4226
  • 06:53

    dependabot-preview[bot] on nuget

    (compare)

  • 06:53
    dependabot-preview[bot] closed #4187
  • 06:53
    dependabot-preview[bot] commented #4187
  • 06:53
    dependabot-preview[bot] labeled #4225
  • 06:53
    dependabot-preview[bot] opened #4225
  • 06:53

    dependabot-preview[bot] on nuget

    Bump Google.Protobuf from 3.11.… (compare)

  • 06:52
    dependabot-preview[bot] labeled #4224
  • 06:52
    dependabot-preview[bot] opened #4224
  • 06:52

    dependabot-preview[bot] on nuget

    Bump FsPickler from 5.3.0 to 5.… (compare)

  • 06:44
    dependabot-preview[bot] labeled #114
  • 06:44
    dependabot-preview[bot] opened #114
  • 06:44

    dependabot-preview[bot] on nuget

    Bump MongoDB.Driver from 2.10.1… (compare)

  • Feb 16 10:34
    cptjazz opened #4223
  • Feb 15 11:28
    blackclavus commented #4218
  • Feb 14 20:59
    Aaronontheweb commented #4143
  • Feb 14 20:58
    Aaronontheweb closed #4143
  • Feb 14 20:51
    Aaronontheweb synchronize #4211
  • Feb 14 20:42
    Aaronontheweb milestoned #4169
  • Feb 14 20:42
    Aaronontheweb milestoned #4146
Arjen Smits
@Danthar
@hvidgaard @boekabart performance difference between ReceiveActor and UntypedActor is very small. Internally in the akka.net codebase we migrated away from UntypedActor because of readability reasons. The ReceiveActor allows for much better code.
Peter Hvidgaard
@hvidgaard
So I should be using RecieveActor unless I have a specific reason for UntypedActor
Arjen Smits
@Danthar
yes
In my mind UntypedActor exists to provide an actor implementation that is just above an bare-metal actor. For people who want to build their own actor type, but find ReceiveActor to be just abit to high level, but dont want to go bare metal either.
Peter Hvidgaard
@hvidgaard
Sounds reasonable.
Arjen Smits
@Danthar
I think most users will be fine with ReceiveActor.
An example of building your own actor type implemenations: https://github.com/SaladLab/Akka.Interfaced
In this example, they are doing probably more then most people would ever want to do :P
but its an example of using the UntypedActor as an baseclass for your own actor type
because: reasons
Peter Hvidgaard
@hvidgaard
hehe, it's good to know it's possible, meanwhile I'll use RecieveActor for everything
Peter Hvidgaard
@hvidgaard
What about dymically subscribing to events. Should I be using the EventBus, or create a router add my Actors to that dynamically, or even make a dedicated Actor for that? I've found some advice from 2012 on google groups, that say use the EventBus - is that still the prefered way?
Arsene
@Tochemey
@boekabart Talking about the testing. As I said I have an Actor let us say MobileMoney. It has two child Actors Validator and Payer. MobileMoney forward validation message to Validator. The latter responds to MobileMoney of a validation done message. Based upon the state of validation done message MobileMoney then forward the payment message to the Payer and expect a completed message. However when I run the test on the MobileMoney it fails saying that instead of the completed message it has received the validation done message. I would like to know how to go about that chain of processes.
Arjen Smits
@Danthar
@hvidgaard The eventbus is the easiest way to do that yes. If you need some custom logic and state management surrounding your subscription and publication process then a custom Actor is an option.
Garrard Kitchen
@garrardkitchen

Hi @Horusiath, I’m following your example (http://bartoszsypytkowski.com/how-create-an-akka-net-cluster-in-f/) but with using mono (usng mac os) and every time a node joins the seed I get this:

reated an actor on node [akka.tcp://my-system@127.0.0.1:9000] with roles [seed]
Received: Akka.Cluster.ClusterEvent+CurrentClusterState
[ERROR][15/07/2016 11:20:12][Thread 0013][Akka.Remote.Transport.Helios.TcpServerHandler] Error caught channel [::ffff:127.0.0.1:9000->::ffff:127.0.0.1:54989](Id=ChannelId(-2029685376))
Cause: System.Net.Sockets.SocketException: interrupted
  at Helios.Channels.Sockets.TcpSocketChannel.DoReadBytes (IByteBuf buf) <0x33df9a8 + 0x0016f> in <filename unknown>:0
  at Helios.Channels.Sockets.AbstractSocketByteChannel+SocketByteChannelUnsafe.FinishRead (Helios.Channels.Sockets.SocketChannelAsyncOperation operation) <0x33df058 + 0x0012b> in <filename unknown>:0

I’m using 1.1. Any ideas?

Bartosz Sypytkowski
@Horusiath
@garrardkitchen not sure, I know that 1.1 has some confirmed problems when it comes to DNS. @Aaronontheweb will know more
Arsene
@Tochemey
@boekabart Talking about the testing. As I said I have an Actor let us say MobileMoney. It has two child Actors Validator and Payer. MobileMoney forward validation message to Validator. The latter responds to MobileMoney of a validation done message. Based upon the state of validation done message MobileMoney then forward the payment message to the Payer and expect a completed message. However when I run the test on the MobileMoney it fails saying that instead of the completed message it has received the validation done message. I would like to know how to go about that chain of processes. Please can any one help on this.
Maciek Misztal
@mmisztal1980
hey guys, can anyone elaborate on the status of Akka.Cluster on mono ?
Aaron Stannard
@Aaronontheweb
@garrardkitchen yeah, 99% shot that's the DNS issue
basically DNS is now defaulting to IPV6
in the new transport
so if you combined public-hostname=DNS, hostname=IPV4
shit will not work
carsten jørgensen
@carstenj_twitter
What is the preferred way to keep a #fsharp #mono based exe alive running in a @docker container? The exe hosts @AkkaDotNET actors
Aaron Stannard
@Aaronontheweb
working on fixing that now
now if it's not a DNS issue
the socket interruption exception would indicate that the underlying socket is being closed during a read
we changed the underlying way sockets work in Helios 2.1.2 to use socket async event args
so the underlying mechanism being used is now different
we threw in the towel on trying to do CI on Mono a while back; too many issues with XUnit in particular
this included efforts such as compiling Mono from source to get the latest changes, etc
@carstenj_twitter cc @annymsMthd
Aaron Stannard
@Aaronontheweb
@garrardkitchen I'll spend some time today kicking the tires on Mono
see if there's a quick fix there
Aaron Stannard
@Aaronontheweb
if you're interested in helping work on the Akka.NET support for .NET Core, we've created a special room for coordinating efforts on that: https://gitter.im/akkadotnet/dotnet-core cc @adamhathcock
that's mostly to make it easy for contributors / beta users to keep track of what's happening inflight there
not for asking general questions
that's what the main room is for
either way - if you're interesting in getting Akka.NET onto .NET Core faster, join that room :p
Garrard Kitchen
@garrardkitchen
@Aaronontheweb Thanks, that’ll be a huge help. Ran same codebase againsts windows and worked as designed. It’s my first real outing with mono. Using F# too. Building cloud service to live in docker cloud with BYON (Azure). Not sure if this helps…hostname is IPV4 and public is commented out. Let me know if I can help?
Steven Mitcham
@smitcham
Hello, new Akka.net user here. Are there any examples of combining the FSM actors with the cluster.sharding capability? Is it is the same information as the persistent actor w/sharding in the docs?
fouimette
@fouimette
Does Terminate() perform what used to be ShutDown() and AwaitTermination()?
and how would I use WhenTerminated?
wdspider
@wdspider
I believe that Terminate replaces Shutdown and WhenTerminated replaces AwaitTermination..... I tend to use it like this:
_actorSystem.Terminate();
_actorSystem.WhenTerminated.Wait();
and if you are also using the Clustering stuff @ZoolWay created some graceful shutdown samples here: https://github.com/ZoolWay/akka-net-cluster-graceful-shutdown-samples
Marc Piechura
@marcpiechura
@fouimette @wdspider Terminate does the same as Shutdown and then returns WhenTerminated internally so you can replace these two calls to one and directly call .Wait on the Termiante call
wdspider
@wdspider
ah, thanks for clarifying.
fouimette
@fouimette
thank you
Marc Piechura
@marcpiechura
WhenTermianted can be used if you need to wait anywhere else in then code for the termination