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

jepsen nemesis crashes while running test for etcd #239

Open
malhar1995 opened this issue Mar 13, 2018 · 8 comments
Open

jepsen nemesis crashes while running test for etcd #239

malhar1995 opened this issue Mar 13, 2018 · 8 comments
Labels

Comments

@malhar1995
Copy link

malhar1995 commented Mar 13, 2018

Hello everyone,

I tried running
lein run test --concurrency 10 for etcd. Initially, it ran without any problems. But currently, every time I run it, it says, WARN [2018-03-13 15:40:02,787] jepsen nemesis - jepsen.core Process :nemesis crashed

java.lang.IllegalArgumentException: No implementation of method: :heal! of protocol: #'jepsen.net/Net found for class: nil

I'm not sure how to fix this.

Moreover, is there a mailing list for jepsen? If there is, I think posting queries on the mailing list would be better rather than posting them here.

P.S. I tried removing jepsen and setting it up again only to find that the first time I run the aforementioned test on etcd, nemesis still crashes but it says, Everything looks good! but on subsequent runs, it says, Analysis invalid!.

Thank you.

@aphyr
Copy link
Collaborator

aphyr commented Mar 15, 2018

As of this morning, there is a mailing list: https://groups.google.com/a/jepsen.io/forum/#!forum/talk

The error you're seeing sounds to me like you changed something in the source--possibly setting the test's :net key to nil.

@malhar1995
Copy link
Author

Initially, even I thought that I might have mistakenly changed some source code and so, I downloaded the jepsen repository again and the same problem persists.

Also, on a different note, I am currently studying your analyses on different versions of MongoDB and I wish to run the tests for each version and see it for myself. However, I am unable to correctly point out those tests in the repository. More specifically, I want to run tests for MongoDB 2.4.3, 2.6.7 and 3.4.0-rc3. What do the directories mongodb-rocks and mongodb-smartos stand for? Also, there is one repository named mongodb inside jepsen-io. Does it contain tests for MongoDB 3.4.0-rc3?

I could not find steps to reproduce the results for MongoDB in the documentation or the blog posts.

@aphyr
Copy link
Collaborator

aphyr commented Mar 23, 2018

However, I am unable to correctly point out those tests in the repository.

I'm guessing you're reading the blog posts, since you're trying to reproduce them. The 2.4.3 code is ancient, but you can dig it up in the git history if you like. 2.6.7 has direct links throughout the blog post to the source at the specific Git SHA's. Both of these predate having nice command line runners, so you'll be editing the source and running lein test by hand.

What do the directories mongodb-rocks and mongodb-smartos stand for?

Mongo with RocksDB, and Mongo on SmartOS. You can google for these terms, by the way.

I could not find steps to reproduce the results for MongoDB in the documentation or the blog posts.

It's the first thing in the README for the current MongoDB test repo. That repo (and the appropriate Git SHA) are linked throughout the 3.4 analysis.

Does it contain tests for MongoDB 3.4.0-rc3?

To answer your question, I suggest looking at the links in the 3.4.0-rc3 analysis.

@aphyr aphyr closed this as completed Mar 23, 2018
@aphyr aphyr reopened this Mar 23, 2018
@aphyr
Copy link
Collaborator

aphyr commented Mar 23, 2018

Ah, right, you've also got a mysterious stacktrace still: "java.lang.IllegalArgumentException: No implementation of method: :heal! of protocol: #'jepsen.net/Net found for class: nil". You're going to want to inspect the state of your test's :net field. The etcd test doesn't change it, IIRC, so it should be the default iptables network; there's probably something else strange at play here, but since I can't reproduce this problem myself you're gonna have to debug it on your own. :(

@mkcp
Copy link
Member

mkcp commented May 23, 2018

I've bumped into that error once or twice in a docker dev env but never been able to reproduce it -- it usually goes away on the next run. I'll check in if I run into it again

@mkcp mkcp added the bug label Feb 4, 2019
@kaibimouez
Copy link

Hello @aphyr ,
i changing the ip adress of my ec2 aws instance and i have this problem:
No implementation of method: :heal! of protocol: #'jepsen.net/Net found for class: nil
I think because of the changing of the IP Address. How can i change the new Address in Iptables?
Thx a lot
Mouez Kaibi

@aphyr
Copy link
Collaborator

aphyr commented Dec 3, 2019

Sorry, @kaibimouez, I don't know; I've never seen this before. As I noted previously, you'll want to look at the stacktrace and see where Jepsen is trying to call (heal! nil ...), and add some logging: it might be that the test's net object is nil somehow.

@kaibimouez
Copy link

grafik
I think you have talked about :
#239 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants