-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error handling #30
Comments
It would be nice to send general command feedback (e.g. 'success!') via the WS connection as well. |
Super excited for this project! I think it's the most important work affecting the Clojure ecosystem right now. panic! on user error seems like the lowest-hanging issue preventing people from building up real-world usage of the broker (even if it is not production-ready as-is). |
Thank you for the encouraging words. It is unfortunately not as low-hanging as one would hope, because we need to make sure that changes to the overall dataflow are atomic. But working a bit on this now (6215894). |
To elaborate why Either way, good luck @comnik! Do reach out if and when you're ever interested in pursuing a commercial application - graph-based spreadsheets being the most saleable application that requires defensible UI work. |
@theronic We are looking into commercial applications – happy to talk! |
The server should now be returning error messages on all non-critical errors. It is not perfect yet, because we have to rely on checking potentially fallible things before synthesis. Once we've committed to synthesising a rule, the server will panic on any exceptions, to avoid inconsistent dataflow states. Closing this issue now. New, more specific issues should be created once we uncover problematic cases. |
Server now seems to halt processing silently after any error, e.g. reasserting the same attribute :/. I lost half a day trying to debug why my code wasn't triggering queries. Maybe I'm doing something wrong? |
I had a look into it and it turns out its just a typo in the error channel when reregistering web socket connections. Progress was made but the channel to send results to clients was in some sort of weird loop because we used the results channel instead of the error channel. I'll fix it now. Can you tell me if things work as expected? |
@theronic re lost time spent debugging: we could do something like let the server send ack's on any command? |
Currently we panic if anything is out of order, which leads to the shutdown of the process.
In the future we need a resilient structure that notifies the clients via the web socket that some computation in a single dataflow went crazy, but continues the others.
The text was updated successfully, but these errors were encountered: