anchor.diff:               {ports, {build_ports(Node, Config)}}]}
              || Node <- Servers],
   
  -    NEIs = [{[{services, {build_services(Node, Config)}}
  -              | maybe_build_ext_hostname(Node)]}
  -            || Node <- Servers],
  +    AllServers = Servers ++ ordsets:subtract(ns_cluster_membership:active_nodes(Config), Servers),
  +    {NEIs, RevServices} = build_nodes_ext(AllServers, Config, 0, []),
   
       {_, UUID} = lists:keyfind(uuid, 1, BucketConfig),
   
  
positive.code:     [{proxy, ns_config:search_node_prop(Node, Config, moxi, port)},
       {direct, ns_config:search_node_prop(Node, Config, memcached, port)}].
  
  build_services(Node, Config) ->
      CapiPorts = lists:append([case ns_config:search_node(Node, Config, ConfigKey) of
                                    {value, Value} when Value =/= undefined -> [{JKey, Value}];
                                    _ -> []
                                end || {ConfigKey, JKey} <- [{ssl_capi_port, capiSSL},
                                                             {ssl_rest_port, mgmtSSL}]]),
      PortsD = case ns_config:search_node_prop(Node, Config, memcached, ssl_port) of
                   undefined ->
                       CapiPorts;
                   SslPort ->
                       [{kvSSL, SslPort} | CapiPorts]
               end,
      PortsQ = case os:getenv("ENABLE_QUERY") =/= false of
                   true ->
                       case ns_config:search(Config, {node, Node, query_port}) of
                           {value, QPort} ->
                               [{n1ql, QPort} | PortsD];
                           false ->
                               PortsD
                       end;
                   _ ->
                       PortsD
               end,
      {value, CapiPort} = ns_config:search_node(Node, Config, capi_port),
      [{mgmt, misc:node_rest_port(Config, Node)},
       {capi, CapiPort},
       {moxi, ns_config:search_node_prop(Node, Config, moxi, port)},
       {kv, ns_config:search_node_prop(Node, Config, memcached, port)}
       | PortsQ].
  
  maybe_build_ext_hostname(Node) ->
      case misc:node_name_host(Node) of
          {_, "127.0.0.1"} -> [];
          {_, H} -> [{hostname, list_to_binary(H)}]
      end.
  
  do_compute_bucket_info(Bucket, Config) ->
      case ns_bucket:get_bucket_with_vclock(Bucket, Config) of
  
negative.code:                          | Caps]
                   end,
  
      J = {[{rev, vclock:count_changes(BucketVC) + RevServices},
            {name, BucketBin},
            {uri, <<"/pools/default/buckets/", BucketBin/binary, "?bucket_uuid=", UUID/binary>>},
            {streamingUri, <<"/pools/default/bucketsStreaming/", BucketBin/binary, "?bucket_uuid=", UUID/binary>>},
  