anchor.diff:                    bucket_auth_fun(UserPassword),
                     BucketsAll)
           end,
  -    BucketsInfo = [{struct, [{uri, list_to_binary("/pools/" ++ Id ++
  -                                                  "/buckets/" ++ Name)},
  -                             {name, list_to_binary(Name)}]}
  -                   || Name <- proplists:get_keys(Buckets)],
  -	BucketsStreamingInfo = [{struct, [{streamingUri, list_to_binary("/pools/" ++ Id ++
  -                                                  "/bucketsStreaming/" ++ Name)},
  -                             {name, list_to_binary(Name)}]}
  -                   || Name <- proplists:get_keys(Buckets)],
  +	BucketsInfo = [{struct, [{uri, list_to_binary("/pools" ++ Id ++ "/buckets")}]}],
  +	BucketsStreamingInfo = [{struct, [{uri, list_to_binary("/pools" ++ Id ++ "/bucketsStreaming")}]}],
  +	%
  +	% moving these to their own URI since there may be a huge number of buckets
  +	%
  +    %BucketsInfo = [{struct, [{uri, list_to_binary("/pools/" ++ Id ++
  +    %                                              "/buckets/" ++ Name)},
  +    %                         {name, list_to_binary(Name)}]}
  +    %               || Name <- proplists:get_keys(Buckets)],
  +	%BucketsStreamingInfo = [{struct, [{streamingUri, list_to_binary("/pools/" ++ Id ++
  +    %                                              "/bucketsStreaming/" ++ Name)},
  +    %                         {name, list_to_binary(Name)}]}
  +    %               || Name <- proplists:get_keys(Buckets)],
       {struct, [{name, list_to_binary(Id)},
                 {nodes, Nodes},
                 {buckets, BucketsInfo},
  
positive.code:                   KV2 = case IncludeOtp of
                                 true ->
                                  %% TODO: convert to camelcase
                                     KV1 ++ [{otp_node,
                                              list_to_binary(
                                                atom_to_list(WantENode))},
                                             {otp_cookie, OtpCookie}];
                                 false -> KV1
                          end,
                    {struct, KV2}
  
negative.code: handle_pool_info(Id, Req) ->
      UserPassword = extract_basic_auth(Req),
      reply_json(Req, build_pool_info(Id, UserPassword)).
  
  handle_bucket_list(Id, Req) ->
  	UserPassword = extract_basic_auth(Req),
  	BucketsInfo = [{struct, [{uri, list_to_binary("/pools/" ++ Id ++
                                                    "/buckets/" ++ Name)},
                               {name, list_to_binary(Name)}]}
                     || Name <- proplists:get_keys(Buckets)],
  	reply_json(Req, build_pool_info(Id, UserPassword)).
  
  handle_pool_info_streaming(Id, Req) ->
      %% TODO: this shouldn't be timer driven, but rather should register a callback based on some state change in the Erlang OS
  