Open enragedginger opened 7 years ago
Plugin resolution intentionally never takes place. Since the local-rt doesn’t support I/O plugins, we don’t go in and look at the plugin to set up connections/state/sockets or whatever. Since you used the core.async plugin, Onyx tried to use it anyway without plugin resolution having happened, and it’s trying to rederef and atom that’s normally there.
I need to think on what the best place to would be to capture and stop plugins from being executed. We don’t want to make it a rule that you can’t submit them because the spirit is that you can take your same job and run it on both runtimes.
Summary: A generic compiler NullPointerException is thrown when lifecycle entries reference the core-async plugin with onyx-local-rt and
(api/stop)
is called.Expected behavior: Generic NPEs are very difficult to debug. Is there a way that we can validate this ahead of time and throw an exception with a helpful message about such things not being supported?
Code:
print-cause-trace output: