Closed vdurante closed 2 weeks ago
Unfortunately not. It is one of 2 errors:
We are working to solve the second problem with smart pointers, but it is still unsolved. Usually you cannot log anything anymore, when this happens. This also sucks.
We're working on this on Rust side and should be able to show some improvements regarding invalid pointers soon.
I might try to fix the panic in rust issue then. Not sure if it is possible to fix that tho, but maybe just add some code to the way we call the rust binaries to catch panics and prevent the pod from going down.
How does ydotnet interact with Rust binaries? Is there any documentation I could read on the topic?
I think it is not possible, because a panic is basically a process.exit(ERROR) in Dotnet. But I would be happy if you could solve that.
There is no documentation, but this is how it works:
native
namespace we have all the code to talk with the channels: https://github.com/y-crdt/ydotnet/blob/main/YDotNet/Native/Document/DocChannel.cs#L15@SebastianStehle I spent some time reading about it, and it seems that it is not possible to handle panics the way YDotNet have implemented it. It would require it to run in a separate process or similar :(
Also, the issue I am facing seems quite hard to reproduce. I only saw it happen once. If I am able to consistently reproduce I will try to investigate. Thanks for all the help!
I am closing this. It is only a meta issue.
Hey, sorry to bother once again, but I was wondering if you have any idea for the issue I am facing.
For some reason, every now and then, I get an "exception" in Rust which basically completely breaks the application. The server goes down and has to reboot.
I am trying to pinpoint what is the root cause, but right now I am having a hard time reproducing the issue.
I was wondering if you have any insights on how to prevent the server from going down. If there is any way to capture the rust error, log it and move on.
Thanks!