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

fix(get_nodetool_status): convert ipv6 to full format #7047

Merged
merged 1 commit into from
Jan 2, 2024

Conversation

fruch
Copy link
Contributor

@fruch fruch commented Jan 1, 2024

recent change to some java libraries used by nodetool is causing ipv6 to be presented as rfc5952 section-4 without leading zeros, and SCT was comapring those as string with other places we get addresses from.

now we convert it to the full form, after getting
it from nodetool, and still keep it as string

Ref: https://www.rfc-editor.org/rfc/rfc5952#section-4

Testing

PR pre-checks (self review)

  • I added the relevant backport labels
  • I didn't leave commented-out/debugging code

Reminders

  • Add New configuration option and document them (in sdcm/sct_config.py)
  • Add unit tests to cover my changes (under unit-test/ folder)
  • Update the Readme/doc folder relevent to this change (if needed)

@fruch fruch added backport/5.4 Need backport to 5.4 backport/2024.1 Need backport to 2024.1 labels Jan 1, 2024
juliayakovlev
juliayakovlev previously approved these changes Jan 2, 2024
@fruch
Copy link
Contributor Author

fruch commented Jan 2, 2024

fixing unit test test_can_get_nodetool_status_ipv6

recent change to some java libraries used by nodetool
is causing ipv6 to be presented as rfc5952 section-4
without leading zeros, and SCT was comapring those
as string with other places we get addresses from.

now we convert it to the full form, after getting
it from nodetool, and still keep it as string

Ref: https://www.rfc-editor.org/rfc/rfc5952#section-4
Copy link
Contributor

@vponomaryov vponomaryov left a comment

Choose a reason for hiding this comment

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

LGTM

@fruch fruch merged commit f489342 into scylladb:master Jan 2, 2024
5 checks passed
@fruch fruch added backport/2024.1-done Commit backported to 2024.1 backport/5.4-done Commit backported to 5.4 labels Jan 2, 2024
juliayakovlev added a commit to juliayakovlev/scylla-cluster-tests that referenced this pull request May 21, 2024
The problem was found during IPv6 test.
IPv6 was converted to full format when parse nodetool status result.
This change was represented by  scylladb#7047

But IPv6 address was not converted when collected info about nodes network interfaces (AWS).

During checking nodes status, we compare between 'nodetool status' output and node address
that kept in the network_interfaces object. It fails because the IPv6 address miss leading zeros.
As result the test fails with errors 'Failed to find a node in cluster by IP'

Fixes: scylladb#7447
juliayakovlev added a commit to juliayakovlev/scylla-cluster-tests that referenced this pull request May 21, 2024
The problem was found during IPv6 test.
IPv6 was converted to full format when parse nodetool status result.
This change was represented by  scylladb#7047

But IPv6 address was not converted when collected info about nodes network interfaces (AWS).

During checking nodes status, we compare between 'nodetool status' output and node address
that kept in the network_interfaces object. It fails because the IPv6 address miss leading zeros.
As result the test fails with errors 'Failed to find a node in cluster by IP'

Fixes: scylladb#7447
juliayakovlev added a commit to juliayakovlev/scylla-cluster-tests that referenced this pull request May 21, 2024
The problem was found during IPv6 test.
IPv6 was converted to full format when parse nodetool status result.
This change was represented by  scylladb#7047

But IPv6 address was not converted when collected info about nodes network interfaces (AWS).

During checking nodes status, we compare between 'nodetool status' output and node address
that kept in the network_interfaces object. It fails because the IPv6 address miss leading zeros.
As result the test fails with errors 'Failed to find a node in cluster by IP'

Also fix the same problem for peer and gossip output.

Fixes: scylladb#7447
fruch pushed a commit that referenced this pull request May 21, 2024
The problem was found during IPv6 test.
IPv6 was converted to full format when parse nodetool status result.
This change was represented by  #7047

But IPv6 address was not converted when collected info about nodes network interfaces (AWS).

During checking nodes status, we compare between 'nodetool status' output and node address
that kept in the network_interfaces object. It fails because the IPv6 address miss leading zeros.
As result the test fails with errors 'Failed to find a node in cluster by IP'

Also fix the same problem for peer and gossip output.

Fixes: #7447
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport/5.4-done Commit backported to 5.4 backport/5.4 Need backport to 5.4 backport/2024.1-done Commit backported to 2024.1 backport/2024.1 Need backport to 2024.1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants