Skip to end of metadata
Go to start of metadata

This guide gives the best way for contributing to Apache HAWQ. Contributing to HAWQ includes not only writing some code, it also includes helping new users on mailing list, testing releases and document improvement.

HAWQ Mailing lists

If you plan to contribute to HAWQ on an ongoing basis it is best to be subscribed to at least developer mailing list. As with any Apache Project all discussions are expected to happen there. Remember "if it didn't happen on the mailing list – it didn't happen". Follow this link to find out how to subscribe to various mailing lists.

HAWQ Repositories

HAWQ issue tracking

HAWQ uses Jira for issue tracking. All changes are discussed and reviewed in Jira before commit.

 

HAWQ security reports 

Reporting New Security Problems with Apache HAWQ

The Apache Software Foundation takes a very active stance in eliminating security problems and denial of service attacks against Apache HAWQ.

We strongly encourage folks to report such problems to our private security mailing list first, before disclosing them in a public forum.

Please note that the security mailing list should only be used for reporting undisclosed security vulnerabilities in Apache HAWQ and managing the process of fixing such vulnerabilities. We cannot accept regular bug reports or other queries at this address. All mail sent to this address that does not relate to an undisclosed security problem in the Apache HAWQ source code will be ignored. 

Questions about:

  • how to configure HAWQ securely
  • if a vulnerability applies to your particular application
  • obtaining further information on a published vulnerability
  • availability of patches and/or new releases

should be addressed to the users mailing list. Please see the HAWQ Mailing lists section for details of how to subscribe.

The ASF Security team maintains a page with a description of how vulnerabilities are handled, check their Web page for more information.

The private security mailing address is: security@apache.org.

Apache HAWQ Security Vulnerabilities

This page lists all security vulnerabilities fixed in released versions of Apache HAWQ.

Errors and Ommissions

Please report any errors or omissions to the HAWQ Mailing lists section.

 

Coding conventions

HAWQ follows the PostgreSQL coding conventions: http://www.postgresql.org/docs/9.1/static/source.html

Contribution process (for contributors)

The overall contribution process is to work on apache repo (https://git-wip-us.apache.org/repos/asf/incubator-hawq.git) and fork your own repo from the HAWQ github mirror repo for code review purpose.

Before forking your own repo, you need to have a github account. Then go to the web page https://github.com/apache/incubator-hawq, click "Fork" button. Now you get a forked repo (for example, https://github.com/changleicn/incubator-hawq).


Use the following steps to get the code to your local computer and do feature development.

 

Now you can go to your own github fork to create pull requests for code review (https://github.com/changleicn/incubator-hawq). Choose the master branch of  https://github.com/apache/incubator-hawq as the base for code review. After your code is merged to Apache Repo by HAWQ committers, please close your pull request.

 

Code review

We expect that pull requests which have been submitted on github will be reviewed by committers, but will be visible to the community for comments as well. Contributors should learn the code review criteria in order to make the changes accepted.

 Code review criteria

  • Features should have a lot of potential use cases and benefit a lot of users

  • Fixes should fix the root cause of the problem
  • Easily tested and have tests associated with the commits
  • Changes have been discussed on JIRA and have a JIRA linked to your change(Pull Request)
  • Code follows the coding conventions
  • Do not introduce potential performance regressions

Commit process (for committers) 

The overall commit process is to review the pull request. If the change passes code review, get the patch and commit it to Apache git repo.


  • No labels

1 Comment

  1. Let's add a few guidelines in terms of reverting committed code.