Categories: MySQLDevelopment | Contributing

Code Review Process


[edit] Introduction to the MySQL Code Review Process

Regardless of whether it is a community-contributed patch or a commit of code done by a MySQL developer, there is a standardized process by which code is reviewed and checked before being pushed into one of the staging trees or the trunk (see the description of the Development Cycle for more information about the differences between these source trees).

Code changes are first checked into a developer's local Bazaar repository along with a description of the changeset and any corresponding bug or WorkLog entry for which the patch addresses. This check in triggers an email to the maintainers of the code tree under which the code has been checked in. The code writer is then responsible for getting at least two developers to review the code before it is approved and then pushed into the team tree. We'll cover what happens after the push to a team tree in a bit. Let's take a look at the review criteria that MySQL code reviewers use when evaluating code.

Image:Wtfm.jpg

[edit] Additional information, related articles

Code review can be wonderful, helpful and incredibly daunting. The following two articles are worth a read, as they provide insightful information into how code reviews should be done. If you are a reviewer, keep this information in mind when looking at other people's code.

You should also attend and review the following MySQL University session by Sergei Golubchik: How to do a good code review.

[edit] Review Criteria

void myfunction()
{
  char buffer[1024*1024];
...
}

Retrieved from "http://forge.mysql.com/wiki/Code_Review_Process"

This page has been accessed 10,641 times. This page was last modified 21:44, 24 January 2011.

Find

Browse
MySQLForge
Main Page
Current events
Recent changes
Random page
Help
Edit
Edit this page
Editing help
This page
Discuss this page
Post a comment
Printable version
Context
Page history
What links here
Related changes
My pages
Special pages
New pages
File list
Statistics
Bug reports
More...