Hi Sergei,

Thank you for such a quick reply.
I will look into the files you have mentioned.

Also, is there any particular format for the proposal draft? Or may be if you expect some points to be mentioned clearly in the proposal draft.

Thanks,
Sriram


On Tue, Mar 18, 2014 at 6:05 PM, Sergei Golubchik <serg@mariadb.org> wrote:

Hi, Sriram!

First: please don't forget to cc: the list maria-developers@lists.launchpad.net
Thank you.

On Mar 18, sriram patil wrote:
> Hi Sergei,
>
> I was going through the source code and was able to figure out the
> flow of query execution and major functions through which a query goes
> before execution.
>
> The query execution majorly dwells in the "sql" directory of the
> source code. So, I think I will have to make changes in the following
> files throughout the project,
>
>    - sql_parse.cc (do_command, dispatch_command, mysql_execute_command)

Yes. And also sql_yacc.yy - to extend the parser.
And the implementation of these commands, for example, sql_acl.cc for
CREATE/DROP USER, sql_trigger.cc for CREATE/DROP TRIGGER, etc.

>    - sql_prepare.cc (Prepared_statement::execute_loop,
>    Prepared_statement::execute)

No, hopefully, this will work automatically.

> What I am not sure about is will I have to create a handler for some of
> these commands?

You are not creating new commands

> And will lower level storage engine code changes required?

I don't think so.

> > > I am interested to work on "CREATE OR REPLACE, CREATE IF NOT EXISTS, and
> > > DROP IF EXISTS" project as part of GSOC 2014. I want to apply my subject
> > > knowledge at a bigger level which will also give me an idea about the
> > > practical issues while implementing the features.
> > >
Regards,
Sergei