Details
-
Task
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
sql_command_flags array is used to determine the sql command's capadilities.
Now that the grammar has expanded, and even INSERT can make an update (with DUP_UPDATE), or UPDATE can delete (with FOR PORTION OF...) a single array is not a good fit anymore.
We should store flags in the thd and make a function for updating.
The best implementation would be
- Create a Sql_command class hierarchy.
- Add field command_flags
- Add a virtual function for computing this field.
- Add a virtual Sql_command::execute() function that will substitute a big switch inside mysql_execute_command.
- Create this object right from the yacc parsing