|
71 | 71 | -export([init_cluster/0]).
|
72 | 72 | -export([do_join/1]).
|
73 | 73 | %% To add the current node to an existing cluster
|
74 |
| --export([check_join_cluster/1, |
75 |
| - join_cluster/1, |
76 |
| - leave_cluster/1]). |
| 74 | +-export([leave_cluster/1]). |
77 | 75 | -export([is_clustered/0]).
|
78 | 76 | -export([check_cluster_consistency/0,
|
79 | 77 | check_cluster_consistency/2,
|
@@ -435,73 +433,6 @@ init_cluster() ->
|
435 | 433 | _ = application:ensure_all_started(khepri_mnesia_migration),
|
436 | 434 | mnesia_to_khepri:sync_cluster_membership(?STORE_ID).
|
437 | 435 |
|
438 |
| -%%%%%%%% |
439 |
| -%% TODO run_peer_discovery!! |
440 |
| -%%%%%%% |
441 |
| - |
442 |
| -check_join_cluster(DiscoveryNode) -> |
443 |
| - {ClusterNodes, _} = discover_cluster([DiscoveryNode]), |
444 |
| - case me_in_nodes(ClusterNodes) of |
445 |
| - false -> |
446 |
| - case check_cluster_consistency(DiscoveryNode, false) of |
447 |
| - {ok, _S} -> |
448 |
| - ok; |
449 |
| - Error -> |
450 |
| - Error |
451 |
| - end; |
452 |
| - true -> |
453 |
| - %% DiscoveryNode thinks that we are part of a cluster, but |
454 |
| - %% do we think so ourselves? |
455 |
| - case are_we_clustered_with(DiscoveryNode) of |
456 |
| - true -> |
457 |
| - rabbit_log:info("Asked to join a cluster but already a member of it: ~tp", [ClusterNodes]), |
458 |
| - {ok, already_member}; |
459 |
| - false -> |
460 |
| - Msg = format_inconsistent_cluster_message(DiscoveryNode, node()), |
461 |
| - rabbit_log:error(Msg), |
462 |
| - {error, {inconsistent_cluster, Msg}} |
463 |
| - end |
464 |
| - end. |
465 |
| - |
466 |
| -join_cluster(DiscoveryNode) -> |
467 |
| - {ClusterNodes, _} = discover_cluster([DiscoveryNode]), |
468 |
| - case me_in_nodes(ClusterNodes) of |
469 |
| - false -> |
470 |
| - case check_cluster_consistency(DiscoveryNode, false) of |
471 |
| - {ok, _S} -> |
472 |
| - ThisNode = node(), |
473 |
| - retry_khepri_op(fun() -> add_member(ThisNode, [DiscoveryNode]) end, 60); |
474 |
| - Error -> |
475 |
| - Error |
476 |
| - end; |
477 |
| - true -> |
478 |
| - %% DiscoveryNode thinks that we are part of a cluster, but |
479 |
| - %% do we think so ourselves? |
480 |
| - case are_we_clustered_with(DiscoveryNode) of |
481 |
| - true -> |
482 |
| - rabbit_log:info("Asked to join a cluster but already a member of it: ~tp", [ClusterNodes]), |
483 |
| - {ok, already_member}; |
484 |
| - false -> |
485 |
| - Msg = format_inconsistent_cluster_message(DiscoveryNode, node()), |
486 |
| - rabbit_log:error(Msg), |
487 |
| - {error, {inconsistent_cluster, Msg}} |
488 |
| - end |
489 |
| - end. |
490 |
| - |
491 |
| -discover_cluster(Nodes) -> |
492 |
| - case lists:foldl(fun (_, {ok, Res}) -> {ok, Res}; |
493 |
| - (Node, _) -> discover_cluster0(Node) |
494 |
| - end, {error, no_nodes_provided}, Nodes) of |
495 |
| - {ok, Res} -> Res; |
496 |
| - {error, E} -> throw({error, E}); |
497 |
| - {badrpc, Reason} -> throw({badrpc_multi, Reason, Nodes}) |
498 |
| - end. |
499 |
| - |
500 |
| -discover_cluster0(Node) when Node == node() -> |
501 |
| - {error, cannot_cluster_node_with_itself}; |
502 |
| -discover_cluster0(Node) -> |
503 |
| - rpc:call(Node, ?MODULE, cluster_status_from_khepri, []). |
504 |
| - |
505 | 436 | leave_cluster(Node) ->
|
506 | 437 | retry_khepri_op(fun() -> remove_member(Node) end, 60).
|
507 | 438 |
|
@@ -602,13 +533,6 @@ format_inconsistent_cluster_message(Thinker, Dissident) ->
|
602 | 533 |
|
603 | 534 | me_in_nodes(Nodes) -> lists:member(node(), Nodes).
|
604 | 535 |
|
605 |
| -are_we_clustered_with(Node) -> |
606 |
| - %% Khepri is stopped at this point, let's ask rabbit_node_monitor |
607 |
| - %% We're going to fail to join anyway, but for the user is not the same |
608 |
| - %% to return 'already a member' than 'inconsistent cluster'. |
609 |
| - {AllNodes, _DiscNodes, _RunningNodes} = rabbit_node_monitor:read_cluster_status(), |
610 |
| - lists:member(Node, AllNodes). |
611 |
| - |
612 | 536 | node_info() ->
|
613 | 537 | {rabbit_misc:otp_release(), rabbit_misc:version(), cluster_status_from_khepri()}.
|
614 | 538 |
|
|
0 commit comments