Indexing algorithm FFT without a GPU resolves to None: live indexing is off instead of the collection cancelled

The broker cancelled the whole data collection on the first indexed image when its algorithm was FFT and no
GPU was visible (the indexer pool refuses FFT there, and the receiver cancels on the exception). FFTW is too
slow for live stills, so it is not switched to; with None the pool reports the frame as not indexed and the
collection runs on. rugnux resolves -X FFT itself (cuFFT or FFTW) and never reaches this case.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-10-14 13:14:25 +02:00
co-authored by Claude Opus 5.5
parent d0c9ee0410
commit bdb5aaa44b
+2 -1
View File
@@ -1710,7 +1710,8 @@ IndexingAlgorithmEnum DiffractionExperiment::GetIndexingAlgorithm() const {
return IndexingAlgorithmEnum::FFT;
return IndexingAlgorithmEnum::FFBIDX;
case IndexingAlgorithmEnum::FFT:
return IndexingAlgorithmEnum::FFT;
// No silent switch to FFTW, too slow for live stills: a missing GPU turns indexing off
return get_gpu_count() == 0 ? IndexingAlgorithmEnum::None : IndexingAlgorithmEnum::FFT;
case IndexingAlgorithmEnum::FFTW:
return IndexingAlgorithmEnum::FFTW;
default: