| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width,initial-scale=1.0"> |
| <title>Apache Cassandra | Apache Cassandra Documentation</title> |
| <link rel="stylesheet" href="../../assets/css/site.css"> |
| <link rel="schema.dcterms" href="https://purl.org/dc/terms/"> |
| <meta name="dcterms.subject" content="_"> |
| <meta name="dcterms.identifier" content="master"> |
| <meta name="generator" content="Antora 2.3.4"> |
| <link rel="icon" href="../../assets/img/favicon.ico" type="image/x-icon"> |
| <script> |
| const script = document.createElement("script"); |
| const domain = window.location.hostname; |
| script.type = "text/javascript"; |
| script.src = "https://plausible.cassandra.apache.org/js/plausible.js"; |
| script.setAttribute("data-domain",domain); |
| script.setAttribute("defer",'true'); |
| script.setAttribute("async",'true'); |
| document.getElementsByTagName("head")[0].appendChild(script); |
| </script> </head> |
| <body class="basic "> |
| <div class="container mx-auto relative"> |
| <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> |
| <meta property="og:type" content="website" /> |
| <meta property="og:url" content="/" /> |
| <meta property="og:site_name" content="Apache Cassandra" /> |
| |
| <header id="top-nav"> |
| <div class="inner relative"> |
| <div class="header-social-icons text-right"> |
| <a href="https://twitter.com/cassandra?lang=en" target="_blank" styles="margin-left: 20px;"><img src="../../assets/img/twitter-icon-circle-white.svg" alt="twitter icon" width="24"></a> |
| <a href="https://www.linkedin.com/company/apache-cassandra/" target="_blank" styles="margin-left: 20px;"><img src="../../assets/img/LI-In-Bug.png" alt="linked-in icon" width="24"></a> |
| <a href="https://www.youtube.com/c/PlanetCassandra" target="_blank" styles="margin-left: 20px;"><img src="../../assets/img/youtube-icon.png" alt="youtube icon" width="24"></a> |
| </div> |
| <div class="cf"> |
| <div class="logo left"><a href="/"><img src="../../assets/img/logo-white-r.png" alt="cassandra logo"></a></div> |
| <div class="mobile-nav-icon right"> |
| <img class="toggle-icon" src="../../assets/img/hamburger-nav.svg"> |
| </div> |
| <ul class="main-nav nav-links right flex flex-vert-center flex-space-between"> |
| <li> |
| <a class="nav-link hide-mobile">Get Started</a> |
| <ul class="sub-menu bg-white"> |
| <li class="pa-micro"> |
| <a href="/_/cassandra-basics.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-basics.png" alt="cassandra basics icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Cassandra Basics |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro"> |
| <a href="/_/quickstart.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-rocket.png" alt="cassandra basics icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Quickstart |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro"> |
| <a href="/_/ecosystem.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-ecosystem.png" alt="cassandra basics icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Ecosystem |
| </div> |
| </a> |
| </li> |
| </ul> |
| </li> |
| <li><a class="nav-link" href="/doc/latest/">Documentation</a></li> |
| <li> |
| <a class="nav-link" href="/_/community.html">Community</a> |
| <ul class="sub-menu bg-white"> |
| <li class="pa-micro"> |
| <a href="/_/community.html#code-of-conduct"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-welcome.png" alt="welcome icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Welcome |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro hide-mobile"> |
| <a href="/_/community.html#discussions"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-discussions.png" alt="discussions icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Discussions |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro hide-mobile"> |
| <a href="/_/community.html#project-governance"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-governance.png" alt="Governance icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Governance |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro hide-mobile"> |
| <a href="/_/community.html#how-to-contribute"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-contribute.png" alt="Contribute icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Contribute |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro hide-mobile"> |
| <a href="/_/community.html#meet-the-community"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-community.png" alt="Meet the Community icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Meet the Community |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro hide-mobile"> |
| <a href="/_/cassandra-catalyst-program.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-catalyst.png" alt="Catalyst icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Catalyst Program |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro hide-mobile"> |
| <a href="/_/events.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-events.png" alt="Events icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Events |
| </div> |
| </a> |
| </li> |
| </ul> |
| </li> |
| <li> |
| <a class="nav-link hide-mobile">Learn</a> |
| <ul class="sub-menu bg-white"> |
| <li class="pa-micro"> |
| <a href="/_/Apache-Cassandra-5.0-Moving-Toward-an-AI-Driven-Future.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-basics.png" alt="Basics icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Cassandra 5.0 |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro"> |
| <a href="/_/case-studies.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-case-study.png" alt="Case Studies icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Case Studies |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro"> |
| <a href="/_/resources.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-resources.png" alt="Resources icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Resources |
| </div> |
| </a> |
| </li> |
| <li class="pa-micro"> |
| <a href="/_/blog.html"> |
| <div class="sub-nav-icon"> |
| <img src="../../assets/img/sub-menu-blog.png" alt="Blog icon"> |
| </div> |
| <div class="sub-nav-text teal py-small"> |
| Blog |
| </div> |
| </a> |
| </li> |
| </ul> |
| </li> |
| <li><a class="nav-link btn btn--filled" href="/_/download.html">Download Now</a></li> |
| </ul> |
| </div> |
| </div> |
| </header> |
| |
| <div class="hero hero--home grad"> |
| <div class="eye"></div> |
| <div id="home-content" class="text-center flex flex-center flex-column relative z2 ma-xlarge"> |
| <h1></h1> |
| </div> |
| </div> |
| <div class="flex-center py-large arrow"> |
| <div class="inner inner--narrow"> |
| <div class="sect1"> |
| <h2 id="contributing-code-changes"><a class="anchor" href="#contributing-code-changes"></a>Contributing Code Changes</h2> |
| <div class="sectionbody"> |
| <div class="sect2"> |
| <h3 id="choosing-what-to-work-on"><a class="anchor" href="#choosing-what-to-work-on"></a>Choosing What to Work on</h3> |
| <div class="paragraph"> |
| <p>Submitted patches can include bug fixes, changes to the Java code base, |
| improvements for tooling (both Java or Python), documentation, testing |
| or any other changes that requires changing the code base. Although the |
| process of contributing code is always the same, the amount of work and |
| time it takes to get a patch accepted also depends on the kind of issue |
| you’re addressing.</p> |
| </div> |
| <div class="dlist"> |
| <dl> |
| <dt class="hdlist1">As a general rule of thumb</dt> |
| <dd> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Major new features and significant changes to the code base will |
| likely not be accepted without deeper discussion within the |
| <a href="http://cassandra.apache.org/community/">developer community</a>.</p> |
| </li> |
| <li> |
| <p>Bug fixes take higher priority compared to features.</p> |
| </li> |
| <li> |
| <p>The extent to which tests are required depends on how likely your |
| changes will effect the stability of Cassandra in production. Tooling |
| changes requires fewer tests than storage engine changes.</p> |
| </li> |
| <li> |
| <p>Less complex patches will be reviewed faster; consider breaking up |
| an issue into individual tasks and contributions that can be reviewed |
| separately.</p> |
| </li> |
| </ul> |
| </div> |
| </dd> |
| </dl> |
| </div> |
| <div class="admonitionblock tip"> |
| <table> |
| <tr> |
| <td class="icon"> |
| <i class="fa icon-tip" title="Tip"></i> |
| </td> |
| <td class="content"> |
| <div class="title">Hint</div> |
| <div class="paragraph"> |
| <p>Not sure what to work? Just pick an issue marked as |
| <a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20CASSANDRA%20AND%20Complexity%20%3D%20%22Low%20Hanging%20Fruit%22%20and%20status%20!%3D%20resolved">Low |
| Hanging Fruit</a> Complexity in JIRA, which flags issues that often turn out to be good starter tasks for beginners.</p> |
| </div> |
| </td> |
| </tr> |
| </table> |
| </div> |
| <div class="paragraph"> |
| <p>To create a JIRA account, please request it on <a href="../community.html#discussions" class="page">the #cassandra or #cassandra-dev channels on ASF Slack</a>, or on <a href="../community.html#discussions" class="page">the user or dev mailing list</a>.</p> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="before-you-start-coding"><a class="anchor" href="#before-you-start-coding"></a>Before You Start Coding</h3> |
| <div class="paragraph"> |
| <p>Although contributions are highly appreciated, we do not guarantee that |
| every contribution will become a part of Cassandra. Therefore, it’s |
| generally a good idea to first get some feedback on the thing you plan |
| to do, especially about any new features or major changes to the |
| code base. You can reach out to other developers on the mailing list or |
| <code>Slack</code>.</p> |
| </div> |
| <div class="dlist"> |
| <dl> |
| <dt class="hdlist1">You should also</dt> |
| <dd> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Avoid redundant work by searching for already reported issues in |
| <a href="https://issues.apache.org/jira/browse/CASSANDRA">JIRA</a> to work on.</p> |
| </li> |
| <li> |
| <p>Create a new issue early in the process describing what you’re |
| working on - before finishing your patch.</p> |
| </li> |
| <li> |
| <p>Link related JIRA issues with your own ticket to provide a better |
| context.</p> |
| </li> |
| <li> |
| <p>Update your ticket from time to time by giving feedback on your |
| progress and link a GitHub WIP branch with your current code.</p> |
| </li> |
| <li> |
| <p>Ping people who you actively like to ask for advice on JIRA by |
| <a href="https://confluence.atlassian.com/doc/mentions-251725350.html">mentioning users</a>.</p> |
| </li> |
| </ul> |
| </div> |
| </dd> |
| <dt class="hdlist1">There are also some fixed rules that you need to be aware</dt> |
| <dd> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Patches will only be applied to branches by following the release |
| model</p> |
| </li> |
| <li> |
| <p>Code must be testable</p> |
| </li> |
| <li> |
| <p>Code must follow the <a href="code_style.html" class="page">code style</a> convention</p> |
| </li> |
| <li> |
| <p>Changes must not break compatibility between different Cassandra |
| versions</p> |
| </li> |
| <li> |
| <p>Contributions must be covered by the Apache License</p> |
| </li> |
| </ul> |
| </div> |
| </dd> |
| </dl> |
| </div> |
| <div class="sect3"> |
| <h4 id="choosing-the-right-branches-to-work-on"><a class="anchor" href="#choosing-the-right-branches-to-work-on"></a>Choosing the Right Branches to Work on</h4> |
| <div class="paragraph"> |
| <p>There are currently multiple Cassandra versions maintained in individual |
| branches:</p> |
| </div> |
| <table class="tableblock frame-all grid-all stretch"> |
| <colgroup> |
| <col style="width: 50%;"> |
| <col style="width: 50%;"> |
| </colgroup> |
| <thead> |
| <tr> |
| <th class="tableblock halign-left valign-top">Version</th> |
| <th class="tableblock halign-left valign-top">Policy</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">4.0</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">Code freeze (see below)</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">3.11</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">Critical bug fixes only</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">3.0</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">Critical bug fixes only</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">2.2</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">Critical bug fixes only</p></td> |
| </tr> |
| <tr> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">2.1</p></td> |
| <td class="tableblock halign-left valign-top"><p class="tableblock">Critical bug fixes only</p></td> |
| </tr> |
| </tbody> |
| </table> |
| <div class="paragraph"> |
| <p>Corresponding branches in git are easy to recognize as they are named |
| <code>cassandra-<release></code> (e.g. <code>cassandra-3.0</code>). The <code>trunk</code> branch is an |
| exception, as it contains the most recent commits from all other |
| branches and is used for creating new branches for future tick-tock |
| releases.</p> |
| </div> |
| </div> |
| <div class="sect3"> |
| <h4 id="4-0-code-freeze"><a class="anchor" href="#4-0-code-freeze"></a>4.0 Code Freeze</h4> |
| <div class="paragraph"> |
| <p>Patches for new features are currently not accepted for 4.0 or any |
| earlier versions. |
| All efforts should focus on stabilizing the 4.0 branch before the first |
| official release. During that time, only the following patches will be |
| considered for acceptance:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Bug fixes</p> |
| </li> |
| <li> |
| <p>Measurable performance improvements</p> |
| </li> |
| <li> |
| <p>Changes not distributed as part of the release such as:</p> |
| </li> |
| <li> |
| <p>Testing related improvements and fixes</p> |
| </li> |
| <li> |
| <p>Build and infrastructure related changes</p> |
| </li> |
| <li> |
| <p>Documentation</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <div class="sect3"> |
| <h4 id="bug-fixes"><a class="anchor" href="#bug-fixes"></a>Bug Fixes</h4> |
| <div class="paragraph"> |
| <p>Creating patches for bug fixes is a bit more complicated and will |
| depend on how many different versions of Cassandra are affected. In each |
| case, the order for merging such changes will be <code>cassandra-2.1</code> → |
| <code>cassandra-2.2</code> → <code>cassandra-3.0</code> → <code>cassandra-3.x</code> → <code>trunk</code>. |
| But don’t worry, merging from 2.1 would be the worst case for bugs that |
| affect all currently supported versions, an uncommon event. As a |
| contributor, you’re also not expected to provide a single patch for each |
| version. What you need to do however is:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Be clear about which versions you could verify to be affected by the |
| bug</p> |
| </li> |
| <li> |
| <p>For 2.x: ask if a bug qualifies to be fixed in this release line, as |
| this may be handled on case by case bases</p> |
| </li> |
| <li> |
| <p>If possible, create a patch against the lowest version in the branches |
| listed above (e.g. if you found the bug in 3.9 you should try to fix it |
| already in 3.0)</p> |
| </li> |
| <li> |
| <p>Test if the patch can be merged cleanly across branches in the |
| direction listed above</p> |
| </li> |
| <li> |
| <p>Be clear which branches may need attention by the committer or even |
| create custom patches for those if you can</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="creating-a-patch"><a class="anchor" href="#creating-a-patch"></a>Creating a Patch</h3> |
| <div class="paragraph"> |
| <p>So you’ve finished coding and the great moment arrives: it’s time to |
| submit your patch!</p> |
| </div> |
| <div class="olist arabic"> |
| <ol class="arabic"> |
| <li> |
| <p>Create a branch for your changes if you haven’t done already. Many |
| contributors name their branches based on ticket number and Cassandra |
| version, e.g. <code>git checkout -b 12345-3.0</code> or |
| <code>git checkout -b CASSANDRA-12345-3.0</code>.</p> |
| </li> |
| </ol> |
| </div> |
| <div class="admonitionblock tip"> |
| <table> |
| <tr> |
| <td class="icon"> |
| <i class="fa icon-tip" title="Tip"></i> |
| </td> |
| <td class="content"> |
| <div class="title">Hint</div> |
| <div class="paragraph"> |
| <p>When working on multiple patches at the same time, instead of cloning |
| the repository separately for each of them, set up multiple |
| working trees for different Cassandra versions from the same repository |
| using <a href="https://git-scm.com/docs/git-worktree">Git worktrees</a> feature.</p> |
| </div> |
| </td> |
| </tr> |
| </table> |
| </div> |
| <div class="olist arabic"> |
| <ol class="arabic"> |
| <li> |
| <p>Verify that you follow Cassandra’s <a href="code_style.html" class="page">code style</a></p> |
| </li> |
| <li> |
| <p>Make sure all tests (including yours) pass using ant as described in |
| <a href="testing.html" class="page">testing</a>. If you suspect a test failure |
| is unrelated to your change, it may be useful to check the test’s |
| status by searching the issue tracker or looking at |
| <a href="https://builds.apache.org/">CI</a> results for the relevant upstream |
| version. Note that the full test suites take many hours to complete, |
| so it is common to only run specific relevant tests locally before |
| uploading a patch. Once a patch has been uploaded, the reviewer or |
| committer can help setup CI jobs to run the full test suites.</p> |
| </li> |
| <li> |
| <p>Consider going through the <a href="how_to_review.html" class="page">how |
| to review</a> page for your code. This will help you to understand how |
| others will consider your change for inclusion.</p> |
| </li> |
| <li> |
| <p>Don’t make the committer squash commits for you in the root branch |
| either. Multiple commits are fine - and often preferable - during review |
| stage, especially for incremental review, but once +1d, do either:</p> |
| </li> |
| </ol> |
| </div> |
| <div class="olist loweralpha"> |
| <ol class="loweralpha" type="a"> |
| <li> |
| <p>Attach a patch to JIRA with a single squashed commit in it (per |
| branch), or</p> |
| </li> |
| <li> |
| <p>Squash the commits in-place in your branches into one</p> |
| </li> |
| </ol> |
| </div> |
| <div class="olist arabic"> |
| <ol class="arabic" start="6"> |
| <li> |
| <p>Include a CHANGES.txt entry (put it at the top of the list), and |
| format the commit message appropriately in your patch as below. Please |
| note that only user-impacting items |
| <a href="https://lists.apache.org/thread.html/rde1128131a621e43b0a9c88778398c053a234da0f4c654b82dcbbe0e%40%3Cdev.cassandra.apache.org%3E">should</a> |
| be listed in CHANGES.txt. If you fix a test that does not affect users |
| and does not require changes in runtime code, then no CHANGES.txt entry |
| is necessary.</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-none hljs" data-lang="none"><One sentence description, usually Jira title and CHANGES.txt summary> |
| <Optional lengthier description> |
| patch by <Authors>; reviewed by <Reviewers> for CASSANDRA-#####</code></pre> |
| </div> |
| </div> |
| </li> |
| <li> |
| <p>When you’re happy with the result, create a patch. We suggest that |
| you use a similar format (note blank lines) for the commit log message:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-none hljs" data-lang="none"><one sentence description> |
| |
| <optional lengthier description> |
| |
| Patch by <authors>; reviewed by <Reviewers> for CASSANDRA-#####</code></pre> |
| </div> |
| </div> |
| </li> |
| </ol> |
| </div> |
| <div class="paragraph"> |
| <p>If you don’t know who is reviewing your change yet, you can use <code>TBD</code> |
| and amend the commit later to note the people who helped you.</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-none hljs" data-lang="none">git add <any new or modified file> |
| git commit |
| git format-patch HEAD~1 |
| mv <patch-file> <ticket-branchname.txt> (e.g. 12345-trunk.txt, 12345-3.0.txt)</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>Alternatively, many contributors prefer to make their branch available |
| on GitHub. In this case, fork the Cassandra repository on GitHub and |
| push your branch:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-none hljs" data-lang="none">git push --set-upstream origin 12345-3.0</code></pre> |
| </div> |
| </div> |
| <div class="olist arabic"> |
| <ol class="arabic" start="8"> |
| <li> |
| <p>To make life easier for your reviewer/committer, you may want to make |
| sure your patch applies cleanly to later branches and create additional |
| patches/branches for later Cassandra versions to which your original |
| patch does not apply cleanly. That said, this is not critical, and you |
| will receive feedback on your patch regardless.</p> |
| </li> |
| <li> |
| <p>Attach the newly generated patch to the ticket/add a link to your |
| branch and click "Submit Patch" at the top of the ticket. This will move |
| the ticket into "Patch Available" status, indicating that your |
| submission is ready for review.</p> |
| </li> |
| <li> |
| <p>Wait for other developers or committers to review it and hopefully |
| +1 the ticket (see <a href="how_to_review.html" class="page">how to |
| review</a>). If your change does not receive a +1, do not be discouraged. |
| If possible, the reviewer will give suggestions to improve your patch |
| or explain why it is not suitable.</p> |
| </li> |
| <li> |
| <p>If the reviewer has given feedback to improve the patch, make the |
| necessary changes and move the ticket into "Patch Available" once again.</p> |
| </li> |
| <li> |
| <p>Once you’ve had the patch reviewed you can amend the commit to update |
| the commit message <code>TBD</code> with the reviewers who helped you.</p> |
| </li> |
| </ol> |
| </div> |
| <div class="paragraph"> |
| <p>Once the review process is complete, you will receive a +1. Wait for a |
| committer to commit it. Do not delete your branches immediately after |
| they’ve been committed - keep them on GitHub for a while. Alternatively, |
| attach a patch to JIRA for historical record. It’s not that uncommon for |
| a committer to mess up a merge. In case of that happening, access to the |
| original code is required, or else you’ll have to redo some of the work.</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <footer class="grad grad--two flex-center pb-xlarge"> |
| <div class="inner text-center z2 relative"> |
| <h2 class="white py-small">Get started with Cassandra, fast.</h2> |
| <a id="footer-cta" href="/_/quickstart.html" class="btn btn--filled ma-medium">Quickstart Guide</a> |
| </div> |
| <div class="inner flex flex-distribute-items mt-xlarge z2 relative"> |
| <div class="col-2"> |
| <div id="footer-logo" class="logo logo--footer mb-medium"><img src="../../assets/img/logo-white-r.png" alt="Cassandra Logo"></div> |
| <p>Apache Cassandra<img src="../../assets/img/registered.svg" alt="®" style="width:18px;"> powers mission-critical deployments with improved performance and unparalleled levels of scale in the cloud.</p> |
| <div class="footer-social-icons"> |
| <a href="https://twitter.com/cassandra?lang=en" target="_blank"><img src="../../assets/img/twitter-icon-circle-white.svg" alt="twitter icon" width="24"></a> |
| <a href="https://www.linkedin.com/company/apache-cassandra/" target="_blank"><img src="../../assets/img/LI-In-Bug.png" alt="linked-in icon" width="24"></a> |
| <a href="https://www.youtube.com/c/PlanetCassandra" target="_blank"><img src="../../assets/img/youtube-icon.png" alt="youtube icon" width="24"></a> |
| </div> |
| </div> |
| <div class="col-2 flex flex-center"> |
| <ul class="columns-2"> |
| <li class="mb-small"><a href="/">Home</a></li> |
| <li class="mb-small"><a href="/_/cassandra-basics.html">Cassandra Basics</a></li> |
| <li class="mb-small"><a href="/_/quickstart.html">Quickstart</a></li> |
| <li class="mb-small"><a href="/_/ecosystem.html">Ecosystem</a></li> |
| <li class="mb-small"><a href="/doc/latest/">Documentation</a></li> |
| <li class="mb-small"><a href="/_/community.html">Community</a></li> |
| <li class="mb-small"><a href="/_/case-studies.html">Case Studies</a></li> |
| <li class="mb-small"><a href="/_/resources.html">Resources</a></li> |
| <li class="mb-small"><a href="/_/blog.html">Blog</a></li> |
| </ul> |
| </div> |
| </div> |
| </footer> |
| <div class="lower-footer bg-white pa-medium"> |
| <div class="flex flex-row flex-vert-center"> |
| <div class="pr-medium"><img src="../../assets/img//feather-small.png" alt="ASF" width="20"></div> |
| <div class="pr-medium"><a href="http://www.apache.org/" target="_blank">Foundation</a></div> |
| <div class="pr-medium"><a href="https://www.apache.org/events/current-event.html" target="_blank">Events</a></div> |
| <div class="pr-medium"><a href="https://www.apache.org/licenses/" target="_blank">License</a></div> |
| <div class="pr-medium"><a href="https://www.apache.org/foundation/thanks" target="_blank">Thanks</a></div> |
| <div class="pr-medium"><a href="https://www.apache.org/security" target="_blank">Security</a></div> |
| <div class="pr-medium"><a href="https://privacy.apache.org/policies/privacy-policy-public.html" target="_blank">Privacy</a></div> |
| <div class="pr-medium"><a href="https://www.apache.org/foundation/sponsorship" target="_blank">Sponsorship</a></div> |
| </div> |
| <p class="my-medium">© 2009-<script>document.write(new Date().getFullYear())</script> <a href="https://apache.org" target="_blank">The Apache Software Foundation</a> under the terms of the Apache License 2.0. Apache, the Apache feather logo, Apache Cassandra, Cassandra, and the Cassandra logo, are either registered trademarks or trademarks of The Apache Software Foundation.</p> |
| </div> |
| <div id="fade" class="hidden"></div> |
| <div id="modal" class="hidden"> |
| <div id="close-modal" class="cursor-pointer"><svg viewBox="0 0 24 24" width="24" height="24" stroke="currentColor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round" class="css-i6dzq1"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg></div> |
| <div id="mod-content" class="vid-mod-content resp-container"></div> |
| </div> |
| <script> |
| jQuery(function(){ |
| var windowW = $(window).width(); |
| $(document) |
| .on('click','.mobile-nav-icon',function(){ |
| $('.main-nav').fadeIn(); |
| }) |
| .on('click','.main-nav',function(){ |
| if(windowW <= 1000){ |
| $(this).fadeOut(); |
| } |
| }) |
| .on('click','#version-toggle',function(){ |
| $(this).toggleClass('active'); |
| $(this).next().fadeToggle(); |
| }) |
| .on('click','#mobile-docs-nav-burger', function(){ |
| $(this).toggleClass('active'); |
| $('.docs-nav').toggleClass('active'); |
| }); |
| var url = window.location.pathname; |
| var isQuickstart = url.includes('quickstart.html'); |
| if(isQuickstart){ |
| var footerCTA = document.getElementById('footer-cta'); |
| footerCTA.innerHTML = 'Get latest updates'; |
| footerCTA.setAttribute('href', '/_/blog.html'); |
| } |
| }); |
| </script> |
| </div> |
| </body> |
| <script> |
| jQuery(function(){ |
| jQuery(document) |
| .on('click','.cassandra-cloud h3',function(){ |
| var el = jQuery(this); |
| el.toggleClass('active'); |
| el.next().slideToggle(); |
| }) |
| .on('click','.image-expand img', function(){ |
| $(this).clone().appendTo('#mod-content'); |
| $('#fade,#modal,#close-modal').fadeIn(); |
| $('body,html').addClass('no-scroll'); |
| }) |
| .on('click','#fade,#close-modal', function(){ |
| $('#fade,#modal,#close-modal').fadeOut(); |
| $('body,html').removeClass('no-scroll'); |
| $('#mod-content').html(''); |
| }); |
| }); |
| </script> |
| </html> |