Science and technology

A newbie’s information for contributing to Apache Cassandra

Apache Cassandra is an open supply NoSQL database trusted by 1000’s of firms across the globe for its scalability and excessive availability that doesn’t compromise efficiency. Contributing to such a broadly used distributed system could appear daunting, so this text goals to supply you a simple entry level.

There are good causes to contribute to Cassandra, reminiscent of:

  • Gaining recognition with the Apache Software Foundation (ASF) as a contributor
  • Contributing to an open supply challenge utilized by hundreds of thousands of individuals worldwide that powers web providers for firms reminiscent of American Express, Bloomberg, Netflix, Yelp, and extra
  • Being a part of a group including new options and constructing on the discharge of Cassandra four.zero, our most secure within the challenge’s historical past

How to get began

Apache Cassandra is a giant challenge, which implies you can see one thing inside your skillset to contribute to. Every contribution, no matter how small, counts and is tremendously appreciated. An glorious place to begin is the Getting Started guide.

The Apache Cassandra challenge additionally participates in Google Summer of Code. For an thought of what is concerned, please learn this blog post by PMC member Paolo Motta.

Choose what to work on

Submitted patches can embrace bug fixes, modifications to the Java codebase, enhancements for tooling (Java or Python), documentation, testing, or every other modifications to the codebase. Although the method of contributing code is at all times the identical, the quantity of labor and time it takes to get a patch accepted is determined by the type of challenge you are addressing.

Reviewing different individuals’s patches is at all times appreciated. To study extra, learn the Review Checklist. If you’re a Cassandra person and will help by responding to a few of the questions on the person record, that makes a superb contribution.

The easiest option to discover a ticket to work on is to go looking Cassandra’s Jira for points marked as Low-Hanging Fruit. We use this label to flag points which are good starter duties for newbies. If you do not have a login to ASF’s Jira, you will have to sign up.

Just a few simple methods to begin getting concerned embrace:

  • Testing: By studying about Cassandra, you may add or enhance assessments, reminiscent of CASSANDRA-16191. You can study extra concerning the Cassandra take a look at framework on our Testing web page. Additional testing and Jira-reported bugs or options for enhancements are at all times welcome.
  • Documentation: This is not at all times low-hanging fruit, however it’s essential. Here’s a pattern ticket: CASSANDRA-16122. You can discover extra data on contributing to the Cassandra documentation on our Working on documentation web page.
  • Investigate or repair reported bugs: Here’s an instance: CASSANDRA-16151.
  • Answer questions: Subscribe to the person mailing record, look out for questions you understand the reply to, and assist others by replying. See the Community web page for particulars on find out how to subscribe to the mailing record.

These are simply 4 methods to begin serving to the challenge. If you wish to study extra about distributed methods and contribute in different methods, examine the documentation.

What you should contribute code

To make code contributions, you have to:

  • Java SDK
  • Apache Ant
  • Git
  • Python

Get the code and take a look at

Get the code with Git, work on the subject, use your most well-liked IDE, and comply with the Cassandra coding style. You can study extra on our Building and IDE integration web page.

$ git clone https://git-wip-us.apache.org/repos/asf/cassandra.git cassandra-trunk

Many contributors title their branches based mostly on ticket quantity and Cassandra model. For instance:

$ git checkout -b CASSANDRA-XXXX-V.V
$ ant

Test the atmosphere:

$ ant take a look at

Testing a distributed database

When you’re finished, please, make certain all assessments (together with your individual) cross utilizing Ant, as described in Testing. If you watched a take a look at failure is unrelated to your change, it could be helpful to examine the take a look at’s standing by looking out the difficulty tracker or CI outcomes for the related upstream model.

The full take a look at suites take many hours to finish, so it’s common to run related assessments domestically earlier than importing a patch. Once a patch has been uploaded, the reviewer or committer will help arrange CI jobs to run the entire take a look at suites.

Additional assets on testing Cassandra embrace:

Submitting your patch

Before submitting a patch, please confirm that you simply comply with Cassandra’s Code Style conventions. The best option to submit your patch is to fork the Cassandra repository on GitHub and push your department:

$ git push --set-upstream origin CASSANDRA-XXXX-V.V 

Submit your patch by publishing the hyperlink to your newly created department in your Jira ticket. Use the Submit Patch button.

To study extra, learn the entire docs on Contributing to Cassandra. If you continue to have questions, get in contact with the developer community.


The creator needs to thank the Apache Cassandra group for his or her tireless contributions to the challenge, dedication to the challenge customers, and steady efforts in enhancing the method of onboarding new contributors.

The contributions and dedication of many people to the Apache Cassandra challenge and group have enabled us to succeed in four.zero—a big milestone. As we glance to the long run and search to encourage new contributors, we wish to acknowledge everybody’s efforts since its inception over 12 years in the past. It wouldn’t have been doable with out your assist. Thank you!

Most Popular

To Top