Table of Contents
This chapter contains information and guidelines for building and releasing HBase code and documentation. Being familiar with these guidelines will help the HBase committers to use your contributions more easily.
Apache HBase gets better only when people contribute! If you are looking to contribute to Apache HBase, look for issues in JIRA tagged with the label 'beginner'. These are issues HBase contributors have deemed worthy but not of immediate priority and a good way to ramp on HBase internals. See What label is used for issues that are good on ramps for new contributors? from the dev mailing list for background.
Before you get started submitting code to HBase, please refer to Section 18.10, “Developer Guidelines”.
As Apache HBase is an Apache Software Foundation project, see Appendix K, HBase and the Apache Software Foundation for more information about how the ASF functions.
Sign up for the dev-list and the user-list. See the mailing lists page. Posing questions - and helping to answer other people's questions - is encouraged! There are varying levels of experience on both lists so patience and politeness are encouraged (and please stay on topic.)
For real-time questions and discussions, use the #hbase
IRC
channel on the FreeNode IRC network.
FreeNode offers a web-based client, but most people prefer a native client, and
several clients are available for each operating system.
Check for existing issues in Jira. If it's either a new feature request, enhancement, or a bug, file a ticket.
To check for existing issues which you can tackle as a beginner, search for issues in JIRA tagged with the label 'beginner'.
JIRA Priorities
Blocker: Should only be used if the issue WILL cause data loss or cluster instability reliably.
Critical: The issue described can cause data loss or cluster instability in some cases.
Major: Important but not tragic issues, like updates to the client API that will add a lot of much-needed functionality or significant bugs that need to be fixed but that don't cause data loss.
Minor: Useful enhancements and annoying but not damaging bugs.
Trivial: Useful enhancements but generally cosmetic.
Example 18.1. Code Blocks in Jira Comments
A commonly used macro in Jira is {code}. Everything inside the tags is preformatted, as in this example.
{code} code snippet {code}