-
Notifications
You must be signed in to change notification settings - Fork 710
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
Test crashed when failure with :type :info #485
Comments
I thiiiink what's happening here is that ConcurrentGenerator's
There's where we perform the generator update--and we use the new context, rather than the same context that produced the operation. This is... a little tricky, but I think the right call here is to use some, but not all, of the context changes: specifically, we want to preserve the new timestamp and thread availability, but leave the thread->process mapping in place for the update, and only after update cycle to a new thread. I'm busy with a client right now so I don't have time to write a full test case, but I put together a small patch which doesn't break any of the existing tests. Want to try out 8b9f04c and let me know if that helps? |
Just wanted to let you know--I've had a chance to test this properly, and I've released it under 0.2.1-SNAPSHOT--you should be able to bump your Jepsen dependency and have it work. :) |
I got an error from
independent
concurrent-generator
when I'm migrating my tests from Jepsen 0.1.18 to 0.2.0.The error always happens when an operation fails and returns op with
{:type :info}
. I think:info
is required when a test is not sure whether a write has succeeded or not.In my investigation, each thread-process pair of
ctx
's worker is basically a pair of a number like {0 0, 1 1, 2 2} when concurrency 3. But, when{:type :info}
, the pair has different number like {0 0, 1 4, 2 2}.I found the
ctx
's worker is updated when {:type :info} as below.I guess
{:type :info}
can be used with 0.2.0 because it is used in other tests like scylla or stolen tests.How should I use
{:type :info}
for unknown writes?https://github.com/jepsen-io/jepsen/blame/master/jepsen/src/jepsen/generator/interpreter.clj#L225-L230
The text was updated successfully, but these errors were encountered: