[MCOL-4525] Implement select_handler=AUTO Created: 2021-02-01 Updated: 2021-06-15 Resolved: 2021-06-15 |
|
| Status: | Closed |
| Project: | MariaDB ColumnStore |
| Component/s: | None |
| Affects Version/s: | 1.4.1, 5.4.1, 5.5.1 |
| Fix Version/s: | 6.1.1 |
| Type: | Task | Priority: | Blocker |
| Reporter: | Gregory Dorman (Inactive) | Assignee: | Daniel Lee (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
|||||||||||||||
| Sub-Tasks: |
|
|||||||||||||||
| Sprint: | 2021-2, 2021-3, 2021-4, 2021-5, 2021-6, 2021-7, 2021-8, 2021-9 | |||||||||||||||
| Description |
|
In 1.2 time Columnstore supported set infinidb_vtable_mode = 2. This meant "auto-switch mode": ColumnStore will attempt to process the query internally, if it cannot, it will automatically switch the query to run in row-by-row mode. The use case described the CS0142347 is a non-equi join. There are certainly other cases where this was happening in 1.2, but now fails with an error message. We should attempt to restore the behavior to be as close to what it was in 1.2 as possible. Best if we could also produce a standard MariaDB warning if the query ends up being done in ROW mode. If this is too hard or impossible - a message in debug log would be needed. |
| Comments |
| Comment by Roman [ 2021-03-04 ] | |||||||||||||||||||||||||||||||||||||||||||
|
Te linked issue | |||||||||||||||||||||||||||||||||||||||||||
| Comment by Gagan Goel (Inactive) [ 2021-06-14 ] | |||||||||||||||||||||||||||||||||||||||||||
|
For QA: This feature adds a new option to the columnstore_select_handler session variable: AUTO. Default value of this variable is ON. If the variable is set to AUTO, ColumnStore first attempts to execute the query, if the query execution inside ColumnStore fails, we fallback and re-execution of the query is performed by the server using the handler API. I share below a scenario where a query execution in CS would fail due to an unsupported feature (cartesian joins). For testing this feature: Here is an example:
| |||||||||||||||||||||||||||||||||||||||||||
| Comment by Daniel Lee (Inactive) [ 2021-06-15 ] | |||||||||||||||||||||||||||||||||||||||||||
|
Build verified: 6.1.1 ( Drone #2586) |