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(bridge_v2_api): avoid calling nodes that do not support minimum bpapi #12472

Merged

Conversation

thalesmg
Copy link
Contributor

@thalesmg thalesmg commented Feb 2, 2024

Fixes https://emqx.atlassian.net/browse/EMQX-11834

Release version: v/e5.6

Summary

PR Checklist

Please convert it to a draft if any of the following conditions are not met. Reviewers may skip over until all the items are checked:

  • Added tests for the changes
  • Added property-based tests for code which performs user input validation
  • Changed lines covered in coverage report
  • Change log has been added to changes/(ce|ee)/(feat|perf|fix|breaking)-<PR-id>.en.md files
  • For internal contributor: there is a jira ticket to track this change
  • Created PR to emqx-docs if documentation update is required, or link to a follow-up jira ticket
  • Schema changes are backward compatible

Checklist for CI (.github/workflows) changes

  • If changed package build workflow, pass this action (manual trigger)
  • Change log has been added to changes/ dir for user-facing artifacts update

@thalesmg thalesmg force-pushed the fix-bridgev2-api-multicall-m-20240202 branch from f96bb6d to 1cf08d7 Compare February 2, 2024 20:08
@thalesmg thalesmg force-pushed the fix-bridgev2-api-multicall-m-20240202 branch from 1cf08d7 to 76d242d Compare February 2, 2024 20:36
@@ -1477,7 +1476,7 @@ t_cluster_later_join_metrics(Config) ->
?assertMatch(
{ok, 200, #{
<<"metrics">> := #{<<"success">> := _},
<<"node_metrics">> := [#{<<"metrics">> := #{}}, #{<<"metrics">> := #{}} | _]
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Returns a single node result now, because BPAPI might not be ready / not have announced the new node's APIs yet, and thus is rejected when choosing the nodes.

@thalesmg thalesmg marked this pull request as ready for review February 2, 2024 21:06
@thalesmg thalesmg requested a review from a team as a code owner February 2, 2024 21:06
@thalesmg
Copy link
Contributor Author

thalesmg commented Feb 2, 2024

I think these read operations might not be too affected by sieving the node list: when the rolling upgrade finishes, the whole information will be returned.

[cluster, actions],
[cluster, sources]
];
t_older_version_nodes_in_cluster(Config) ->
Copy link
Member

Choose a reason for hiding this comment

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

Is this testcase going to be relevant in the future releases? If not, perhaps a manual one-off test is enough?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think this still might be relevant for any rolling upgrade scenario.

@thalesmg thalesmg merged commit e5b14a3 into emqx:master Feb 5, 2024
165 checks passed
@thalesmg thalesmg deleted the fix-bridgev2-api-multicall-m-20240202 branch February 5, 2024 13:28
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.

None yet

2 participants