]> https://gitweb.dealii.org/ - dealii.git/commit
fix checkpointing for >4GB files
authorTimo Heister <timo.heister@gmail.com>
Fri, 15 Oct 2021 03:05:53 +0000 (23:05 -0400)
committerTimo Heister <timo.heister@gmail.com>
Fri, 15 Oct 2021 03:06:17 +0000 (23:06 -0400)
commit4d75e7cad36a4eed1691eb249940abeb05b75c7e
tree7a3a937e5903cffbd1a4df2b3d6a40b804538848
parent3f26aa658bfa9c49328e7d3a8f4d855efb79b4df
fix checkpointing for >4GB files

We incorrectly compute MPI_Offset for MPI IO for checkpointing using
SolutionTransfer using 32 bit indices, which means that files larger
than 4GB end up being corrupted.
This manifests in errors like

n error occurred in line <749> of file
<../source/distributed/tria_base.cc> in function
void dealii::parallel::DistributedTriangulationBase<dim,
spacedim>::load_attached_data(unsigned int, unsigned int, unsigned int,
const string&, unsigned int, unsigned int) [with int dim = 3; int
spacedim = 3; std::string = std::__cxx11::basic_string<char>]
The violated condition was:
(cell_rel.second == parallel::DistributedTriangulationBase<dim,
spacedim>::CELL_PERSIST)

part of #12752
source/distributed/tria_base.cc
tests/distributed_grids/checkpointing_02.cc [new file with mode: 0644]
tests/distributed_grids/checkpointing_02.with_trilinos=true.mpirun=2.output [new file with mode: 0644]

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.