Just a thought but we've been working on disabling certain API
operations at the proxy level. We have a subsystem that uses riak that
should NEVER see a DELETE call ever and we're planning on guaranteeing
that by blocking it at the proxy level.

Combined with the actual nodes being inaccessible in front of the
proxy it seems like this would work. Fair warning I haven't yet DONE
this. It's just on my todo.

On Wed, Mar 6, 2013 at 12:27 PM, John Daily <[email protected]> wrote:
> I've been asking our engineers for help with this, and here's what I've 
> found...
>
> In theory, you could use the standard OTP mechanism[1] via the console to 
> stop and restart the riak_kv application to stop a (non-MapReduce) query, but 
> that has not worked across all versions of Riak. The rolling cluster restart 
> seems to be your best bet.
>
>
> Regarding the HTTP API...
>
> I do not recommend doing this without careful testing, because it doesn't 
> appear to be something we or our customers have done, but you should be able 
> to comment out the http listener configuration item under riak_core in 
> app.config on each node and then restart. In my very, very limited testing, I 
> did have one node that seemed to die quietly after making the change, but 
> I've not been able to reproduce it and the logs didn't have anything useful.
>
> The administrative console appears to work properly despite the change; the 
> only functionality you should lose would be link walking.
>
>
> It is possible to disable the Webmachine routes that expose bucket and key 
> lists, but there's no built-in way to make that configuration change persist 
> across restarts, so I haven't looked into the mechanism for that.
>
>
> [1] application:stop(riak_kv), followed by application:start(riak_kv)
>
> -John Daily
> Technical Evangelist
> [email protected]
>
>
>
> On Mar 5, 2013, at 10:01 AM, Chris Read <[email protected]> wrote:
>
>> Greetings all...
>>
>> We have had a situation where someone ran a List Buckets query on the HTTP 
>> interface on a large cluster. This caused the whole system to become 
>> unresponsive and the only way we could think of to stop the load on the 
>> system was to restart the whole cluster.
>>
>> I've spent the morning trawling through the documentation, and can't find 
>> answers to the following:
>>
>> - Is it possible, and if so how does one go about terminating a query like 
>> this? I can see things like Pid in riak-admin top, what can I do with it?
>> - Can we run useful things over HTTP like the /admin console but have the 
>> rest of the HTTP API disabled?
>>
>> Thanks,
>>
>> Chris
>> _______________________________________________
>> riak-users mailing list
>> [email protected]
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
>
>
> _______________________________________________
> riak-users mailing list
> [email protected]
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to