Commit 8914550
committed
fix: tolerate sessions without ArrayKernels in executor
`execute_until` and the single-step `Executable::execute` looked up the
`ArrayKernels` session variable with `session.get`, which panics when the
variable is absent. Sessions built without registering `ArrayKernels`
(such as the `run_end_take` benchmark's `VortexSession::empty()`) then
panicked during execution.
Fall back to an empty `ArrayKernels` registry when the variable is not
present, matching the optimizer's `get_opt` contract. The registry is
consulted first and then each child's static `execute_parent` method, so
built-in kernels still fire under an empty registry.
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>1 parent 718ffea commit 8914550
1 file changed
Lines changed: 16 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
163 | 163 | | |
164 | 164 | | |
165 | 165 | | |
166 | | - | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
167 | 174 | | |
168 | 175 | | |
169 | 176 | | |
| |||
427 | 434 | | |
428 | 435 | | |
429 | 436 | | |
430 | | - | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
431 | 445 | | |
432 | 446 | | |
433 | 447 | | |
| |||
0 commit comments