In the user channel we assumed the data source service would always
succesfully typecheck a query, and did not handle any of the potential
errors the service could return. This would in turn crash the whole
channel in case of an error. Such an error happened when a user would
visit the data source editor of a data source that was offline.
In this change we gracefully handle the potential error conditions,
returning an error to the frontend.
The error isn't actually shown, because the frontend seems to do
something else which immediately invalidates it (didn't look too deeply),
but the user channel remains available, which was the main point of this
exercise.
In the user channel we assumed the data source service would always succesfully typecheck a query, and did not handle any of the potential errors the service could return. This would in turn crash the whole channel in case of an error. Such an error happened when a user would visit the data source editor of a data source that was offline.
In this change we gracefully handle the potential error conditions, returning an error to the frontend.
The error isn't actually shown, because the frontend seems to do something else which immediately invalidates it (didn't look too deeply), but the user channel remains available, which was the main point of this exercise.
Closes #4861