Comments (7)
Hello Tiago,
Thanks for the email! Yes I am afraid you are correct, we don't currently
have a configurable timeout for M/R specifically as you would see in the
HTTP API. The protocol buffers API doesn't provide a timeout value, so I
believe that this should instead be set as the "read" timeout on the socket.
In your configuration for your application, you can set a
networkReadTimeout which
tells the socket to wait longer before any response comes down. This
might be what you're looking for?
Unfortunately this value is set per-node in the cluster, which isn't
exactly flexible. One of the features that I aim to get done is to allow
this value to be set on the socket for each request that is made, as this
would allow the callers to have control over the timeout rather than having
it set across all calls on that node.
Would it be possible for you to see if changing this value helps you in the
short term?
If you are interested in helping out in any way we would greatly appreciate
it. But don't feel pressured :) I am happy to look into exposing the
timeout value per-request in the next few days.
Thank you again for your email! It's great to hear from another CI user.
Best regards
OJ
from riak-dotnet-client.
Hello OJ
Thanks for your reply. Initially, I set the networkReadTimeout value in the node configuration section of my riak config file. The problem is that this timeout does not apply to the M/R query...
I think the timeout property they talk about ("Map/Reduce queries have a default timeout of 60000 milliseconds (60 seconds). The default timeout can be overridden by supplying a different value, in milliseconds, in the JSON document:") can be applied for both HTTP and Protocol Buffer interfaces because it is part of the JSON object that is sent to the server.
In the context of CorrugatedIron and as an example, you would only need to add a public property in the RiakMapReduceQuery class and then add an extra step in the Compile() function in order to serialize the timeout as well (using the JsonWriter).
Best regards
Tiago
from riak-dotnet-client.
Tiago,
You are indeed correct! How silly of me. This should be a very simple thing to fix and it looks like you've already got across what needs to be done.
If you're interested in helping out we would love to receive a pull request from you. If you don't have the time I am happy to look into this tonight.
Thanks again Tiago,
Best regards
OJ
from riak-dotnet-client.
OJ, no problem! Glad I could help.
I've already wrote the fix and a corresponding unit test. Let me get my head around this github thing since this is my first fork :)
Best regards
Tiago
from riak-dotnet-client.
Tiago,
Wonderful! Thanks very much. I look forward to seeing your pull request. There are stacks of great documents on how to work with github for this sort of thing.
Cheers mate,
OJ
from riak-dotnet-client.
You're welcome! I've sent a pull request and I'm closing this issue now :)
from riak-dotnet-client.
I'll close the issue when I merge the request mate.
Cheers!
On Aug 22, 2012 6:41 PM, "Tiago Margalho" [email protected] wrote:
You're welcome! I've sent a pull request and I'm closing this issue now :)
—
Reply to this email directly or view it on GitHubhttps://github.com//issues/45#issuecomment-7927970.
from riak-dotnet-client.
Related Issues (20)
- Issue with health check / node selection HOT 2
- No results found yields IsSuccess == false HOT 1
- Compiling under Mono breaks stuff HOT 1
- Default value for deletedvclock
- RiakClient.Delete Bug HOT 5
- Riak TS support
- Nodes are not marked Offline for a failed GET request HOT 10
- Riak client does not support the use of a load balancer HOT 14
- The "externalLoadBalancer" doesn't take multiple-load balancer scenarios into account HOT 2
- RiakClient.Delete issue [JIRA: CLIENTS-898] HOT 3
- Don't lose original error when returning "ClusterOffline"
- Update riak_pb submodule when tagged
- Optional fields with default values in PB messages
- Upon save/update failure - no way to get Id
- Target .NET Standard
- Revamp publish process
- Riak TS - when rpberrorresp is returned, text is unavailable HOT 1
- Fluent connection configuration ? HOT 2
- System.configuration could not be resolved HOT 1
- Add warning and safety mechanism to prevent unintentional list [buckets | keys] operations
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from riak-dotnet-client.