Hello and welcome to your fresh edition of "What's going on in dev with Cassandra?"
[New contributor Getting Started] As a new contributor we recommend starting in one of two places: Failing tests, or starter tickets we label "lhf" (low hanging fruit). We have a new Build Lead role that's been creating tickets for failing tests, so there's a lot of good fodder there to be worked on. If you want to get to know an area in the codebase and get a feel for how the Cassandra project works, tests are a great way to get involved. They're almost always complex enough to be interesting and rarely coupled with multiple systems and only require familiarizing yourself with one section of the code. Query for failing tests (53 unassigned): https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=496&quickFilter=2252 Query for unassigned starter tickets (24 unassigned): https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=484&quickFilter=2162&quickFilter=2160 [Dev list conversations] https://lists.apache.org/list?dev@cassandra.apache.org:lte=2w: The past couple of weeks has seen the vote for CEP-7: Storage Attached Index pass as well as CEP-19: Trie memtable implementation. Congrats to all involved; getting early consensus on large bodies of work like this is incredibly encouraging to see, as is seeing cutting edge algorithms and data structures coming into the Cassandra ecosystem. Really looking forward to seeing these implementations take shape and be integrated. The discussion about our .yaml configuration continues to evolve: https://lists.apache.org/thread/0x06lvl3gfx1r6svwgg6njqw048sqjog. The work and discussion has largely moved to the associated JIRA ticket here: https://issues.apache.org/jira/browse/CASSANDRA-17292 Chris reached out looking for volunteers to participate in a contributor Q&A interview program; if you're a contributor and would like to participate, please chime in: https://lists.apache.org/thread/x8v1p52htnxzkr6fv89t8mp4xphxx1vj We're looking for volunteers to take on the build lead role. The wiki article that explains the responsibilities of the role as well as the sign up can be accessed here: https://cwiki.apache.org/confluence/display/CASSANDRA/Build+Lead. If you have a 2-3 hours to dedicate in a given week to helping track new test failures via butler as well as getting to know and helping optimize our build environment, please sign up! Our tests are our first line of defense against regressions in our code, and being the system of record at scale for a huge portion of the most critical infrastructure in the world means these tests are *quite important*. *No pressure *;) And the last thing I'll call out - Benjamin took the initiative to create a contributors group on linkedin (ML thread: https://lists.apache.org/thread/p1ql8bs51bjvj50c3535rxkp2bn051fk). The linkedin group can be accessed here: https://www.linkedin.com/groups/9159443/ [CI Trends] Butler dashboard: https://butler.cassandra.apache.org/#/ Things have been a bit up and down with CI these past couple of weeks. We've been struggling with disk space on our build server; we got an upgrade from 600gigs of space to 800gigs as of this morning, so that should buy us some time. I'm taking a second build lead rotation as of this week and setting my primary goal as making progress on this disk space usage problem, as our inability to run tests is blocking my ability to automate the JIRA bot to update our tickets with test run status. :). Enlightened self interest is always a lovely motivator. In terms of successful runs however, we're down to the following test failures on our branches (newest to oldest): trunk: 5 4.0: 9 3.11: 20 3.0: 16 50 in total is a healthy drop from where we were over the past couple of months; it's great to see progress on this front. I look forward to us reaching the point where our test runs are stable, green, and we can procedurally institute a block on merges without green CI like we've discussed; I think that'll make a big difference in the confidence all of us have in our diffs as well as in the general time commitment and context switching required from everyone on the project. [Release progress] https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=484&quickFilter=2278 4.0.4: 8 issues closed out in the past 2 weeks. Highlights include some test fixes, deprecation of JavaScript based UDF's in CASSANDRA-17280, a fix in a race condition bug in local session repair on CASSANDRA-17335, and a fix for unshared heap size calculation in CASSANDRA-17402. 4.1.0: 10 issues were closed in out 4.1.0. Highlights include exposing streaming status as a vtable in CASSANDRA-17390 which should be nice for operations, some test fixes (always important!), some guardrails work around number of partition keys in IN queries (CASSANDRA-17186) which should *also* be quite welcome for folks operating Cassandra, and some cleanup of unit test failures and warnings in CASSANDRA-17397. We've got a couple months left before the freeze date for 4.1; let's keep burning down those test failures on trunk (5 to go!) so we can have a painless transition into our release qualification cycle. Thanks as always for everything you do on the project everyone. ~Josh