Skip to content

Conversation

@roystgnr
Copy link
Contributor

Reason

Some of the additional error checking in libMesh/libmesh#3759 has exposed issues in MOOSE code; those need to be fixed before we can be confident the libMesh PR is ready to merge.

Design

  1. In places where MOOSE is relying on cached data from an unprepared mesh, test is_prepared() first and prepare if necessary.
  2. When MOOSE is doing mesh splitting, keep repartitioning disabled until right before splitting the mesh; otherwise when libMesh starts correctly noting that unpartitioned meshes are unprepared, earlier MOOSE prepare_for_use() calls can trigger partitioning before the split, when a split-detail-dependent partitioner like a manual GridPartitioner setting may be unable to handle it.

Impact

In theory no impact. When we merge the next libMesh submodule there may be other similar errors exposed downstream.

Upcoming libMesh versions will assert that we're not trying to access
certain types of cached data (like mesh dimensions) that isn't marked as
already prepared.

Also, in general it isn't safe to be using cached data that isn't marked
as prepared.

Refs idaholab#15945
This fixes libMesh/libmesh#3759 regressions in
the GridPartitioner mesh splitting tests for me.  When we recognize that
an unpartitioned mesh is unprepared (which the libMesh PR now does), and
that prompts MOOSE to call prepare_for_use(), we'd better still have
partitioning disabled unless we want to see some partitioning.
libMesh is going to start screaming if it's asked to report certain
types of cached data on unprepared meshes.
@moosebuild
Copy link
Contributor

moosebuild commented Dec 17, 2025

Job Documentation, step Docs: sync website on f6f24a5 wanted to post the following:

View the site here

This comment will be updated on new commits.

@moosebuild
Copy link
Contributor

Job Precheck, step Clang format on 47b5a99 wanted to post the following:

Your code requires style changes.

A patch was auto generated and copied here
You can directly apply the patch by running, in the top level of your repository:

curl -s https://mooseframework.inl.gov/docs/PRs/32111/clang_format/style.patch | git apply -v

Alternatively, with your repository up to date and in the top level of your repository:

git clang-format cc8efb17aaf2ad99f3b7b3ab2742a5b0afd4bb7e

@loganharbour loganharbour dismissed their stale review December 17, 2025 13:03

Change addressed

@moosebuild
Copy link
Contributor

Job Test, step Results summary on f6f24a5 wanted to post the following:

Framework test summary

Compared against cc8efb1 in job civet.inl.gov/job/3456352.

No change

Modules test summary

Compared against cc8efb1 in job civet.inl.gov/job/3456352.

No added tests

Run time changes

Test Base (s) Head (s) +/- Base (MB) Head (MB)
stochastic_tools/test:web_server_control.stochastic_control/batch_reset_multi 6.87 3.06 -55.49% 228.22 242.91

@moosebuild
Copy link
Contributor

Job Coverage, step Generate coverage on f6f24a5 wanted to post the following:

Framework coverage

cc8efb #32111 f6f24a
Total Total +/- New
Rate 85.81% 85.81% +0.00% 100.00%
Hits 125706 125711 +5 3
Misses 20792 20788 -4 0

Diff coverage report

Full coverage report

Modules coverage

Peridynamics

cc8efb #32111 f6f24a
Total Total +/- New
Rate 77.76% 77.76% +0.01% 100.00%
Hits 3129 3130 +1 2
Misses 895 895 - 0

Diff coverage report

Full coverage report

Full coverage reports

Reports

This comment will be updated on new commits.

@roystgnr roystgnr merged commit 8dba19c into idaholab:next Dec 17, 2025
70 checks passed
@roystgnr roystgnr deleted the preparedness_fixes branch December 17, 2025 18:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants