-
Notifications
You must be signed in to change notification settings - Fork 16
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
Queries interface fails if response has non-utf8 symbols #405
Comments
As a solution we can just use 'json' format. It should have no effect on other UI internals that parse json (unless they behave differently on unicode) |
I researched it a bit, and seems like current way of fetching data (format The issue is that binary yson written in table is not a correct UTF8 sequence, hence YSON -> JSON conversion fails For this case, I think query-tracker/CHYT should make sure that correct utf8 is written. I will investigate further and come back with results |
After some discussion we decided that binary exceptions are okay and UI should learn how to handle them. UI can handle binary data on Operation page, since it does A suggested solution for UI is to never use |
Fixed in #533 |
Queries interface fails if response has non-utf8 symbols
How to reproduce:
Error occurred while parsing YSON[1], Invalid UTF-8 string in JSON[1]
Or use CLI to reproduce:
This is because CHYT converts clickhouse-thrown std::exception into YT TError directly, in binary format (using exception.what())
Then it is stored in dynamic table in binary format:
and can't be decoded into UTF8 json on server side, resulting in failure
The text was updated successfully, but these errors were encountered: