In case you were wondering, if you switch your ToDo list structure enough times 
you're bound to have something slip through the cracks. Like, say, a periodic 
project status update email. If you're curious where I landed: "All tools are 
comparably insufficient in different ways". /sigh

Don't be like me; be better.

Last update was about 7 weeks ago. Have we all been lounging around all summer, 
taking vacation and doing nothing useful? We released 4.0.11 yesterday and the 
votes ongoing for 4.1.3, so I'm going to go with a "No". :) Either that or 
we're the kind of folks who work on open-source code for fun on vacation. 
¯\_(ツ)_/¯

Here's the CHANGES.txt for 4.1.3: 
https://github.com/apache/cassandra/blob/4.1.3-tentative/CHANGES.txt
Hit up the dev list to vote!

There's a community survey! Go take it. Please. :) From Patrick's thread on the 
dev ML:
> There are only 2 questions required, and the rest are all optional, so
> answer whatever you can. It’s all helpful information.
> 
> https://forms.gle/KVNd7UmUfcBuoNvF7
> 
> The survey will run until July 29, 2023. Once completed, the results will
> be anonymized and the results posted on http://cassandra.apache.org


*[New Contributors Getting Started]
*
https://the-asf.slack.com in #cassandra-dev is where we congregate. (reply to 
me on this email if you need an invite for your account), and reach out to the 
@cassandra_mentors alias with any questions about the code. Or just ask a 
public question about JMX vs. REST and watch the hornets nest come to life! :D

For a "where should I get started?" list of curated work, you can check that 
out here: 
https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=484&quickFilter=2160&quickFilter=2162.
 Anything in the "ToDo" column is a great place to get started.

Some useful links:
- Getting Started with Development on C*: 
https://cassandra.apache.org/_/development/gettingstarted.html
- Building and IDE integration (worktrees are your friend; msg me on slack if 
you need pointers): https://cassandra.apache.org/_/development/ide.html
- Code Style: https://cassandra.apache.org/_/development/code_style.html


*[Dev mailing list]
*
https://lists.apache.org/list?dev@cassandra.apache.org:dfr=2023-5-30|dto=2023-7-20:

Hm; 35 topics compared to the 52 from the last "oops I took too long" update. 
Looks like some were reasonably dense. What have we been up to?

Stefan Miklosovic was looking into the addition of wiremock into the project as 
part of CASSANDRA-16555: 
https://lists.apache.org/thread/s4q0159wsrw19kcco555xjnt6b60z8jx. No updates on 
that in about a month; seemed like there wasn't big concern on it but some 
questions about documentation since we have a couple mocking libs already. This 
was merged in as part of https://issues.apache.org/jira/browse/CASSANDRA-16555.

Jordan West reached out about changing our default SSL provider to either ACCP 
or tc-native: https://lists.apache.org/thread/lx43340ycmm2t22ds13wmjzxj5vvjly9. 
Some users have seen pretty significant reduction in CPU usage by switching 
over; this is being tracked in 
https://issues.apache.org/jira/browse/CASSANDRA-18624.

Some changes in the DropWizard JMXReporter were making a whole slew of people 
sad. API's people! They're like marriage, or better yet, having children: It's 
a long-term commitment. Maxim Muzafarov has a patch available in 
CASSANDRA-14667 for this. Dev thread: 
https://lists.apache.org/thread/g3v06c3xtrgtcsr4x52nwj6v7dj9l6dl, JIRA: 
https://issues.apache.org/jira/browse/CASSANDRA-14667

As a heads up to everyone, ant generate-idea-files now generates for JDK17 as 
well. ML thread: 
https://lists.apache.org/thread/0hnf7wtcf86pn6b2lydd4kqcfjw8n4t9, JIRA: 
https://issues.apache.org/jira/browse/CASSANDRA-18467

Jacek Lewandowski hit the list to update folks w/his plans around limiting 
paging by bytes and queries by memory; we're working through this on 
CASSANDRA-11745, though likely not before a freeze for 5.0 whenever that may 
be. ML thread: 
https://lists.apache.org/thread/9zymojzgq5sw9jpmghf36nh8yn1kwz6k, JIRA: 
https://issues.apache.org/jira/browse/CASSANDRA-11745

Brad Schoening reached out about a potential change in argument parsing for 
cassandra-stress over to the Apache Commons CLI library here: 
https://lists.apache.org/thread/hbg25nn1jobx69zrl1syv1vl3qc318tn. Ekaterina 
pointed out we need to update it but otherwise it's been pretty radio silent 
for 9 days; probably have a lazy consensus there. Changes here *could* disrupt 
folks that have automated work using cassandra-stress which is worth keeping in 
mind. Given how a) aggressively internal this tool is, and b) the number of 
different stress tools out there targeting end-users (tlp-stress, NoSQLBench, 
etc), my personal .02 is that we go for it and unify those options. If anyone 
else disagrees, now's the time.

Looks like we're going to deprecate the CloudstackSnitch snitch in 5.0 and let 
users know they're more or less on their own if they're using it since it's 
Very Not Maintained: 
https://lists.apache.org/thread/2zxvbjoynhvsr33cc9h9xv99sdvjldn8. 

Ah, static analysis. The thing we love to argue debate about. Well, *one* of 
the things. Jacek's looking to tidy things up a bit: 
https://lists.apache.org/thread/xot4xnoolgss34tq9ptb8mjy8pzjpbb7. Kind of 
noodling on when we run checks, where, on what targets in build.xml, on what 
targets in the build. Jacek digested and restated what we agreed upon on that 
thread in the context of his focus here: 
https://lists.apache.org/thread/66j9nmff89y0hft6z4cqgw6s37p25s5m, or for the 
lazy / efficient:

> - Remove the checkstyle dependency from "jar" and "test"
> - Create a single "check" target that includes all the checks we expect
> to pass in the CI (currently Checkstyle, RAT, and Eclipse-Warnings), making
> this task the default.

On the above topic / thread, for the record I don't have any magic to share 
from my local env. SpotBugs and SonarLint still both largely think our 
code-base is a wasteland of sorrow and regret, however demoting them to 
warnings and using them to tidy up files when I touch them for other work has 
been a pretty effective strategy for me to capture some of their value without 
the *rather massive* initial lift of majorly tuning their rulesets to match 
our... particular... customs. :) Both are pretty simple to bind keymaps for 
"current file analysis" style approaches.

The cqlsh version and C* version mismatch is now making German Eichberger sad 
(as it should): 
https://lists.apache.org/thread/yk167v55cx7g1k8c0cmom06hothrv6q2. We're 
tracking some work to document min required version inside a vtable in 
CASSANDRA-18666 https://issues.apache.org/jira/browse/CASSANDRA-18666; no 
assignee on that so if anyone's interested, hop on board. Definitely a great 
step in the right direction.

Some good discussion started by Jeff Widman in conjunction w/Brad Shoening 
around the pypi cqlsh library: 
https://lists.apache.org/thread/sy3p2b2tncg1bk6x3r0r60y10dm6l18d. The proposed 
goal: When a Cassandra release happens, the build/release process automatically
publishes cqlsh to https://pypi.org/project/cqlsh/. Looks like there's user 
interest and a CEP draft coming - thanks to both of you for working on this. 
These kinds of things make a big difference for our users.

A discussion about what qualifies as an API w/regards to our tooling stretched 
long here: https://lists.apache.org/thread/72j5qfgbttjcmylhcmfq1ptboh641ns0. 
For good reason; it's a pretty thorny one where we have a lot of debt, and the 
topic keeps coming back like a zombie on slack every few months which means 
it's a pain-point and probably worth applying some energy to as a project 
community. My understanding of where we reached on the thread:
1. We want to be able to revise and evolve our user-facing output
2. We need stable alternatives that can be programmatically parsed if we want 1
3. We should version the output for all of that

Also, typos in API's are like annoying little splinters stuck in our minds for 
eternity. So we should try and avoid those.

Jakub Zytka has quite a lot of detailed thoughts and analyses about some 
assertions during reads that may be fixeable in the future with TCM 
(Transactional Cluster Metadata) coming into play. See the ML thread here: 
https://lists.apache.org/thread/zmq3ky65cp9orgcjhfcox08s49bzsc2g. Related jira 
tickets:
CASSANDRA-18591: https://issues.apache.org/jira/browse/CASSANDRA-18591
CASSANDRA-18589: https://issues.apache.org/jira/browse/CASSANDRA-18589

Mick and a few of us have been grinding away at changing over the CI scripts 
for ASF CI to being in-tree and more generic. Well, really Mick has been 
grinding away and the peanut gallery (i.e. review squad) has just been sitting 
back and critiquing his work and providing ideas, as one does. Sorry Mick, and 
great work! ;) I started a thread discussing what our "definition of done" for 
a pre-commit CI system should be. Basically, we have a high level goal: tests 
run on pre-commit in any environment should give us high confidence they won't 
disrupt the ASF CI (i.e. introduce flakes). Thread is here: 
https://lists.apache.org/thread/cgmlgxknjl2s8f3wwlpkqn5xoc1dq582. There's a 
gdoc linked from there as well; on the whole it looks like we have a decent 
consensus there so I'll likely encode it in the wiki w/a link to the dev ML as 
"lazy consensus achieved" for future posterity.

Berenguer Blasi is wrestling with some of the data structure format and 
optimization on disk checking into whether we have bytes to ditch due to lack 
of need on max dates or, as Benedict points out, to potentially just delta 
encode in even smaller space. ML list is here: 
https://lists.apache.org/thread/3jlhwgg6k6ckcg0x1jsfgf1gdn4n8zd9. Worth a read 
through and if you have the time and inclination, do engage.

SAI. The promise of native indexes across your C* data... looks like Caleb, 
Mike, and the crew are bringing this forward: 
https://lists.apache.org/thread/of3zgtcoyrwggkz9w2jjv2qpkhh49pbt. This is a 
lovely update from Caleb just letting everyone know where they are in their 
work and how close they are to merging into 5.0. 5.0 really is going to be a 
pretty interesting release, eh? Great work everyone!


*[Checking in on CI]
*
https://butler.cassandra.apache.org/#/

So since 5/30:

3.0: 7 -> 9
 • Tthe last few were around 5. Looks a little jumpy; not sure what's up there.
3.11: 11 -> 16
 • Had a recent bump up around June 21 where it looks likje our average hopped 
up from the 11 we had prior to 16. Probably worth looking into.
4.0: 14 -> 24
 • This looks like a recent anomaly. Since we have multi-branch recent 
anomalies, I'd look to env first (which is one thing we're looking to improve 
with things like CASSANDRA-18133)
4.1: 4 -> 12
 • Though recently as low as 0, 3 a couple weeks ago. Flakey flakes: 
https://butler.cassandra.apache.org/#/ci/upstream/compare/Cassandra-4.1/cassandra-4.1.
trunk: 15 -> 16
 • Yet again, recent spike anomaly. Was as low / consistent as 5-ish. Maybe 
average high single digits.

So all in all? Not a terrible place to be entering the "freezing season", 
whenever that may land. We've held steady for over a quarter now. That said, we 
have SAI, maybe accord and TCM looking to merge, so there's some really big 
feature branches coming down the pike. Please make sure you do full post-commit 
suites (i.e. not just the pre-commit circle subset for instance) before merging 
things in; the last thing we need is a big blowout of flaky failing tests to 
hit we then need to grind through before we can release 5.0.


*[What's been closed out]
*
QuickFilter remains accurate: 
https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=484&quickFilter=2278
Here's a JQL query that ought to get you the same if you want to look at it in 
the web interface: 
https://issues.apache.org/jira/issues/?filter=12352614&jql=project%20%3D%20cassandra%20AND%20(resolved%20%3E%202023-05-20%20AND%20resolution%20%3D%20%22Fixed%22)%20ORDER%20BY%20fixversion%20DESC%2C%20type%20desc

*Closed since 2023-05-20**
*

*Missing versions:**
*
[Task](CASSANDRA-17429)Use only one image for all CircleCI builds; Switch to 
"latest" tag(e.dimitrova)
[Improvement](CASSANDRA-15698)DOC - Review Download page(polandll)
[Bug](CASSANDRA-15801)Tiny documentation fix in Architecture/Overview(polandll)
[Bug](CASSANDRA-18541)AUTH requests use too much resources()
[Bug](CASSANDRA-18678)CCM does not select Java version properly(jlewandowski)

*5.x tasks:**
*
5.x[Task](CASSANDRA-18494)Upgrade to lucene-core 9.7.0(jbellis)
5.x[Improvement](CASSANDRA-18398)CEP-25: Trie-indexed SSTable format(blambov)
5.x[Improvement](CASSANDRA-18345)Enable streaming SAI components as part of 
repair(pkolaczk)
5.x[Improvement](CASSANDRA-18515)Optimize Initial Concurrency Selection for 
Range Read Algorithm During SAI Queries(mike_tr_adamson)
5.x[Improvement](CASSANDRA-18490)Checksum per-SSTable and per-column SAI 
components after streaming(pkolaczk)
5.x[Improvement](CASSANDRA-18479)Add basic text tokenisation and 
analysis(mike_tr_adamson)
5.x[Improvement](CASSANDRA-18615)CREATE INDEX Modifications for Initial Release 
of SAI(maedhroz)

*5.0 tasks:**
*
5[Task](CASSANDRA-18453)Use WithProperties to ensure that system properties are 
handled(bernardo.botella)
5[Task](CASSANDRA-18519)CEP-15: (C*) Add notion of CommandsForRanges and make 
this durable in C*(dcapwell)
5[Task](CASSANDRA-18506)Deduplicate the MixedModeAvailability upgrade 
jvm-dtests(mck)
5[Task](CASSANDRA-17433)Revise use of pytz in Python >= 3.9(lmtrombone)
5[Task](CASSANDRA-18555)Expose decommission state to nodetool 
info(chovatia.jayd...@gmail.com)
5[Task](CASSANDRA-18285)[CircleCI] Add JDK 11 Java and Python upgrade tests in 
trunk(e.dimitrova)
5[Task](CASSANDRA-18467)Update generate-idea-files for J17(jakubzytka)
5[Task](CASSANDRA-18133)In-tree build scripts(mck)
5[Task](CASSANDRA-18645)Upgrade guava on trunk(e.dimitrova)

*5.0 new features:**
*
5[New Feature](CASSANDRA-18500)Add guardrail for partition size(adelapena)
5[New Feature](CASSANDRA-17194)Migrate thresholds for compaction to 
guardrails(adelapena)
5[New Feature](CASSANDRA-18613)Add support for vectors on UDFs(adelapena)

*5.0 improvements:**
*
5[Improvement](CASSANDRA-15046)Add a "history" command to cqlsh.  Perhaps "show 
history"?(bschoeni)
5[Improvement](CASSANDRA-18544)Make cassandra-stress able to read all 
credentials from a file(smiklosovic)
5[Improvement](CASSANDRA-18561)Extend Accord MessageType with a side effect 
flag(aleksey)
5[Improvement](CASSANDRA-12972)Print header and statistics for cassandra-stress 
output with arbitrary frequency(smiklosovic)
5[Improvement](CASSANDRA-18566)Avoid unnecessary deserialization of terminal 
arguments when executing CQL functions(adelapena)
5[Improvement](CASSANDRA-18563)Convert AccordStateCache cache from 
write-through to write-back(aleksey)
5[Improvement](CASSANDRA-18305)Enhance nodetool compactionstats with existing 
MBean metrics(manish.c.ghildi...@gmail.com)
5[Improvement](CASSANDRA-18504)Added support for type VECTOR<type, 
dimension>(dcapwell)
5[Improvement](CASSANDRA-18639)Add duration to sstablemetadata(timothytu)
5[Improvement](CASSANDRA-18438)Refactor cloud snitches to get rid of duplicate 
code(smiklosovic)
5[Improvement](CASSANDRA-18617)Disable the deprecated keyspace/table thresholds 
and convert them to Guardrails(djatnieks)
5[Improvement](CASSANDRA-18659)Upgrade apache commons cli to 1.5.0(timothytu)
5[Improvement](CASSANDRA-18652)Improve vector value validation errors(adelapena)

*5.0 bugs:**
*
5[Bug](CASSANDRA-18569)Bti shouldn't be available in compatibility mode(bereng)
5[Bug](CASSANDRA-14227)Extend maximum expiration date(bereng)
5[Bug](CASSANDRA-17698)sstabledump errors when dumping data from 
index(maxwellguo)
5[Bug](CASSANDRA-18593)CircleCI: Add separate approval step for oa utests on 
separate workflows(adelapena)
5[Bug](CASSANDRA-18626)compaction_tombstone_warning_threshold and 
compaction_large_partition_warning_threshold cause deprecation 
warnings(adelapena)
5[Bug](CASSANDRA-18660)transient_replication_ring_test.py::TestTransientReplicationRing::test_bootstrap_and_cleanup(brandon.williams)

*4.1 tickets:**
*
4.1.3[Task](CASSANDRA-18603)Move checkstyle files into .build(bereng)
4.1.3[Improvement](CASSANDRA-18588)Slow builds due to checkstyle(bereng)
4.1.3[Bug](CASSANDRA-18338)Test failure: 
org.apache.cassandra.distributed.test.ByteBuddyExamplesTest.countTest(bereng)

*4.0 tickets:**
*
4.0.12[Bug](CASSANDRA-18658)Microbench tests fail on JDK11(marianne-manaog)
4.0.11[Improvement](CASSANDRA-18546)Remove unnecessary shuffling of 
GossipDigests in Gossiper#makeRandomGossipDigest(smiklosovic)
4.0.11[Improvement](CASSANDRA-18513)Limit the read size on the row 
level(jlewandowski)
4.0.11[Bug](CASSANDRA-18540)negotiatedProtocolMustBeAcceptedProtocolTest tests 
fail with "TLSv1.1 failed to negotiate" on JDK17(djatnieks)
4.0.11[Bug](CASSANDRA-18512)nodetool describecluster command is not showing 
correct Down count.(ranju)
4.0.11[Bug](CASSANDRA-18596)Assertion error when describing mv as table(masokol)
4.0.11[Bug](CASSANDRA-18560)Incorrect IP used for gossip across DCs with 
prefer_local=true(brandon.williams)
4.0.10[Improvement](CASSANDRA-18550)Improve nodetool 
enable{audit,fullquery}log, CVE-2023-30601(marcuse)
4.0.10[Improvement](CASSANDRA-18400)Nodetool info should report on the new 
networking cache(qannap)

*3.11 tickets:**
*
3.11.16[Task](CASSANDRA-18664)Move jflex from runtime to build 
dependencies(jlewandowski)
3.11.16[Improvement](CASSANDRA-18511)Add support for JMX in the in-jvm dtest 
framework(drohrer)
3.11.16[Bug](CASSANDRA-17818)Fix error message handling when trying to use 
CLUSTERING ORDER with non-clustering column(qannap)
3.11.16[Bug](CASSANDRA-18543)Waiting for gossip to settle does not wait for 
live endpoints(smiklosovic)
3.11.16[Bug](CASSANDRA-18346)Error Unknown column during deserialization 
missing keyspace and table name(manish.c.ghildi...@gmail.com)
3.11.16[Bug](CASSANDRA-18643)jackson-core vulnerability: 
CVE-2022-45688(brandon.williams)
3.11.16[Bug](CASSANDRA-18647)CASTing a float to decimal adds wrong 
digits(smiklosovic)
3.11.16[Bug](CASSANDRA-14204)Remove unrepaired SSTables from garbage collection 
when only_purge_repaired_tombstones is true to avoid AssertionError in nodetool 
garbagecollect(smiklosovic)

*3.0 tickets:**
*
3.0.x[Bug](CASSANDRA-18609)snappy-java vulnerability: 
CVE-2023-34453(brandon.williams)
3.0.30[New Feature](CASSANDRA-16555)Add support  for AWS Ec2 IMDSv2(smiklosovic)
3.0.30[Improvement](CASSANDRA-17997)Improve git branch handling for CircleCI 
generate.sh(dchenbecker)
3.0.30[Bug](CASSANDRA-18553)Generate.sh -s param to skip autodetection of 
tests(bereng)
3.0.30[Bug](CASSANDRA-17302)Test Failure: 
dtest-offheap.topology_test.TestTopology.test_decommissioned_node_cant_rejoin(brandon.williams)
3.0.30[Bug](CASSANDRA-18575)Backport Cassandra-10508 Remove hard-coded SSL 
cipher suites and protocols(xgerman42)
3.0.30[Bug](CASSANDRA-18630)jackson-databind-2.13.2.2.jar vulnerability: 
CVE-2023-35116(brandon.williams)
3.0.30[Bug](CASSANDRA-18608)snappy-java vulnerability: CVE-2023-34455, 
CVE-2023-34454, CVE-2023-34453(brandon.williams)
3.0.30[Bug](CASSANDRA-12183)compaction_history system table does not capture 
all historical compaction sessions(smiklosovic)
3.0.30[Bug](CASSANDRA-18650)Upgrade owasp to 8.3.1(brandon.williams)
3.0.30[Bug](CASSANDRA-18562)guava vulnerability CVE-2023-2976(brandon.williams)
3.0.30[Bug](CASSANDRA-18649)netty-all vulnerability: 
CVE-2023-34462(brandon.williams)
3.0.29[Bug](CASSANDRA-18552)Debian packaging source should exclude git 
subdirectory(mck)

*... 1.0? Oh My.**
*
1.0.0[Improvement](CASSANDRA-18548)[Analytics] Add .asf.yaml file to the 
Cassandra Analytics repository(frankgh)
2.2.20[Bug](CASSANDRA-18558)remove dh_python use from debian 
packaging(brandon.williams)

*N/A:**
*
NA[Task](CASSANDRA-18545)[Analytics] Abstract mTLS provisioning via a 
SecretsProvider(frankgh)
NA[Task](CASSANDRA-18578)[Analytics] Circle CI Configuration for Cassandra 
Analytics(frankgh)
NA[Task](CASSANDRA-18600)[Analytics] Add NOTICE.txt in Cassandra 
Analytics(frankgh)
NA[Task](CASSANDRA-18629)BLOG - Clarify wording on 3.x EOL post(patrick)
NA[New Feature](CASSANDRA-18605)Cassandra Analytics - Adding support for TTL & 
Timestamps for bulk writes(Jyothsnakonisa)
NA[New Feature](CASSANDRA-18067)On-disk numeric index(mike_tr_adamson)
NA[Improvement](CASSANDRA-18521)Unify CQLTester#waitForIndex and 
SAITester#waitForIndexQueryable(adelapena)
NA[Improvement](CASSANDRA-18599)Cassandra Analytics - Upgrade to use JUnit 
5(drohrer)
NA[Improvement](CASSANDRA-18574)[Analytics] Fix example documentation(frankgh)
NA[Improvement](CASSANDRA-18631)[Cassandra Analytics] Add Release Audit Tool 
(RAT) plugin(frankgh)
NA[Improvement](CASSANDRA-18633)[Analytics] Add Caching of Node Settings to 
Improve Efficiency(semchyshyn)
NA[Bug](CASSANDRA-18669)Concurrency is broken in the block balanced tree for 
queries(mike_tr_adamson)
NA[Bug](CASSANDRA-18662)[Cassandra Analytics] Fix 
cassandra-analytics-core-example(frankgh)

Looks like we have some tickets that could use fixversions and some that could 
use updated ones. I'm sure we'll catch these in the run up to 5.0 but if anyone 
wants to take a quick peek at the tickets you're responsible for that are a 
little off that'd be great.

Phew. Novella complete.

Thanks as always everyone!

~Josh

Reply via email to