KEY ACCOMPLISHMENTS LAST WEEK
Discovered more about how MySQl executes commands.
I did not know that the parser also launched the command functions.
Have a few Lex ideas to possibly implement to structure in a more
KEY TASKS THAT STALLED LAST WEEK
Originally was finding the execution code. Did not realize that the
parser also launched functions. I should have checked the file earlier as
it kept coming up in Spotlight text search.
KEY GOOD VIBRATIONS
Getting a better idea of how to implement how to set the variables and
run the select since they are all connected Lex's I may break up the parse
tree to create one for SET and one for SELECT to send to their functions.
It should just involve modifying pointers I would think. Now that I type
that in here I will be wrong very wrong and lead to 2 weeks of frustration.
Not getting the SELECT and SET to break up properly to get the statements
to execute by calling their respective functions. I have yet to go through
how to get all the values that I need to save before the SELECT is used and
how to change them all back.
TASKS IN THE UPCOMING WEEK
Decide if I need another select_init in the parser rules of sql_yacc.yy to
insert another Lex for the SELECT functions to set up since currently it is
modifying (I think) the last lex of the SET statement value and not an empty
one. I am going to copy the code from the expr that sets up a new Lex for
each ident = value on how to initialize a new Lex to change it to a
sqlcom_select. This should help separate the SET and SELECT better.
On my proposed schedule:
Develop initial system base :: Est. May 24 - June 30
Skeleton Code in place - this will be sooner as it is easier than expected
MySQL recognizes empty function command - done already
executes minmal test block such as creates output test file - soon
command set as reserved word - done
functions in SQL command - kinda done (blows up after parser but does make
verify data sent, and data structure - will work on soon
I may get ahead of schedule as I am unsure if much of the above will really
take me June 30. Rough test design will be pushed back toward end-of June
when I have a better idea of what I need to test, and how much.