tribuchet: building on eliza An example execution: [State 0] { schedFixed::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedFixed::scheduler::crashes: 0, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 1] { schedFixed::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedFixed::scheduler::crashes: 0, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 2] { schedFixed::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedFixed::scheduler::crashes: 1, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true } ) } [State 3] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 1, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true } ) } [State 4] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 1, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 5] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 1, schedFixed::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c1", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 6] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c1", "c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true } ) } [State 7] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c1", "c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 8] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 9] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1", "c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 10] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c1", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 11] { schedFixed::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(("c1", "w2")), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 12] { schedFixed::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(("c1", "w2")), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 13] { schedFixed::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c1"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 14] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1", "c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 15] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c2", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 16] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CSent("w2")), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(("c2", "w2")), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 17] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CSent("w2")), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 18] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1", "c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 19] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c2", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 20] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CSent("w2")), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(("c2", "w2")), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 21] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CSent("w2")), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 22] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CSent("w2")), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c1", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 23] { schedFixed::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CSent("w2")), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(("c1", "w2")), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c2"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set(), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 24] { schedFixed::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(("c1", "w2")), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 25] { schedFixed::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set("c1"), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 26] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set("w2"), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1", "c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 27] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1", "c2"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [State 28] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c2", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 0, schedFixed::scheduler::publishedBy: Set(), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [State 29] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [{ followers: Set("c1", "c2"), leased: true, worker: "w2" }], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedFixed::scheduler::mAssigned: Set(("c2", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set("w2"), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 1, schedFixed::scheduler::publishedBy: Set("w2"), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: true, expecting: false, running: false, session: true, up: true } ) } [State 30] { schedFixed::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedFixed::scheduler::crashes: 2, schedFixed::scheduler::entry: [], schedFixed::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedFixed::scheduler::mAssigned: Set(("c2", "w2")), schedFixed::scheduler::mBuild: Set(), schedFixed::scheduler::mDone: Set(), schedFixed::scheduler::mExpect: Set(), schedFixed::scheduler::mResult: Set(), schedFixed::scheduler::mRetry: Set(), schedFixed::scheduler::mRevoke: Set(), schedFixed::scheduler::mSchedule: Set("c1"), schedFixed::scheduler::published: 1, schedFixed::scheduler::publishedBy: Set("w2"), schedFixed::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: true, expecting: false, running: false, session: true, up: true } ) } [ok] No violation found (2657ms at 11291 traces/second). Trace length statistics: max=30, min=15, average=18.58 You may increase --max-samples and --max-steps. Use --verbosity to produce more (or less) output. Use --seed=0x95e64994fdca37a4 --backend=rust to reproduce. An example execution: [State 0] { schedNoRevoke::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 0, schedNoRevoke::scheduler::entry: [], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 1] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 0, schedNoRevoke::scheduler::entry: [], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set("c1"), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 2] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 1, schedNoRevoke::scheduler::entry: [], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set("c1"), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false } ) } [State 3] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 1, schedNoRevoke::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoRevoke::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(("c1", "w1")), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set("w1"), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false } ) } [State 4] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 1, schedNoRevoke::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoRevoke::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(("c1", "w1")), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false } ) } [State 5] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 2, schedNoRevoke::scheduler::entry: [], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set("c1"), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false } ) } [State 6] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 2, schedNoRevoke::scheduler::entry: [], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set("c1"), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 7] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 2, schedNoRevoke::scheduler::entry: [], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoRevoke::scheduler::mAssigned: Set(), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set("c1"), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 8] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 2, schedNoRevoke::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoRevoke::scheduler::mAssigned: Set(("c1", "w2")), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set("w2"), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 9] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 2, schedNoRevoke::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedNoRevoke::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoRevoke::scheduler::mAssigned: Set(("c1", "w2")), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [State 10] { schedNoRevoke::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoRevoke::scheduler::crashes: 2, schedNoRevoke::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedNoRevoke::scheduler::free: Map("w1" -> 0, "w2" -> 0), schedNoRevoke::scheduler::mAssigned: Set(("c1", "w2")), schedNoRevoke::scheduler::mBuild: Set(), schedNoRevoke::scheduler::mDone: Set(), schedNoRevoke::scheduler::mExpect: Set(), schedNoRevoke::scheduler::mResult: Set(), schedNoRevoke::scheduler::mRetry: Set(), schedNoRevoke::scheduler::mRevoke: Set(), schedNoRevoke::scheduler::mSchedule: Set(), schedNoRevoke::scheduler::published: 0, schedNoRevoke::scheduler::publishedBy: Set(), schedNoRevoke::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [violation] Found an issue (5262ms at 5296 traces/second). Use --verbosity=3 to show executions. Use --seed=0xaa69b67aa8291c1 --backend=rust to reproduce. error: Invariant violated An example execution: [State 0] { schedNoFence::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedNoFence::scheduler::crashes: 0, schedNoFence::scheduler::entry: [], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 1] { schedNoFence::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedNoFence::scheduler::crashes: 1, schedNoFence::scheduler::entry: [], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 2] { schedNoFence::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoFence::scheduler::crashes: 1, schedNoFence::scheduler::entry: [], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set("c2"), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 3] { schedNoFence::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoFence::scheduler::crashes: 1, schedNoFence::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w2" }], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoFence::scheduler::mAssigned: Set(("c2", "w2")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set("w2"), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 4] { schedNoFence::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoFence::scheduler::crashes: 1, schedNoFence::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w2" }], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoFence::scheduler::mAssigned: Set(("c2", "w2")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [State 5] { schedNoFence::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set("c2"), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 6] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set("c2"), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set("c1"), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 7] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [], schedNoFence::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set("c2"), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set("c1"), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 8] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoFence::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(("c1", "w1")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set("w1"), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set("c2"), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 0, schedNoFence::scheduler::publishedBy: Set(), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 9] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoFence::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(("c1", "w1")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set("w1"), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set("c2"), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set(), schedNoFence::scheduler::published: 1, schedNoFence::scheduler::publishedBy: Set("w2"), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: true, expecting: false, running: false, session: false, up: true } ) } [State 10] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoFence::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(("c1", "w1")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set("w1"), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set("c2"), schedNoFence::scheduler::published: 1, schedNoFence::scheduler::publishedBy: Set("w2"), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: true, expecting: false, running: false, session: false, up: true } ) } [State 11] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoFence::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(("c1", "w1")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set(), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set("c2"), schedNoFence::scheduler::published: 1, schedNoFence::scheduler::publishedBy: Set("w2"), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true }, "w2" -> { attached: Set(), built: true, expecting: false, running: false, session: false, up: true } ) } [State 12] { schedNoFence::scheduler::cl: Map("c1" -> CQueued, "c2" -> CQueued), schedNoFence::scheduler::crashes: 2, schedNoFence::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w1" }], schedNoFence::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoFence::scheduler::mAssigned: Set(("c1", "w1")), schedNoFence::scheduler::mBuild: Set(), schedNoFence::scheduler::mDone: Set("w1"), schedNoFence::scheduler::mExpect: Set(), schedNoFence::scheduler::mResult: Set(), schedNoFence::scheduler::mRetry: Set(), schedNoFence::scheduler::mRevoke: Set(), schedNoFence::scheduler::mSchedule: Set("c2"), schedNoFence::scheduler::published: 2, schedNoFence::scheduler::publishedBy: Set("w1", "w2"), schedNoFence::scheduler::ws: Map( "w1" -> { attached: Set(), built: true, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: true, expecting: false, running: false, session: false, up: true } ) } [violation] Found an issue (3054ms at 8491 traces/second). Use --verbosity=3 to show executions. Use --seed=0x44272350b1022780 --backend=rust to reproduce. error: Invariant violated An example execution: [State 0] { schedNoPush::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedNoPush::scheduler::crashes: 0, schedNoPush::scheduler::entry: [], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoPush::scheduler::mAssigned: Set(), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set(), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set(), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 1] { schedNoPush::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoPush::scheduler::crashes: 0, schedNoPush::scheduler::entry: [], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoPush::scheduler::mAssigned: Set(), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set(), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set("c1"), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 2] { schedNoPush::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoPush::scheduler::crashes: 1, schedNoPush::scheduler::entry: [], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoPush::scheduler::mAssigned: Set(), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set(), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set("c1"), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 3] { schedNoPush::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoPush::scheduler::crashes: 1, schedNoPush::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoPush::scheduler::mAssigned: Set(("c1", "w2")), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set(), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set(), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 4] { schedNoPush::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoPush::scheduler::crashes: 2, schedNoPush::scheduler::entry: [{ followers: Set("c1"), leased: true, worker: "w2" }], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoPush::scheduler::mAssigned: Set(("c1", "w2")), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set(), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set(), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false } ) } [State 5] { schedNoPush::scheduler::cl: Map("c1" -> CQueued, "c2" -> CIdle), schedNoPush::scheduler::crashes: 2, schedNoPush::scheduler::entry: [], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoPush::scheduler::mAssigned: Set(("c1", "w2")), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set("c1"), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set(), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 6] { schedNoPush::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CIdle), schedNoPush::scheduler::crashes: 2, schedNoPush::scheduler::entry: [], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoPush::scheduler::mAssigned: Set(), schedNoPush::scheduler::mBuild: Set(("c1", "w2")), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set("c1"), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set(), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 7] { schedNoPush::scheduler::cl: Map("c1" -> CSent("w2"), "c2" -> CIdle), schedNoPush::scheduler::crashes: 2, schedNoPush::scheduler::entry: [], schedNoPush::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoPush::scheduler::mAssigned: Set(), schedNoPush::scheduler::mBuild: Set(), schedNoPush::scheduler::mDone: Set(), schedNoPush::scheduler::mExpect: Set(), schedNoPush::scheduler::mResult: Set(), schedNoPush::scheduler::mRetry: Set("c1"), schedNoPush::scheduler::mRevoke: Set(), schedNoPush::scheduler::mSchedule: Set(), schedNoPush::scheduler::published: 0, schedNoPush::scheduler::publishedBy: Set(), schedNoPush::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set("c1"), built: false, expecting: true, running: true, session: true, up: true } ) } [violation] Found an issue (4281ms at 2772 traces/second). Use --verbosity=3 to show executions. Use --seed=0x2806bbe8df4a39f9 --backend=rust to reproduce. error: Invariant violated An example execution: [State 0] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedNoReport::scheduler::crashes: 0, schedNoReport::scheduler::entry: [], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 1] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 0, schedNoReport::scheduler::entry: [], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set("c2"), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 2] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 1, schedNoReport::scheduler::entry: [], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set("c2"), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 3] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 1, schedNoReport::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w2" }], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoReport::scheduler::mAssigned: Set(("c2", "w2")), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set("w2"), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 4] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 1, schedNoReport::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w2" }], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 0), schedNoReport::scheduler::mAssigned: Set(("c2", "w2")), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [State 5] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 2, schedNoReport::scheduler::entry: [], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set("c2"), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: false }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 6] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 2, schedNoReport::scheduler::entry: [], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set("c2"), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 7] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 2, schedNoReport::scheduler::entry: [], schedNoReport::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set("c2"), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 8] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 2, schedNoReport::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w1" }], schedNoReport::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(("c2", "w1")), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set("w1"), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: false, up: true } ) } [State 9] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 2, schedNoReport::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w1" }], schedNoReport::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(("c2", "w1")), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set("w1"), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [State 10] { schedNoReport::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedNoReport::scheduler::crashes: 2, schedNoReport::scheduler::entry: [{ followers: Set("c2"), leased: true, worker: "w1" }], schedNoReport::scheduler::free: Map("w1" -> 0, "w2" -> 1), schedNoReport::scheduler::mAssigned: Set(("c2", "w1")), schedNoReport::scheduler::mBuild: Set(), schedNoReport::scheduler::mDone: Set(), schedNoReport::scheduler::mExpect: Set(), schedNoReport::scheduler::mResult: Set(), schedNoReport::scheduler::mRetry: Set(), schedNoReport::scheduler::mRevoke: Set(), schedNoReport::scheduler::mSchedule: Set(), schedNoReport::scheduler::published: 0, schedNoReport::scheduler::publishedBy: Set(), schedNoReport::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: true, running: true, session: true, up: true } ) } [violation] Found an issue (9489ms at 2486 traces/second). Use --verbosity=3 to show executions. Use --seed=0xe7d00fce5b9a2b71 --backend=rust to reproduce. error: Invariant violated An example execution: [State 0] { schedTerminal::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedTerminal::scheduler::crashes: 0, schedTerminal::scheduler::entry: [], schedTerminal::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedTerminal::scheduler::mAssigned: Set(), schedTerminal::scheduler::mBuild: Set(), schedTerminal::scheduler::mDone: Set(), schedTerminal::scheduler::mExpect: Set(), schedTerminal::scheduler::mResult: Set(), schedTerminal::scheduler::mRetry: Set(), schedTerminal::scheduler::mRevoke: Set(), schedTerminal::scheduler::mSchedule: Set(), schedTerminal::scheduler::published: 0, schedTerminal::scheduler::publishedBy: Set(), schedTerminal::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: true, up: true } ) } [State 1] { schedTerminal::scheduler::cl: Map("c1" -> CIdle, "c2" -> CIdle), schedTerminal::scheduler::crashes: 1, schedTerminal::scheduler::entry: [], schedTerminal::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedTerminal::scheduler::mAssigned: Set(), schedTerminal::scheduler::mBuild: Set(), schedTerminal::scheduler::mDone: Set(), schedTerminal::scheduler::mExpect: Set(), schedTerminal::scheduler::mResult: Set(), schedTerminal::scheduler::mRetry: Set(), schedTerminal::scheduler::mRevoke: Set(), schedTerminal::scheduler::mSchedule: Set(), schedTerminal::scheduler::published: 0, schedTerminal::scheduler::publishedBy: Set(), schedTerminal::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true } ) } [State 2] { schedTerminal::scheduler::cl: Map("c1" -> CIdle, "c2" -> CQueued), schedTerminal::scheduler::crashes: 1, schedTerminal::scheduler::entry: [], schedTerminal::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedTerminal::scheduler::mAssigned: Set(), schedTerminal::scheduler::mBuild: Set(), schedTerminal::scheduler::mDone: Set(), schedTerminal::scheduler::mExpect: Set(), schedTerminal::scheduler::mResult: Set(), schedTerminal::scheduler::mRetry: Set(), schedTerminal::scheduler::mRevoke: Set(), schedTerminal::scheduler::mSchedule: Set("c2"), schedTerminal::scheduler::published: 0, schedTerminal::scheduler::publishedBy: Set(), schedTerminal::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true } ) } [State 3] { schedTerminal::scheduler::cl: Map("c1" -> CIdle, "c2" -> CFailed), schedTerminal::scheduler::crashes: 1, schedTerminal::scheduler::entry: [], schedTerminal::scheduler::free: Map("w1" -> 1, "w2" -> 1), schedTerminal::scheduler::mAssigned: Set(), schedTerminal::scheduler::mBuild: Set(), schedTerminal::scheduler::mDone: Set(), schedTerminal::scheduler::mExpect: Set(), schedTerminal::scheduler::mResult: Set(), schedTerminal::scheduler::mRetry: Set(), schedTerminal::scheduler::mRevoke: Set(), schedTerminal::scheduler::mSchedule: Set(), schedTerminal::scheduler::published: 0, schedTerminal::scheduler::publishedBy: Set(), schedTerminal::scheduler::ws: Map( "w1" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true }, "w2" -> { attached: Set(), built: false, expecting: false, running: false, session: false, up: true } ) } [violation] Found an issue (4028ms at 246 traces/second). Use --verbosity=3 to show executions. Use --seed=0x4416ab67947c9770 --backend=rust to reproduce. error: Invariant violated An example execution: [State 0] { pushFixed::push::byPath: Map(), pushFixed::push::inflight: Set(), pushFixed::push::left: Map(), pushFixed::push::sent: Map() } [State 1] { pushFixed::push::byPath: Map("a" -> 1, "b" -> 1), pushFixed::push::inflight: Set((1, "a"), (1, "b")), pushFixed::push::left: Map(1 -> 2), pushFixed::push::sent: Map(1 -> Set("a", "b")) } [State 2] { pushFixed::push::byPath: Map("a" -> 3, "b" -> 3), pushFixed::push::inflight: Set((1, "a"), (1, "b"), (3, "a"), (3, "b")), pushFixed::push::left: Map(1 -> 2, 3 -> 2), pushFixed::push::sent: Map(1 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 3] { pushFixed::push::byPath: Map("a" -> 3, "b" -> 3), pushFixed::push::inflight: Set((1, "a"), (1, "b"), (3, "a")), pushFixed::push::left: Map(1 -> 2, 3 -> 1), pushFixed::push::sent: Map(1 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 4] { pushFixed::push::byPath: Map("a" -> 3, "b" -> 3), pushFixed::push::inflight: Set((1, "a"), (3, "a")), pushFixed::push::left: Map(1 -> 1, 3 -> 1), pushFixed::push::sent: Map(1 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 5] { pushFixed::push::byPath: Map("a" -> 3, "b" -> 3), pushFixed::push::inflight: Set((1, "a")), pushFixed::push::left: Map(1 -> 1, 3 -> 0), pushFixed::push::sent: Map(1 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 6] { pushFixed::push::byPath: Map("a" -> 2, "b" -> 2), pushFixed::push::inflight: Set((1, "a"), (2, "a"), (2, "b")), pushFixed::push::left: Map(1 -> 1, 2 -> 2, 3 -> 0), pushFixed::push::sent: Map(1 -> Set("a", "b"), 2 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 7] { pushFixed::push::byPath: Map("a" -> 2, "b" -> 2), pushFixed::push::inflight: Set((1, "a"), (2, "a")), pushFixed::push::left: Map(1 -> 1, 2 -> 1, 3 -> 0), pushFixed::push::sent: Map(1 -> Set("a", "b"), 2 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 8] { pushFixed::push::byPath: Map("a" -> 2, "b" -> 2), pushFixed::push::inflight: Set((2, "a")), pushFixed::push::left: Map(1 -> 0, 2 -> 1, 3 -> 0), pushFixed::push::sent: Map(1 -> Set("a", "b"), 2 -> Set("a", "b"), 3 -> Set("a", "b")) } [State 9] { pushFixed::push::byPath: Map("a" -> 2, "b" -> 2), pushFixed::push::inflight: Set(), pushFixed::push::left: Map(1 -> 0, 2 -> 0, 3 -> 0), pushFixed::push::sent: Map(1 -> Set("a", "b"), 2 -> Set("a", "b"), 3 -> Set("a", "b")) } [ok] No violation found (694ms at 28818 traces/second). Trace length statistics: max=10, min=7, average=7.89 You may increase --max-samples and --max-steps. Use --verbosity to produce more (or less) output. Use --seed=0x29b4878db0bdca11 --backend=rust to reproduce.