Monday, April 6, 2009

Contributing to MySQL Proxy (1 of N)

Thanks to Kay, it is now much easier to contribute to the MySQL Proxy project. And it turns out you don't have to be a super C developer to help out.
Yes, you may think, you can report bugs, help answering questions, even submit Lua scripts. But there is another way you can contribute.

Blueprints
You can check out the blueprints for the Proxy and pick one that seems "simple" to implement. That's what I did. I went there and picked "Chassis/Proxy should have short names for often used options". It sounded simple enough for me, and I thought it would help me get more familiar with the source code.
After a few emails on the mailing list, I gather all the info I needed and created a branch to work on it.

It turned out not to be much work at all :), so after I pushed my changes to the branch I created on Launchpad, I proposed a merge and now I'm waiting for a code review and hopefully it will be part of the main Proxy branch.


Conclusion
No matter what your skill set is, there are plenty of ways to get involved on this project.

2 comments:

  1. Great to see it move forward so well!

    ReplyDelete
  2. Hi Diego,

    About contribution, I have some questions about your patch for the rw-splitting.lua script (https://code.launchpad.net/~diego-fmpwizard/mysql-proxy/bug-43424/+merge/4259).

    I use your patch except the part with "if inj.id ~= 1 then". Without it I lost several writting requests (and I constat on my proxy log that "server default db" is always empty when I loose a writting request).
    Your patch works well but still have the following message :
    2009-06-03 17:43:50: (critical) proxy-plugin.c:259: read_query_result() in /usr/local/mysql-proxy-0.7.1/lib/mysql-proxy/lua/proxy/rw-splitting.lua tries to modify the resultset, but hasn't asked to buffer it in proxy.query:append(..., { resultset_is_needed = true }). We ignore the change to the result-set.
    2009-06-03 17:43:50: (critical) proxy-plugin.c.301: got asked to send a resultset, but ignoring it as we already have sent 1 resultset(s).


    But everything seems to be good :) I forgot something ?

    Sorry to spam your comment but I did'nt find your mail.
    You can contact me via erwanATaleikoumDOTcom

    Thanks for your work

    ReplyDelete

Vote on Planet MySQL