open-nomad/scheduler
Tim Gross a2433e35fb
CSI: resolve invalid claim states (#11890)
* csi: resolve invalid claim states on read

It's currently possible for CSI volumes to be claimed by allocations
that no longer exist. This changeset asserts a reasonable state at
the state store level by registering these nil allocations as "past
claims" on any read. This will cause any pass through the periodic GC
or volumewatcher to trigger the unpublishing workflow for those claims.

* csi: make feasibility check errors more understandable

When the feasibility checker finds we have no free write claims, it
checks to see if any of those claims are for the job we're currently
scheduling (so that earlier versions of a job can't block claims for
new versions) and reports a conflict if the volume can't be scheduled
so that the user can fix their claims. But when the checker hits a
claim that has a GCd allocation, the state is recoverable by the
server once claim reaping completes and no user intervention is
required; the blocked eval should complete. Differentiate the
scheduler error produced by these two conditions.
2022-01-27 09:30:03 -05:00
..
benchmarks scheduler: tooling for scheduler benchmarking (#11725) 2021-12-22 10:05:44 -05:00
annotate.go
annotate_test.go
context.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
context_test.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
device.go
device_test.go
feasible.go CSI: resolve invalid claim states (#11890) 2022-01-27 09:30:03 -05:00
feasible_test.go add support for host network interpolation 2021-04-13 09:53:05 -04:00
generic_sched.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
generic_sched_test.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
preemption.go
preemption_test.go Fix preemption panic (#11346) 2021-10-19 20:22:03 -04:00
propertyset.go
rank.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
rank_test.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
reconcile.go docs: new scheduler metrics (#11790) 2022-01-07 09:51:15 -05:00
reconcile_test.go core: allow setting and propagation of eval priority on job de/registration (#11532) 2021-11-23 09:23:31 +01:00
reconcile_util.go chore: fixup inconsistent method receiver names. (#11704) 2021-12-20 11:44:21 +01:00
reconcile_util_test.go
scheduler.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
scheduler_oss.go gofmt all the files 2021-10-01 10:14:28 -04:00
scheduler_sysbatch_test.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
scheduler_system.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
scheduler_system_test.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
select.go chore: fix incorrect docstring formatting. 2021-08-30 11:08:12 +02:00
select_test.go
spread.go
spread_test.go scheduler: fix quadratic performance with spread blocks (#11712) 2021-12-21 10:10:01 -05:00
stack.go scheduler: fix quadratic performance with spread blocks (#11712) 2021-12-21 10:10:01 -05:00
stack_oss.go chore: ensure consistent file naming for non-enterprise files. 2022-01-13 11:32:16 +01:00
stack_test.go core: implement system batch scheduler 2021-08-03 10:30:47 -04:00
testing.go scheduler: detect and log unexpected scheduling collisions (#11793) 2022-01-14 20:09:14 -05:00
util.go scheduler: stop allocs in unrelated nodes (#11391) 2021-10-27 07:04:13 -07:00
util_test.go Expose Consul template configuration parameters (#11606) 2022-01-10 10:19:07 -05:00