[MDEV-12651] ORDER BY in DIR CONNECT tables does not always work Created: 2017-05-01 Updated: 2017-05-12 Resolved: 2017-05-12 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Documentation, Storage Engine - Connect |
| Affects Version/s: | 10.1.22 |
| Fix Version/s: | 10.1.24, 10.0.31, 10.2.6, 10.3.1 |
| Type: | Bug | Priority: | Major |
| Reporter: | Alice Sherepa | Assignee: | Olivier Bertrand |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
ORDER BY on 2 varchar columns of DIR CONNECT table shows error message
|
| Comments |
| Comment by Olivier Bertrand [ 2017-05-02 ] |
|
Not only but all sort fail. |
| Comment by Alice Sherepa [ 2017-05-02 ] |
|
I got an impression that all other cases are working properly, there was just a problem with varchar types, e.g. when I add size in order by, results are correct. |
| Comment by Olivier Bertrand [ 2017-05-02 ] |
|
It must be depending on how MariaDB does sorting. In some cases it is done internally on a result set kept in memory, in some other cases it is done by storing positions, sort them, and re-reading by position. |
| Comment by Elena Stepanova [ 2017-05-11 ] |
|
I have two suggestions regarding this issue. First, I see that you have changed the error message to a more suitable "Not supported by this table type", which is good. However, it comes with the error code 1105, which is ER_UNKNOWN_ERROR, which might be not great for various tools which rely on the error code rather than the message. Maybe it's better to use ER_ILLEGAL_HA instead (Storage engine %s of the table %`s.%`s doesn't have this option)? If on some reason you want to keep 1105, then – since you provide a custom message anyway – it makes sense to make a more comprehensive one. E.g. what is not supported? Although, I suppose it might be difficult to specify since it's a common function used in all types of queries. Secondly, I think such limitations need to be documented, since it's really not obvious what exactly is wrong with a query, why a simple query like that does not work, but a seemingly identical query with somewhat different types works (and it's of course impossible to squeeze it all into the error message). So, I'm re-opening it for documentation purposes. |