Hey Jordan, 

Thanks for update! Do you have a sense of where we are in terms of stability 
and where do we need to be in order to cut an alpha? I also remember a 
discussion on measuring release quality[1]. Not sure where we landed on it. Any 
idea on how are we doing on that front?

Thanks, 

Dinesh

[1] 
https://lists.apache.org/thread.html/3a444be1a3097c0c55d15268ccb0fe7aab83ef276b87bf55bf4f3bc2@%3Cdev.cassandra.apache.org%3E

> On Apr 10, 2019, at 8:25 AM, Jordan West <jorda...@gmail.com> wrote:
> 
> In September, the community chose to freeze trunk to begin working on
> Quality and Stability with the goal of releasing the most stable Cassandra
> major in the project’s history. While lots of work has been ongoing and
> folks could follow along with progress on JIRA I thought it would be useful
> to cover what has been accomplished so far since I’ve spent a good amount
> of time working with others on various testing projects.
> 
> During this time we have made significant progress on improving the Quality
> and Stability of Cassandra — not only Cassandra 4.0 but also the Cassandra
> 3.x series and future Cassandra releases. Additionally, testing has
> provided the opportunity for new community members and committers to
> contribute. While not comprehensive the community has found at least 25
> bugs that can be classified as either Data Loss, Corruption, Incorrect
> Response, Loss of Stability, Loss of Availability, Concurrency Issues,
> Performance Issues, and Lack of Safety. These bugs have been found by a
> variety of methodologies including commonly used ones like unit testing and
> canary deployments. However, the majority of the bugs have been found or
> confirmed using new methodologies like the ones described in a some recent
> blog posts [1] [2].
> 
> Additionally, the state of the test suites and test tooling have improved.
> CASSANDRA-14806 [3] brought some much welcomed improvements to the circleci
> workflow and made it easier for people to run (d)tests on supported
> platforms (jdk8/11) and the work to get upgrade tests running found several
> bugs including CASSADNRA-14958 [4].
> 
> While we have made significant progress there is still more to do before we
> can be truly confident in an Cassandra 4.0 release. Some ongoing and
> outstanding work includes:
> 
> * Improving the state of the cqlsh tests [5]
> * There is ongoing discussion on the new MessagingService [6] which will
> require significant review and testing
> * Additional upgrade testing for Cassandra 4.0 including additional support
> for upgrade testing using in-jvm dtests [7]
> * Work to increase coverage of important areas and new features in
> Cassandra 4.0 [8]
> 
> While the list above may seem short, the last item contains a long list of
> important areas the community has previously discussed adding coverage to.
> If you are looking for areas to contribute this is a great starting point.
> If there is a name down on an area you are interested in I would encourage
> you to reach out to them to discuss how you can help further increase the
> community’s confidence in the Quality and Stability of Cassandra.
> 
> Below is an in-complete list of many of the severe bugs found during this
> part of the release cycle. Thanks again to all of the community members who
> contributed to finding these bugs and improving Cassandra for everyone.
> 
> CASSANDRA-15004: Anti-compaction briefly removes sstables from the read path
> CASSANDRA-14958: Counters fail to increment on 2.X to 3.X mixed version
> clusters
> CASSANDRA-14936: Anticompaction should throw exceptions on errors, not just
> log them
> CASSANDRA-14672: After deleting data in 3.11.3, reads fail: "open marker
> and close marker have different deletion times"
> CASSANDRA-14912: LegacyLayout errors on collection tombstones from dropped
> columns
> CASSANDRA-14843: Drop/add column name with different Kind can result in
> corruption
> CASSANDRA-14568: CorruptSSTableExceptions in 3.0.17.1 (CASSANDRA-14568 v2)
> Static collection deletions are corrupted in 3.0 <-> 2.{1,2} messages
> CASSANDRA-14749: Collection Deletions for Dropped Columns in 2.1/3.0
> mixed-mode can delete rows
> CASSANDRA-14568: Static collection deletions are corrupted in 3.0 ->
> 2.{1,2} messages
> CASSANDRA-14861: Inaccurate sstable min/max metadata can cause data loss
> CASSANDRA-14823: Legacy sstables with range tombstones spanning multiple
> index blocks create invalid bound sequences on 3.0+ (#1193)
> CASSANDRA-14873: Missing rows when reading 2.1 SSTables in 3.0
> CASSANDRA-14838: Dropped columns can cause reverse sstable iteration to
> return prematurely
> CASSANDRA-14803: Rows that cross index block boundaries can cause
> incomplete reverse reads in some cases.
> CASSANDRA-14766: DESC order reads can fail to return the last Unfiltered in
> the partition (#1170)
> CASSANDRA-14991: SSL Cert Hot Reloading should defensively check for sanity
> of the new keystore/truststore before loading it
> CASSANDRA-14794: Avoid calling iter.next() in a loop when notifying
> indexers about range tombstones
> CASSANDRA-14780: Avoid creating empty compaction tasks after truncate
> CASSANDRA-14657: Handle failures in upgradesstables/cleanup/relocatee
> CASSANDRA-14638: Column result order can change in 'SELECT *' results when
> upgrading from 2.1 to 3.0 causing response corruption for queries using
> prepared statements when static columns are used
> CASSANDRA-14919: Regression in paging queries in mixed version clusters
> CASSANDRA-14554: LifecycleTransaction encounters
> ConcurrentModificationException when used in multi-threaded context
> CASSANDRA-14935: PendingAntiCompaction should be more judicious in the
> compactions it cancels
> CASSANDRA-14894: RangeTombstoneList doesn't properly clean up mergeable or
> superseded rts in some cases
> CASSANDRA-14824: Expand range tombstone validation checks to multiple
> interim request stages
> CASSANDRA-14763: Fail incremental repair prepare phase if it encounters
> sstables from un-finalized sessions
> CASSANDRA-14920: Some comparisons used for verifying paging queries in
> dtests only test the column names and not values
> 
> Jordan
> 
> [1]
> http://cassandra.apache.org/blog/2018/08/21/testing_apache_cassandra.html
> [2]
> http://cassandra.apache.org/blog/2018/10/17/finding_bugs_with_property_based_testing.html
> [3] https://issues.apache.org/jira/browse/CASSANDRA-14806
> [4] https://issues.apache.org/jira/browse/CASSANDRA-14958
> [5] https://issues.apache.org/jira/browse/CASSANDRA-14951
> [6] https://issues.apache.org/jira/browse/CASSANDRA-15066
> [7] https://issues.apache.org/jira/browse/CASSANDRA-15078
> [8]
> https://cwiki.apache.org/confluence/display/CASSANDRA/4.0+Quality%3A+Components+and+Test+Plans


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
For additional commands, e-mail: dev-h...@cassandra.apache.org

Reply via email to