[MDEV-8342] Support SELECT ... FROM table_func(...)" in the parser Created: 2015-06-19 Updated: 2015-06-28 Resolved: 2015-06-28 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | OTHER |
| Fix Version/s: | N/A |
| Type: | Task | Priority: | Major |
| Reporter: | Sergei Petrunia | Assignee: | Unassigned |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
This is a part of dj's GSoC project. Make the parser support
There is no execution yet. Attempt to run the statement should return an error. The following is expected to work:
|
| Comments |
| Comment by diwas joshi [ 2015-06-21 ] | |||||||||||||||||||
|
This task required adding another rule for, using table functions in select queries, under table_factor in sql_yacc, but that was creating shift/reduce conflicts. Based on my discussion with Sergei on irc, we realized the problem seems to be in how the grammar handles bison's limitations. So we fixed it by factoring out the conflicting code in two rules into table_factor_part2. This fixed the problem. There was one more requirement of checking if the parameters are base constants or not. This was done by iterating over item_list and using basic_const_item(). Finally the input is getting parsed. | |||||||||||||||||||
| Comment by Sergei Petrunia [ 2015-06-22 ] | |||||||||||||||||||
|
diwas, It would be nice if you submitted a separate patch for this task. The patch should do what is described in the description, and nothing else. The patch you've sent as "changes3.diff" is not good - it does a part of this task, a part of
I got this crash:
| |||||||||||||||||||
| Comment by Sergei Petrunia [ 2015-06-23 ] | |||||||||||||||||||
|
Before submitting the patch, please add a testcase into it (the same request as in | |||||||||||||||||||
| Comment by diwas joshi [ 2015-06-27 ] | |||||||||||||||||||
|
The reviewed patch for this task has been pushed to https://github.com/djdij123/server.git this task can be closed now. |