-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove support for PETSc < 3.5 #19197
Conversation
Job Documentation on 50cf97b wanted to post the following: View the site here This comment will be updated on new commits. |
EDIT: nevermind, I think we'll merge October a little early and allow folks to enter entries in their own PRs through the end of the month. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please modify affected petsc_version
parameters in tests to be >= 3.5.0
where applicable as well. I see only a few with a quick search.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have something like this in Moose.h
#ifndef LIBMESH_HAVE_PETSC
#error PETSc has not been detected, please ensure your environment is set up properly then rerun the libmesh build script and try to compile MOOSE again.
#endif
I think we should add a similar thing for this change as well:
#if PETSC_VERSION_LESS_THAN(3, 5, 0)
#error PETSc-3.5.x or newer is required, please ensure your environment have the required version of PETSc
#endif
I can add this but I don't know how users would ever hit this error if they cannot even build libmesh with PETSc < 3.5 |
Am I right in assuming that |
Job Generate and verify coverage on 50cf97b wanted to post the following: Framework coverage
Modules coverageContact
Full coverage reportsReportsWarnings
This comment will be updated on new commits. |
I believe |
Yeah, but a |
Looking at PETSc source, it seems that having the parameter set to |
Yeah, this seems pretty clear. My point here is that this condition probably makes sense in a narrow time window around when that minimum required version is first available in master. Two years later the reason for choosing release over master is most likely irrelevant because both branches have moved on so far. |
Yes, I agree. I was just pointing out how limited our current description in For suitably old tests, they should probably be removed. We have some more recent ones where it might still be applicable. |
I don’t know that libmesh has a minimum supported PETSc version so I think the error in MOOSE makes sense |
@roystgnr mentioned on slack that support for PETSc < 3.5 was cut from libmesh in February. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My comments were addressed. @fdkong, do you have any more?
MatColoringDestroy(&mc); | ||
#endif | ||
ISColoringDestroy(&iscoloring); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this the problem @dschwen
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If PESTC version is _not _ less than 3.5 use MatColoringDestroy
... so this looks right to me. ISColoringDestroy
seems to be the legacy call. But this is where I looked first. It has to be related to this function, and in particular the teardown of the datastructures here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤡
Closes #19195