Closed insumity closed 5 years ago
however c might still want to invoke operations later on in an execution.
This would violate the assumption that processes are single-threaded; once a process has crashed, it can't do anything else, because that might mean the process does two things at once. You are, of course, free to spin up additional processes to take the place of crashed ones, as you suggest. That's exactly what Jepsen does. :)
Assume you have this
history.edn
file:Running the above history against Knossos gives me the following result:
It seems to me that after an
info
response, a process cannot do anything else. Looking at other histories in the knossos repository, it seems indeed the case that if a process gets aninfo
message, it will never invoke any other operation after it. Is this indeed the case? Maybe, the creator of issue had a similar problem.Reading Knossos concepts here:
it seems to me, this does not have to be the case. For example, I could think of a client
c
getting an operation timed-out and hence logging aninfo
message, howeverc
might still want to invoke operations later on in an execution. The easy fix would be, that after every timed-out operation, clientc
starts logging operations (i.e., invocations and responses) with a different client identifierc'
. Is there a better way to solve this issue in Knossos?