idaholab / moose

Multiphysics Object Oriented Simulation Environment
https://www.mooseframework.org
GNU Lesser General Public License v2.1
1.73k stars 1.04k forks source link

Update gold files in CheckpointIO format #12496

Open roystgnr opened 5 years ago

roystgnr commented 5 years ago

Rationale

https://github.com/libMesh/libmesh/pull/1941 includes a fix for a horrible libMesh::CheckpointIO bug, one which was triggered there by a processor_id_type size change but which could also be triggered by certain restarts with mesh refinement.

Description

The errors here are easily triggerable by configuring libMesh with a non-2-byte processor_id_type and running in dbg/devel modes - see https://github.com/libMesh/libmesh/pull/1941

The most serious error to be fixed should be triggerable by generating any mesh with more than 65535 elements, doing a uniform refinement, writing a checkpoint, reading the checkpoint, and either running in dbg/devel modes or doing a uniform coarsening to trigger an error in opt mode.

Impact

This will require a libMesh update to a post-1941 revision, and will break compatibility of those tests with prior libMesh revisions.

roystgnr commented 5 years ago

I figured out how to get backwards compatibility in libMesh/libmesh#1941, so regenerating gold files is no longer a high-priority task; the libMesh update can happen without changing any gold files and then the gold files can be updated at your leisure.

The libMesh update is probably pretty high priority now, though. I wouldn't trust any pre-bugfix checkpoint from a run using mesh refinement on 65K coarse elements or more.