[ML] log minimum diskspace setting if forecast fails due to insufficient d… (#37486)
log minimum disk space setting if forecast fails due to insufficient disk space
This commit is contained in:
parent
987576b013
commit
15d1b904a1
|
@ -97,8 +97,15 @@ public class TransportForecastJobAction extends TransportJobTaskAction<ForecastJ
|
|||
} else if (forecastRequestStats.getStatus() == ForecastRequestStats.ForecastRequestStatus.FAILED) {
|
||||
List<String> messages = forecastRequestStats.getMessages();
|
||||
if (messages.size() > 0) {
|
||||
String message = messages.get(0);
|
||||
|
||||
// special case: if forecast failed due to insufficient disk space, log the setting
|
||||
if (message.contains("disk space is insufficient")) {
|
||||
message += " Minimum disk space required: [" + processManager.getMinLocalStorageAvailable() + "]";
|
||||
}
|
||||
|
||||
listener.onFailure(ExceptionsHelper.badRequestException("Cannot run forecast: "
|
||||
+ messages.get(0)));
|
||||
+ message));
|
||||
} else {
|
||||
// paranoia case, it should not be possible to have an empty message list
|
||||
listener.onFailure(
|
||||
|
|
|
@ -749,6 +749,10 @@ public class AutodetectProcessManager {
|
|||
return autoDetectWorkerExecutor;
|
||||
}
|
||||
|
||||
public ByteSizeValue getMinLocalStorageAvailable() {
|
||||
return nativeStorageProvider.getMinLocalStorageAvailable();
|
||||
}
|
||||
|
||||
/*
|
||||
* The autodetect native process can only handle a single operation at a time. In order to guarantee that, all
|
||||
* operations are initially added to a queue and a worker thread from ml autodetect threadpool will process each
|
||||
|
|
|
@ -111,6 +111,10 @@ public class NativeStorageProvider {
|
|||
}
|
||||
}
|
||||
|
||||
public ByteSizeValue getMinLocalStorageAvailable() {
|
||||
return minLocalStorageAvailable;
|
||||
}
|
||||
|
||||
long getUsableSpace(Path path) throws IOException {
|
||||
long freeSpaceInBytes = Environment.getFileStore(path).getUsableSpace();
|
||||
|
||||
|
|
Loading…
Reference in New Issue