Hi, I have newly started contributing to opensource projects, so these 3.5 weeks have been really awesome from learning point of view. Everyday I learnt something new, kept experimenting various approaches to a particular problem. I have come a long way as I am about to finish 2 subtasks among 4(4th being optional as it already does what it's expected to).
Whole MariaDB community has been really helpful, and special thanks to my Mentor without whom support it wouldn't have been possible.
Just recollecting everything I did in this phase-
1. Learnt how bison works, how grammar is written, how actions can be written(w.r.t to extended syntax), how parsing is done,
2. Implemented Extended CREATE USER and GRANT USER syntax.
3. Created tests for the acceptance of newly implemented grammar.
4. Designed in-memory structures that will store value of plugins and perform AND/OR operations as per precedence and authentication will be provided accordingly.
5. Wrote actions for this complex syntax(fixed some of the errors, some are yet to be fixed).
In the remaining 3-4 days of Phase-1, I will try to complete this bridge between grammar and in-memory structure after which storing data in memory will be done.
Now coming on to phase-2 deliverables, I am planning to finish off with Storage on Disk. We have found a simplest solution to get this done(probably in a week or 2), and in the remaining days, we will check the working of this new feature. I will then migrate this code to 10.3 branch. (Phase-3 for unexpected delay)
This project involve lots of thinking than actual coding, so I think I have maintained good pace throughout.
I believe I will maintain this enthusiasm and confidence level in upcoming phases too.
Hopefully, I will get a chance to continue with this project.
Kind regards,
Ankit Kumar