@@ -355,9 +355,8 @@ check_discovered_nodes_list_validity(DiscoveredNodes, BadNodeType)
355355% % @private
356356
357357query_node_props (Nodes ) when  Nodes  =/=  [] -> 
358-  {Prefix , _Suffix } =  rabbit_nodes_common :parts (node ()),
359-  PeerName  =  lists :flatten (
360-  io_lib :format (" ~s -peerdisc-~s "  , [Prefix , os :getpid ()])),
358+  {Prefix , Suffix } =  rabbit_nodes_common :parts (node ()),
359+  PeerName  =  peer :random_name (Prefix ),
361360 % % We go through a temporary hidden node to query all other discovered
362361 % % peers properties, instead of querying them directly.
363362 % %
@@ -372,15 +371,22 @@ query_node_props(Nodes) when Nodes =/= [] ->
372371 % %
373372 % % By using a temporary intermediate hidden node, we ask Erlang not to
374373 % % connect everyone automatically.
374+  Context  =  rabbit_prelaunch :get_context (),
375375 VMArgs0  =  [" -hidden"  ],
376-  VMArgs1  =  case  rabbit_prelaunch : get_context ()  of 
376+  VMArgs1  =  case  Context  of 
377377 #{erlang_cookie  :=  ErlangCookie ,
378378 var_origins  :=  #{erlang_cookie  :=  environment }} ->
379379 [" -setcookie"  , atom_to_list (ErlangCookie ) | VMArgs0 ];
380380 _  ->
381381 VMArgs0 
382382 end ,
383-  case  peer :start (#{name  =>  PeerName , args  =>  VMArgs1 }) of 
383+  PeerStartArg  =  case  Context  of 
384+  #{nodename_type  :=  longnames } ->
385+  #{name  =>  PeerName , host  =>  Suffix , longnames  =>  true , args  =>  VMArgs1 };
386+  _  ->
387+  #{name  =>  PeerName , args  =>  VMArgs1 }
388+  end ,
389+  case  peer :start (PeerStartArg ) of 
384390 {ok , Pid , Peer } ->
385391 ? LOG_DEBUG (
386392 " Peer discovery: use temporary hidden node '~ts ' to query " 
0 commit comments