Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HCD-63: Upgrade Netty to 4.1.117 and BoringSSL to 2.0.69 #1544

Merged
merged 1 commit into from
Feb 13, 2025
Merged

Conversation

szymon-miezal
Copy link

@szymon-miezal szymon-miezal commented Feb 4, 2025

The primary motivation for this change is a bug that manifests in loading
the cipher list for inter-node connections, which is slightly wider than the
configured list. This bug appears to be a consequence of how OpenSSL handles
cipher loading. Changing it doesn't seem feasible.

Netty introduced changes to mitigate this misbehavior:

To take advantage of these fixes, we need to upgrade Netty to at least
version 4.1.108. Upgrading Netty also necessitates bumping BoringSSL.

I have found some old CC tests in fallout that I decided to reuse to ensure the performance stays unchanged:

I have used the fallout perf tool to compare the results with main and they seem pretty comparable to me. Example chart:
image

I am unsure whether there are other tests that exercise CC which could be reused.

Copy link

github-actions bot commented Feb 4, 2025

Checklist before you submit for review

  • Make sure there is a PR in the CNDB project updating the Converged Cassandra version
  • Use NoSpamLogger for log lines that may appear frequently in the logs
  • Verify test results on Butler
  • Test coverage for new/modified code is > 80%
  • Proper code formatting
  • Proper title for each commit staring with the project-issue number, like CNDB-1234
  • Each commit has a meaningful description
  • Each commit is not very long and contains related changes
  • Renames, moves and reformatting are in distinct commits

@szymon-miezal szymon-miezal force-pushed the HCD-63 branch 2 times, most recently from acbda4f to b683351 Compare February 7, 2025 13:57
@szymon-miezal szymon-miezal changed the title [WIP] HCD-63: Experimentally upgrade netty and boringssl [WIP] HCD-63: Upgrade Netty to 4.1.108 and BoringSSL to 2.0.66 Feb 7, 2025
@szymon-miezal szymon-miezal changed the title [WIP] HCD-63: Upgrade Netty to 4.1.108 and BoringSSL to 2.0.66 HCD-63: Upgrade Netty to 4.1.108 and BoringSSL to 2.0.66 Feb 7, 2025
@szymon-miezal
Copy link
Author

Copy link

@eolivelli eolivelli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm

@bereng
Copy link

bereng commented Feb 10, 2025

Approved. Perf tests reports show nothing out of the ordinary. The test failures Butler complains about are from previous SHA runs. The last remaining one fails in the same manner as al older run.

I would be good to complete the checklist imo.

@szymon-miezal
Copy link
Author

szymon-miezal commented Feb 10, 2025

After giving it a bit more thought I think it doesn't make much sense to upgrade to non-latest. I am going to bump it to 4.1.117 and retest. It will also allow us to tackle https://github.com/riptano/cndb/pull/12902 at the same time.

@szymon-miezal szymon-miezal changed the title HCD-63: Upgrade Netty to 4.1.108 and BoringSSL to 2.0.66 HCD-63: Upgrade Netty to 4.1.117 and BoringSSL to 2.0.69 Feb 10, 2025
@szymon-miezal
Copy link
Author

Update: I am rerunning fallout tests after bumping to 4.1.117.

@bereng
Copy link

bereng commented Feb 12, 2025

Still LGTM +1

The primary motivation for this change is a bug that manifests in loading
the cipher list for inter-node connections, which is slightly wider than the
configured list. This bug appears to be a consequence of how OpenSSL handles
cipher loading. Changing it doesn't seem feasible.

Netty introduced changes to mitigate this misbehavior:
- netty/netty#13810
- netty/netty#13840

To take advantage of these fixes, we need to upgrade Netty to at least
version 4.1.108. Upgrading Netty also necessitates bumping BoringSSL.
@szymon-miezal
Copy link
Author

I force-pushed the branch to update the commit-description, and then I realized I didn't have to do it as in CC squash and merge is allowed and the message could be modified via GH.

Copy link

@cassci-bot
Copy link

❌ Build ds-cassandra-pr-gate/PR-1544 rejected by Butler


1 new test failure(s) in 7 builds
See build details here


Found 1 new test failures

Test Explanation Branch history Upstream history
...d.t.s.VectorDistributedTest.rangeRestrictedTest regression 🔴🔵🔵🔵🔵🔵🔵 🔵🔵🔵🔵🔵🔵🔵

Found 16 known test failures

@szymon-miezal szymon-miezal merged commit 9817857 into main Feb 13, 2025
462 of 474 checks passed
@szymon-miezal szymon-miezal deleted the HCD-63 branch February 13, 2025 09:12
@ekaterinadimitrova2
Copy link

I don't see anything mentioned about checking the release notes, the bump is not really small and we should be very careful with updates of dependencies like netty in non-major update.
We were actually looking to update netty on main-5.0 - https://github.com/riptano/cndb/issues/11074
You may also want to look at https://issues.apache.org/jira/browse/CASSANDRA-17992 where we were upgrading in OSS.
I do appreciate the fallout tests!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants