Closed wfystx closed 4 years ago
Naw, this looks reasonable to me. Could depend on what happened before, but look at the linearization point for process 0's write of 1: it's likely gotta be immediately after invocation, which rules out using it to reach 1 after the write of 4.On Jan 8, 2020 23:56, Fuyao Wang notifications@github.com wrote::final-paths
([{:op
{:process 4,
:type :ok,
:f :write,
:value 4,
:index 35279,
:time 394925843615},
:model {:value 4}}
{:op
{:process 3,
:type :ok,
:f :read,
:value 1,
:index 35282,
:time 394985253044},
:model {:msg "4≠1"}}]
[{:op
{:process 4,
:type :ok,
:f :write,
:value 4,
:index 35279,
:time 394925843615},
:model {:value 4}}
{:op
{:process 1,
:type :invoke,
:f :read,
:value 4,
:index 35264,
:time 394736854607},
:model {:value 4}}
{:op
{:process 3,
:type :ok,
:f :read,
:value 1,
:index 35282,
:time 394985253044},
:model {:msg "4≠1"}}]),
:previous-ok
{:process 0,
:type :ok,
:f :write,
:value 1,
:index 35280,
:time 394942538345},
:last-op
{:process 4,
:type :ok,
:f :write,
:value 4,
:index 35279,
:time 394925843615},
:op
{:process 3,
:type :ok,
:f :read,
:value 1,
:index 35282,
:time 394985253044},
:analyzer :linear},
:valid? false}
Analysis invalid! (ノಥ益ಥ)ノ ┻━┻
The log above seems believe that the expected value should 4 instead of 1. But I got confused after I checked the history.
{:type :invoke, :f :write, :value 1, :process 0, :time 394737291082, :index 35265}
{:type :invoke, :f :read, :value nil, :process 2, :time 394767185191, :index 35266}
{:type :ok, :f :read, :value 1, :process 2, :time 394768172241, :index 35267}
{:type :invoke, :f :write, :value 1, :process 4, :time 394808094183, :index 35268}
{:type :ok, :f :write, :value 1, :process 4, :time 394810364751, :index 35269}
{:type :invoke, :f :read, :value nil, :process 4, :time 394810547341, :index 35270}
{:type :ok, :f :read, :value 1, :process 4, :time 394811337269, :index 35271}
{:type :invoke, :f :read, :value nil, :process 2, :time 394815457021, :index 35272}
{:type :ok, :f :read, :value 1, :process 2, :time 394816386168, :index 35273}
{:type :invoke, :f :read, :value nil, :process 3, :time 394830098886, :index 35274}
{:type :ok, :f :read, :value 1, :process 3, :time 394831088041, :index 35275}
{:type :invoke, :f :read, :value nil, :process 2, :time 394916677135, :index 35276}
{:type :ok, :f :read, :value 1, :process 2, :time 394917581284, :index 35277}
{:type :invoke, :f :write, :value 4, :process 4, :time 394923593767, :index 35278}
{:type :ok, :f :write, :value 4, :process 4, :time 394925843615, :index 35279}
{:type :ok, :f :write, :value 1, :process 0, :time 394942538345, :index 35280}
{:type :invoke, :f :read, :value nil, :process 3, :time 394984365282, :index 35281}
{:type :ok, :f :read, :value 1, :process 3, :time 394985253044, :index 35282}
Here is the history. I think there should be no problem.
Am I understanding it in a wrong direction?
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or unsubscribe.
Thanks
The log above seems believe that the expected value should 4 instead of 1. But I got confused after I checked the history.
Here is the history. I think there should be no problem. Am I understanding it in a wrong direction?