Comments (8)
I can't really reproduce the bug, maybe there are other things that causes the actor system to fail?
from akka.net.
Terminate and/or CoordinatedShutdown a system in OOM situation.
So I missed this - but this is largely an unhandleable situation and CoordinatedShutdown
won't run correctly because processes are aborted when this occurs. Catastrophic runtime failures can't be handled gracefully through the normal pathways we use to handle graceful terminations. The solve here is to fix the OOM.
from akka.net.
See https://learn.microsoft.com/en-us/dotnet/api/system.outofmemoryexception?view=net-7.0 for a fuller explanation on what you can do to log this type of error (Environment.FailFast
), but there are no tools to handle it once it gets going.
from akka.net.
Its not that OOM exception should be handled explicitly,
but system.WhenTerminated
should be completed even after an exception in system.Terminate()
itself.
The callbacks registered in System.RegisterOnTermination(StopApplication)
could/should be executed even after an exception in CoordinatedShutdown
If not system.Terminate()
and/or CoordinatedShutdown
will break the system state and system.WhenTerminated
never completes and no System.RegisterOnTermination(StopApplication)
callbacks get executed.
My end result was that my LiveHealthCheck on system.WhenTerminated
was successful
but the ReadyHealthCheck on the akka cluster was in a failure state. (Kubernetes)
from akka.net.
In my opinion system.Terminate()
should have the same behavior as Dispose()
that even when it internaly throws the end result of the instance is disposed
from akka.net.
but system.WhenTerminated should be completed even after an exception in system.Terminate() itself.
The callbacks registered in System.RegisterOnTermination(StopApplication) could/should be executed even after an exception in CoordinatedShutdown
Ok, that is fixable. We can do that.
from akka.net.
@Zetanova can you look at #6967 and check if I missed anything, I could not reproduce your error.
from akka.net.
Any updates on this @Zetanova ?
from akka.net.
Related Issues (20)
- Akka.Cluster.Tools.Singleton: singleton moves as soon as node with higher `AppVersion` joins cluster? HOT 3
- `serialize-messages=on` is breaking distributed pub-sub messaging HOT 1
- Akka.Delivery: chunked messages leaking memory? HOT 2
- Akka.Event: expose the `EventStream` on `BusLogging` for extensibility purposes HOT 1
- System messages containing BCL exceptions fail to deserialize on netfx when serialized on net5+/.net core HOT 5
- Akka.Streams: add a "valve" stage to Akka.Streams that can be open / closed from the outside to pause transfer of events HOT 2
- Akka.Streams: weird behavior with `RepeatPrevious` HOT 12
- [PERF] Akka.Cluster Idle CPU on ARM HOT 12
- [PERF]: replace DotNetty transport with home-spun Akka.Streams + System.IO TCP implementation
- `Ask` and `ContinueWith` might cause memory leak HOT 1
- CVE-2018-8292 HOT 1
- Make Akka.Discovery less coupled with Akka.Management
- Allow Akka.Discovery to be used with Akka.Cluster.Tools.ClusterClient HOT 4
- Epic: Full AOT Support for Akka.NET
- Akka.Router: sending a message to a remote actor via `IScheduledTellMsg` results in serialization error HOT 1
- ORSet with large data faces maximum-frame-size limitation during sync HOT 3
- Epic: Deprecate Akka.Persistence.Sql.Common Plugins HOT 1
- [PERF] Using the BroadcastHub with thousands of consumers seems painfully slow. HOT 1
- Ask<object> will not throw exception when the response is Status.Failure HOT 2
- Akka.Logging: v1.5.21 appears to have truncated log source, timestamps, etc from all log messages
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from akka.net.