-
Notifications
You must be signed in to change notification settings - Fork 66
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
scylla-node: prepare for the post-jmx world #565
Conversation
We need a full dtest run with this PR, I don't know how to do that. |
This PR is a 6.0 release blocker, so please give it attention. |
running at https://jenkins.scylladb.com/job/scylla-master/job/byo/job/dtest-byo/211/ |
Looks like I have to fix ccm's own tests too. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@denesb is the next step to update the building system of scylla and then drop tools/jmx
submodule?
bb9b38d
to
940a9c2
Compare
Yes, see scylladb/scylladb#17969. |
New in v2:
|
This is just the gating (and seems like there is some work still needed, not sure if in this PR) We should also do a run with enterprise And a full run, to flush issues with non gating tests. |
but i think it would be great to continue using the cached binary as long as cache works.
ah, right. rescheduling at https://jenkins.scylladb.com/job/scylla-master/job/byo/job/dtest-byo/212/ |
Not sure what do you mean, what cache? |
I just discovered two new commands I didn't know before:
|
IIUC, the github workflows try to reuse the cached binary. see scylla-ccm/.github/workflows/nix.yml Lines 26 to 31 in 903a2a6
scylla-ccm/.github/workflows/integration-tests.yml Lines 54 to 72 in 903a2a6
integration-tests.yml once i get positive feedbacks.
|
Analysis of failed gating dtests. I will soon prepare Version we upgrade to doesn't have feature complete nodetool. Need to change the test to use a more recent version.
Flaky test (very possibly related to native nodetool somehow): scylladb/scylladb#17947 FullDtest___full_split001___test_compaction_delete_tombstone_gc_immediate_TimeWindowCompactionStrategy_/)
Missing
Version we upgrade to doesn't have feature complete nodetool. Need to change the test to use a more recent version.
Flaky test (very possibly related to native nodetool somehow): scylladb/scylladb#17947 FullDtest___full_split002___test_compaction_delete_tombstone_gc_immediate_TimeWindowCompactionStrategy_/)
Need to implement
Need to implement
|
23f9f0c
to
2bb097c
Compare
New in v3 - fix the tests:
|
I will have to roll back the removal of JMX, because it breaks upgrade tests. :( |
2bb097c
to
d13ef84
Compare
New in v4:
|
Kicked off a new BYO: https://jenkins.scylladb.com/job/scylla-master/job/byo/job/dtest-byo/213/ |
d13ef84
to
6fab73f
Compare
|
New BYO, including the two above PRs: https://jenkins.scylladb.com/job/scylla-master/job/byo/job/byo_build_tests_dtest/2166/ |
4b8a9c2
to
3aa8833
Compare
Where's the compatibility?! |
yeah, they should have shelp a few sleeps in the new code 🤣 |
3aa8833
to
811fa0c
Compare
I may have to go back to this, I'm hitting issues in upgrade tests and I ended up restoring the pre-PR code completely, just invoked in an I may have to discard this PR completely. At least it served as a good integration test for finding the last wrinkles to iron out in the native nodetool. I will report back when I have results. |
Separate parameterizing nodetool and actually invoking it. The parameterizing is about to diverege for node.py and scylla_node.py, so this separation allows us to reuse just the invoke logic, while letting the two go on its separate ways when it comes to parameterizing.
…om stderr These messages are printed by seastar and ASAN respectively and they trigger tests which look for error messages in stderr. Filter them out to address this problem at the root, instead of dealing with it in each individual test.
811fa0c
to
af5e7bd
Compare
New in v5:
With this, CCM should be prepared for the disappearance of the java tools. Lets see how dtests will take this (I tested with a small sample, including an upgrade test, which is tricky). |
BYO (with java packages removed): https://jenkins.scylladb.com/job/scylla-master/job/byo/job/byo_build_tests_dtest/2168/ |
That's quite ambitious There quite a lot of tests using Cassandra-stress, you'll need to supply an alternative or in CCM or in dtest |
Yes, it was more for curiosity and also because dropping the java packages is one of our goals for 6.0 (but we of course want to keep c-s). I already kicked off another BYO run, which runs with the java tools still in (it is in the queue). |
I will hack scylladb/scylladb#17969 to install only |
I thought @syuu1228 was doing some work on repacking c-s on itself own, maybe you want to sync with him |
Yes, I will. For now I just want to see what changes I need here in ccm, to keep cassandra-stress working, but not care about the other java tools. |
Soon the jmx package will be dropped from the unified package, and the scylla.git repo. Prepare for this: * Add `use_jmx` property, based on probing the reloc package for the presence of the `jmx` directory, or the `tools/jmx` directory in the scylla repo. * Use this new property to fence off jmx-related code. nodetool() now routes to the native nodetool directly, when use_jmx == False.
af5e7bd
to
1603594
Compare
v6: reduce the scope of the PR from preparing for the post-java world, to preparing to the post-jmx world. |
BYO with scylla changes to drop JMX: https://jenkins.scylladb.com/job/scylla-master/job/byo/job/byo_build_tests_dtest/2171 |
Now a BYO with default branches and this branch from ccm: https://jenkins.scylladb.com/job/scylla-master/job/byo/job/byo_build_tests_dtest/2172/ If this passes, I think we can merge this PR. |
These two failed in the master run. Both have a history of failing in master dtest runs. So I think this PR is good to go in. |
@fruch Can we merge this? |
I'll give it one final run, on both OSS and Enterprise
if it would pass, I'll merge it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I'll merge, once gating is working
Soon the jmx package will be dropped from the unified package, and the scylla.git repo. Prepare for this:
use_jmx
property, based on probing the reloc package for the presence of thejmx
directory, or thetools/jmx
directory in the scylla repo.Fixes: https://github.com/scylladb/scylla-dtest/issues/4093