You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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 an info message, it will never invoke any other operation after it.
Is this indeed the case? Maybe, the creator of issue had a similar problem.
Every logical transition in Knossos is represented by a pair of operations: an invoke, when the op begins, and a completion: either ok if the operation took place, fail if the operation did not take place, or info if you're not sure what happened, e.g. the operation timed out.
an info response, seems like what is adequate here. We do not know whether the cas succeeded or not.
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 an info message, however c might still want to invoke operations later on in an execution. The easy fix would be, that after every timed-out operation, client c starts logging operations (i.e., invocations and responses) with a different client identifier c'. Is there a better way to solve this issue in Knossos?
The text was updated successfully, but these errors were encountered:
insumity
changed the title
Process already running?
Process already running and info messages.
Aug 5, 2019
insumity
changed the title
Process already running and info messages.
Process already running and :info messages.
Aug 5, 2019
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?The text was updated successfully, but these errors were encountered: