Concurrency Coordination Reports
Once Value Coordination Report
Commit a write-once value on the first attempt and report how many later writes were rejected.
Once Value Coordination Report
once_value.lua
local writes =
local value = -1
local commits = 0
local rejected = 0
for i = 1, writes do
if value == -1 then
value = i * 10
commits = commits + 1
else
rejected = rejected + 1
end
end
local report_status = "unset"
if commits >= 1 and rejected >= 1 then
report_status = "guarded"
elseif commits >= 1 then
report_status = "sealed"
end
print("writes=" .. writes .. " value=" .. value .. " commits=" .. commits .. " rejected=" .. rejected .. " status=" .. report_status)
local writes =
local value = -1
local commits = 0
local rejected = 0
for i = 1, writes do
if value == -1 then
value = i * 10
commits = commits + 1
else
rejected = rejected + 1
end
end
local report_status = "unset"
if commits >= 1 and rejected >= 1 then
report_status = "guarded"
elseif commits >= 1 then
report_status = "sealed"
end
print("writes=" .. writes .. " value=" .. value .. " commits=" .. commits .. " rejected=" .. rejected .. " status=" .. report_status)
local writes =
local value = -1
local commits = 0
local rejected = 0
for i = 1, writes do
if value == -1 then
value = i * 10
commits = commits + 1
else
rejected = rejected + 1
end
end
local report_status = "unset"
if commits >= 1 and rejected >= 1 then
report_status = "guarded"
elseif commits >= 1 then
report_status = "sealed"
end
print("writes=" .. writes .. " value=" .. value .. " commits=" .. commits .. " rejected=" .. rejected .. " status=" .. report_status)
write-once value
A write-once value accepts the first commit and ignores the rest, keeping the stored value and commit count deterministic.