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

fix(ServeTask): Return error if server is not ready #6019

Merged
merged 1 commit into from
Jul 16, 2020

Conversation

jarifibrahim
Copy link
Contributor

@jarifibrahim jarifibrahim commented Jul 16, 2020

The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

I ran jepsen bank test with all nemesis and don't see any panics

./jepsen --jepsen-root $GOPATH/src/github.com/dgraph-io/jepsen -w bank -n "kill-alpha,kill-zero,partition-ring,move-tablet"

This change is Reviewable

The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934
Copy link
Contributor

@martinmr martinmr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:lgtm:

Reviewed 1 of 1 files at r1.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on @manishrjain and @vvbalaji-dgraph)

Copy link
Contributor

@ashish-goswami ashish-goswami left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be good to mention in the commit how you found it(jepsen test, nemesis). :lgtm:

Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on @manishrjain and @vvbalaji-dgraph)

@jarifibrahim jarifibrahim changed the title fix(ServeTask): Return error is server is not ready fix(ServeTask): Return error if server is not ready Jul 16, 2020
Copy link
Contributor

@parasssh parasssh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:lgtm:

Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on @manishrjain and @vvbalaji-dgraph)

@jarifibrahim jarifibrahim merged commit 9293c97 into master Jul 16, 2020
@jarifibrahim jarifibrahim deleted the ibrahim/servetask-panic branch July 16, 2020 16:04
jarifibrahim pushed a commit that referenced this pull request Jul 16, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.

(cherry picked from commit 9293c97)
jarifibrahim pushed a commit that referenced this pull request Jul 16, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.

(cherry picked from commit 9293c97)
jarifibrahim pushed a commit that referenced this pull request Jul 16, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.

(cherry picked from commit 9293c97)
parasssh pushed a commit that referenced this pull request Jul 16, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.

(cherry picked from commit 9293c97)
parasssh pushed a commit that referenced this pull request Jul 16, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.

(cherry picked from commit 9293c97)
parasssh pushed a commit that referenced this pull request Jul 16, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.

(cherry picked from commit 9293c97)
dna2github pushed a commit to dna2fork/dgraph that referenced this pull request Jul 18, 2020
The grpcWorker.ServeTask function is called when a request is received
over the network (sent by a peer). This function doesn't consider the
health of the node before starting the processing of the request. If we
process a request before the node is ready, we might end up seeing
crashes similar to https://dgraph.atlassian.net/browse/DGRAPH-1934

Fixes DGRAPH-1934

This bug was seen when running jepsen bank test with
kill-alpha and kill-zero nemesis.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants