An error occurred while fetching participants.
collated fileHandler does not adjust timePrecision
Summary
Unlike the uncollated filehandler, the collated one does not adjust the timePrecision value to be able to read the time directory. Instead, it just crashes the run.
Steps to reproduce
- Grab pretty much any tutorial case, I took pitzDaily.
- Replace the 0 directory with something like 0.1234567
- Change the file handler to collated in the controlDict, and timePrecision to something small, like 3.
- Decompose and run, it will crash.
Note that the decomposition works, and you will see the warning about adjusting timePrecision. But the solver will crash.
What is the expected correct behavior?
That the timePrecision is adjusted, or at least crash with a clear error message.
Relevant logs and/or images
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v1912 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
Build : _f3950763fe-20191219 OPENFOAM=1912
Arch : "LSB;label=32;scalar=64"
Exec : simpleFoam -parallel
Date : Apr 13 2020
Time : 12:19:08
Host : DESKTOP-MPTRIAD
PID : 1600
I/O : uncollated
Case : /mnt/c/Users/tiamm/OpenFOAM/timofey-v1912/run/tests/pitzDaily
nProcs : 2
Hosts :
(
(DESKTOP-MPTRIAD 2)
)
Pstream initialized with:
floatTransfer : 0
nProcsSimpleSum : 0
commsType : nonBlocking
polling iterations : 0
trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time
Overriding OptimisationSwitches according to controlDict
fileHandler (unregistered)
Overriding fileHandler to collated
I/O : collated (maxThreadFileBufferSize 0)
Threading not activated since maxThreadFileBufferSize = 0.
Writing may run slowly for large file sizes.
Create mesh for time = 0.123
SIMPLE: convergence criteria
field p tolerance 0.01
field U tolerance 0.001
field "(k|epsilon|omega|f|v2)" tolerance 0.001
Reading field p
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 1.
NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.
--------------------------------------------------------------------------
[0]
[0]
[0] --> FOAM FATAL IO ERROR:
[0] cannot find file "/mnt/c/Users/tiamm/OpenFOAM/timofey-v1912/run/tests/pitzDaily/processor0/0.123/p"
[0]
[0] From function static Foam::autoPtr<Foam::ISstream> Foam::fileOperations::masterUncollatedFileOperation::read(Foam::IOobject&, Foam::label, bool, const fileNameList&, const boolList&)
[0] in file global/fileOperations/masterUncollatedFileOperation/masterUncollatedFileOperation.C at line 617.
[0]
FOAM parallel run exiting
[0]
Note that the error message is also confusing because it searches in processor0, which is not something one expects from the collated fileHandler. Easy to miss the fact that the time directory is wrong in a more practical case.
Environment information
- OpenFOAM version : v1912