Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

petsc-3.5: SNES_VI_(N)INF --> PETSC_(N)INFINITY #206

Merged
merged 2 commits into from Apr 15, 2014

Conversation

Projects
None yet
5 participants
Contributor

karpeev commented Feb 20, 2014

Upcoming petsc-3.5 API change.
Needed to compile libmesh against a recent petsc/master.

Owner

jwpeterson commented Feb 20, 2014

Use the new PETSC_RELEASE_LESS_THAN macro.

A build job for 6a8aa9c from recipe libmesh is waiting for a developer to activate it here: https://www.moosebuild.com/view_job/560

Results of testing 6a8aa9c using libmesh recipe:

Failed on: linux

View the results here: https://www.moosebuild.com/view_job/560

Owner

friedmud commented Mar 23, 2014

Those compile failures look real to me... Can you tell what's wrong @karpeev ?

Owner

jwpeterson commented Mar 24, 2014

On Sun, Mar 23, 2014 at 3:37 PM, Derek Gaston notifications@github.comwrote:

Those compile failures look real to me... Can you tell what's wrong
@karpeev https://github.com/karpeev ?

Looks like moosebuild is trying to compile a file that has a merge conflict
in it...

./include/libmesh/petsc_nonlinear_solver.h:41:1: error: expected

unqualified-id before '<<' token

and:

../src/solvers/petsc_linear_solver.C:337:9: error: invalid suffix

"a8aa9c3e602d1dc4f90669387a3f94d6b0c8f87" on integer constant

Here's the conflict message from the moosebuild logs:

Switched to a new branch 'test' From github.com:karpeev/libmesh * branch

petsc-3.5 -> FETCH_HEAD
Auto-merging src/solvers/petscdmlibmesh.C
Auto-merging src/solvers/petsc_nonlinear_solver.C
Auto-merging src/solvers/petsc_linear_solver.C
CONFLICT (content): Merge conflict in src/solvers/petsc_linear_solver.C
Auto-merging src/solvers/petsc_diff_solver.C CONFLICT (content): Merge
conflict in src/solvers/petsc_diff_solver.C
Auto-merging src/numerics/petsc_preconditioner.C
Auto-merging include/solvers/petsc_nonlinear_solver.h CONFLICT (content):
Merge conflict in include/solvers/petsc_nonlinear_solver.h
Automatic merge failed; fix conflicts and then commit the result.

Dmitry is going to rebase this branch some time today and fix the
conflicts...

I don't understand why there is a conflict though?

John

Member

permcody commented Mar 24, 2014

I don't know why there is a conflict either but I can fixup the recipe so
that it errors out properly if there is a merge conflict before testing.
This has been done for all of the MOOSE recipes, but I haven't touched the
libMesh recipe yet.

Gotta check 'em return codes!

Cody

On Mon, Mar 24, 2014 at 8:24 AM, jwpeterson notifications@github.comwrote:

On Sun, Mar 23, 2014 at 3:37 PM, Derek Gaston <notifications@github.com

wrote:

Those compile failures look real to me... Can you tell what's wrong
@karpeev https://github.com/karpeev ?

Looks like moosebuild is trying to compile a file that has a merge conflict
in it...

./include/libmesh/petsc_nonlinear_solver.h:41:1: error: expected

unqualified-id before '<<' token

and:

../src/solvers/petsc_linear_solver.C:337:9: error: invalid suffix

"a8aa9c3e602d1dc4f90669387a3f94d6b0c8f87" on integer constant

Here's the conflict message from the moosebuild logs:

Switched to a new branch 'test' From github.com:karpeev/libmesh * branch

petsc-3.5 -> FETCH_HEAD
Auto-merging src/solvers/petscdmlibmesh.C
Auto-merging src/solvers/petsc_nonlinear_solver.C
Auto-merging src/solvers/petsc_linear_solver.C
CONFLICT (content): Merge conflict in src/solvers/petsc_linear_solver.C
Auto-merging src/solvers/petsc_diff_solver.C CONFLICT (content): Merge
conflict in src/solvers/petsc_diff_solver.C
Auto-merging src/numerics/petsc_preconditioner.C
Auto-merging include/solvers/petsc_nonlinear_solver.h CONFLICT (content):
Merge conflict in include/solvers/petsc_nonlinear_solver.h
Automatic merge failed; fix conflicts and then commit the result.

Dmitry is going to rebase this branch some time today and fix the
conflicts...

I don't understand why there is a conflict though?

John

Reply to this email directly or view it on GitHubhttps://github.com/libMesh/libmesh/pull/206#issuecomment-38450059
.

Owner

jwpeterson commented Mar 24, 2014

I don't know why there is a conflict either but I can fixup the recipe so
that it errors out properly if there is a merge conflict before testing.

Thanks Cody! I think Dmitry and I determined that his conflicts are due to whitespace changes I made on the master branch, and the fact that he has this long-lived feature branch that is not periodically rebased/merged from master...

A build job for 7ada847 from recipe libmesh is waiting for a developer to activate it here: https://www.moosebuild.com/view_job/1161

Results of testing 7ada847 using libmesh recipe:

Passed on: linux

View the results here: https://www.moosebuild.com/view_job/1161

Owner

jwpeterson commented Apr 15, 2014

This branch got rebased, (--force) pushed, and the pull request seems to
have triggered (and passed) a moosebuild action. Dmitry.

On Mon, Mar 24, 2014 at 9:24 AM, John Peterson jwpeterson@gmail.com wrote:

On Sun, Mar 23, 2014 at 3:37 PM, Derek Gaston notifications@github.comwrote:

Those compile failures look real to me... Can you tell what's wrong
@karpeev https://github.com/karpeev ?

Looks like moosebuild is trying to compile a file that has a merge
conflict in it...

./include/libmesh/petsc_nonlinear_solver.h:41:1: error: expected

unqualified-id before '<<' token

and:

../src/solvers/petsc_linear_solver.C:337:9: error: invalid suffix

"a8aa9c3e602d1dc4f90669387a3f94d6b0c8f87" on integer constant

Here's the conflict message from the moosebuild logs:

Switched to a new branch 'test' From github.com:karpeev/libmesh * branch

petsc-3.5 -> FETCH_HEAD
Auto-merging src/solvers/petscdmlibmesh.C
Auto-merging src/solvers/petsc_nonlinear_solver.C
Auto-merging src/solvers/petsc_linear_solver.C
CONFLICT (content): Merge conflict in src/solvers/petsc_linear_solver.C
Auto-merging src/solvers/petsc_diff_solver.C CONFLICT (content): Merge
conflict in src/solvers/petsc_diff_solver.C
Auto-merging src/numerics/petsc_preconditioner.C
Auto-merging include/solvers/petsc_nonlinear_solver.h CONFLICT
(content): Merge conflict in include/solvers/petsc_nonlinear_solver.h
Automatic merge failed; fix conflicts and then commit the result.

Dmitry is going to rebase this branch some time today and fix the
conflicts...

I don't understand why there is a conflict though?

John

@friedmud friedmud commented on the diff Apr 15, 2014

src/numerics/petsc_preconditioner.C
int ierr = PCSetOperators(_pc,_mat,_mat,SAME_NONZERO_PATTERN);
+#else
+ int ierr = PCSetOperators(_pc,_mat,_mat);
@friedmud

friedmud Apr 15, 2014

Owner

Why don't we pass SAME_NONZERO_PATTERN anymore?

No extra indentation level within namespaces.

Owner

karpeev replied Apr 15, 2014

Okay, I'll push an amended commit.

@karpeev can you comment on what is happening to the SAME_NONZERO_PATTERN flag that used to be passed to PCSetOperators and KSPSetOperators? Is that flag somehow taken from one of the Mat objects in PETSc dev/3.5? If so, where is that flag actually being set in libmesh now?

Contributor

karpeev commented Apr 15, 2014

There is no longer a need for the user to set the nonzero pattern flag: Mat and KSP/PC objects keep track of the nonzero state of the underlying matrix (Mat changes its nonzero state every time the nonzero pattern actually changes). If the Mat's and KSP's states diverge, the PC is rebuilt.

friedmud added a commit that referenced this pull request Apr 15, 2014

Merge pull request #206 from karpeev/petsc-3.5
petsc-3.5: SNES_VI_(N)INF --> PETSC_(N)INFINITY

@friedmud friedmud merged commit 17ab1d6 into libMesh:master Apr 15, 2014

1 check passed

default Successfully passed all tests
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment