Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.0 #217

Closed
wants to merge 30 commits into from
Closed

2.0 #217

wants to merge 30 commits into from

Conversation

seanmcevoy
Copy link

Added new timeout mechanism and some new stats collection.
Intended to be fully backward compatible.
See overload_test & stats_demo test functions.

engelsanchez and others added 30 commits November 27, 2013 10:13
the PB translation generates a single token instead of a default record
when the entire message has only default values. This was uncovered in
1.4.4, where the cs buckets query was broken.
Fix unhandled case of empty cs buckets response
Backport of 5aa1ab0

As described in basho#156, there are several types of timeouts in the client.
The timeout that is generally provided as the last argument to client
operations is used to create timers which prevent us from waiting for
every on messages for TCP data (from gen_tcp). There are several cases
where this timeout was hardcoded to infinity. This can cause the client
to hang on these requests for a (mostly) unbounded time. Even when using
a gen_server timeout, the gen_server itself will continue to wait for
the message to come, with no timeout. Further, because of basho#155, we
simply use the `ServerTimeout` as the `RequestTimeout`, if there is not
a separate `RequestTimeout`. It's possible that the `RequestTimeout` can
fire before the `ServerTimeout` (this timeout is remote), but we'd
otherwise just be picking some random number to be the difference
between them. Addressing basho#155 will shed more light on this.
Enable compilation on OTP 18
It seems to be a breaking change not compiling on R15 properly. Will need to come up with a better solution.
Restore for now because it breaks on R15 and 16
@lukebakken
Copy link
Contributor

Hi,

Thank you for taking the time to contribute to this project. This PR represents too many changes to accept in one pull request. Would it be possible to break this up into smaller changes, each with its own set of tests to go with it?

Also, the changes should be against master and not another branch.

@seanmcevoy
Copy link
Author

Hi Luke,
I'm working on the changes you suggested, was hoping to get them finished
over the weekend but it looks like they'll go into next week.
Will get back to you again when I make the new pull requests.
//Sean.

On Wed, Nov 11, 2015 at 5:15 PM, Luke Bakken [email protected]
wrote:

Hi,

Thank you for taking the time to contribute to this project. This PR
represents too many changes to accept in one pull request. Would it be
possible to break this up into smaller changes, each with its own set of
tests to go with it?

Also, the changes should be against master and not another branch.


Reply to this email directly or view it on GitHub
#217 (comment)
.

@seanmcevoy
Copy link
Author

Hi Luke,

I just made 2 pull requests for the erlang client:
#251
#252

251 adds a new timeout mechanism, it's fully backward compatible with the
old timeouts and has two unit tests plus one demo test showing it's
advantage over the old mechanism.

252 is built on top of 251 and adds some statistics functionality which has
been designed to be ignorable, so is again backward compatible. The
presentation of the stats is very low-level but was sufficient for our
needs and could be a good base if anyone wants to build a more
sophisticated stats tool on top.

Let me know if you need anything else from me in relation to these changes.
Am happy to contribute what I can :-)

//Sean.

On Wed, Nov 11, 2015 at 5:15 PM, Luke Bakken [email protected]
wrote:

Hi,

Thank you for taking the time to contribute to this project. This PR
represents too many changes to accept in one pull request. Would it be
possible to break this up into smaller changes, each with its own set of
tests to go with it?

Also, the changes should be against master and not another branch.


Reply to this email directly or view it on GitHub
#217 (comment)
.

@lukebakken
Copy link
Contributor

Superceded by #251 and #252

@lukebakken lukebakken closed this May 13, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants