Status: To Do
Fix Version/s: None
Sprint:DB_F18_08, DB_F18_09, DB_F18_10
Team:Data Access and Database
At the moment special characters will confuse qserv. Example, if I create a database called `a@b*c$d`, and a table 'x', and I'll run "select * from x", I'll get:
ERROR 4110 (Proxy): Qserv error: "NoSuchDb:Database 'a@b*c$d' does not exist."
There are two ways to deal with it:
a) simpler: detect that there is a special character in the name, and return a non-confusing error message saying that such name is disallowed
b) proper: implement proper support, e.g., make sure database and table names are properly quoted everywhere.
In the short term, until this is fixed, we will put in the documentation covering Qserv limitations that special characters are disallowed.
Unicode has been only partly supported in mysql up until just a few years ago (see e.g. https://mathiasbynens.be/notes/mysql-utf8mb4). We are not requiring / not configuring mysqld to run with unicode at the moment, plus there is the issue of proper quoting throughout the code. Thus this story.
I documented it, see https://dev.lsstcorp.org/trac/wiki/db/ScalableArchSQL#DatabaseandTableNames