Hello,
Up until very recently, MatGetOwnershipRange() was returning only zeros for any 
MATNORMAL (thanks Stefano for the help fixing that 
https://gitlab.com/petsc/petsc/-/merge_requests/4182#note_640848528 
<https://gitlab.com/petsc/petsc/-/merge_requests/4182#note_640848528>).
In CRSetup_Private(), there is a call to MatCreateNormal() followed by 
MatShift().
Since ops->shift = NULL for MATNORMAL, code goes into MatShift_Basic().
There, a for loop goes from “start” to “end”, but the values were previously 
only 0.
Now that MatGetOwnershipRange() has been fixed for MATNORMAL, the bounds are 
nonzero, and snes_tutorials-ex20_2d_p1_gmg_vcycle_cr fails because MATNORMAL 
has no ops->setvalues
What is the proper fix or how can I bypass the issue? Would it be OK to 
(temporarily) mark this test as broken?
Previous code was obviously not doing what was intended in theory, but yet I’m 
guessing numerically everything was OK?
I’m thinking https://gitlab.com/petsc/petsc/-/issues/972 
<https://gitlab.com/petsc/petsc/-/issues/972> should do the trick, but this is 
somehow orthogonal to my developments, which are now blocked because of failing 
pipelines in snes_tutorials-ex20_2d_p1_gmg_vcycle_cr 
(https://gitlab.com/petsc/petsc/-/jobs/1475595231 
<https://gitlab.com/petsc/petsc/-/jobs/1475595231>).

Thanks,
Pierre

$ make -f gmakefile test query='name' 
queryval="*snes_tutorials-ex20_2d_p1_gmg_vcycle_cr*"
Using MAKEFLAGS: queryval=*snes_tutorials-ex20_2d_p1_gmg_vcycle_cr* query=name
        TEST 
arch-darwin-c-debug-real/tests/counts/snes_tutorials-ex20_2d_p1_gmg_vcycle_cr.counts
not ok snes_tutorials-ex20_2d_p1_gmg_vcycle_cr # Error code: 56
#       [0]PETSC ERROR: --------------------- Error Message 
--------------------------------------------------------------
#       [0]PETSC ERROR: No support for this operation for this object type
#       [0]PETSC ERROR: Mat type normal
#       [0]PETSC ERROR: See 
https://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
#       [0]PETSC ERROR: Petsc Development GIT revision: v3.15.2-633-gdc9bbe6e6a 
 GIT Date: 2021-08-03 20:53:25 +0200
#       [0]PETSC ERROR: ../ex20 on a arch-darwin-c-debug-real named 
aardvark.local by jolivet Wed Aug  4 10:04:59 2021
#       [0]PETSC ERROR: Configure options --download-c2html 
--download-elemental --download-hpddm --download-hpddm-commit=origin/omp 
--download-htool --download-htool-commit=origin/main --download-hypre 
--download-metis --download-suitesparse --download-mmg --download-mumps 
--download-hwloc --download-p4est --download-parmetis --download-parmmg 
--download-ptscotch --download-slepc --download-slepc-commit=origin/main 
--download-slepc-configure-arguments="--download-arpack=https://github.com/prj-/arpack-ng/archive/b64dccb.tar.gz";
 --download-tetgen --download-triangle --download-zlib 
--with-blaslapack-include=/opt/intel/oneapi/mkl/latest/include 
--with-blaslapack-lib="[/opt/intel/oneapi/compiler/latest/mac/compiler/lib/libiomp5.dylib,/opt/intel/oneapi/mkl/latest/lib/libmkl_intel_lp64.dylib,/opt/intel/oneapi/mkl/latest/lib/libmkl_intel_thread.dylib,/opt/intel/oneapi/mkl/latest/lib/libmkl_core.dylib]"
 --with-fortran-bindings=1 
--with-mkl_cpardiso-include=/opt/intel/oneapi/mkl/latest/include 
--with-mkl_cpardiso=1 
--with-mkl_pardiso-include=/opt/intel/oneapi/mkl/latest/include 
--with-mkl_pardiso=1 --with-opengl=1 --with-petsc4py 
--with-scalapack-include=/opt/intel/oneapi/mkl/latest/include 
--with-scalapack-lib="[/opt/intel/oneapi/mkl/latest/lib/libmkl_scalapack_lp64.dylib,/opt/intel/oneapi/mkl/latest/lib/libmkl_blacs_mpich_lp64.dylib]"
 --with-scalar-type=real --with-shared-libraries=1 CFLAGS="-Wall -g" 
CXXFLAGS="-Wall -g" FFLAGS="-Wall -ffree-line-length-512 -g" 
PETSC_ARCH=arch-darwin-c-debug-real
#       [0]PETSC ERROR: #1 MatSetValues() at 
/Users/jolivet/Documents/repositories/petsc/src/mat/interface/matrix.c:1376
#       [0]PETSC ERROR: #2 MatShift_Basic() at 
/Users/jolivet/Documents/repositories/petsc/src/mat/utils/gcreate.c:26
#       [0]PETSC ERROR: #3 MatShift() at 
/Users/jolivet/Documents/repositories/petsc/src/mat/utils/axpy.c:309
#       [0]PETSC ERROR: #4 CRSetup_Private() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/impls/mg/mg.c:300
#       [0]PETSC ERROR: #5 PCSetUp_Shell() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/impls/shell/shellpc.c:101
#       [0]PETSC ERROR: #6 PCSetUp() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/interface/precon.c:1016
#       [0]PETSC ERROR: #7 PCApply() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/interface/precon.c:441
#       [0]PETSC ERROR: #8 PCApply_Composite_Multiplicative() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/impls/composite/composite.c:50
#       [0]PETSC ERROR: #9 PCApply() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/interface/precon.c:445
#       [0]PETSC ERROR: #10 KSP_PCApply() at 
/Users/jolivet/repo/petsc/include/petsc/private/kspimpl.h:365
#       [0]PETSC ERROR: #11 KSPInitialResidual() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itres.c:65
#       [0]PETSC ERROR: #12 KSPSolve_GMRES() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/impls/gmres/gmres.c:246
#       [0]PETSC ERROR: #13 KSPSolve_Private() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itfunc.c:912
#       [0]PETSC ERROR: #14 KSPSolve() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itfunc.c:1084
#       [0]PETSC ERROR: #15 KSPSetUp_Chebyshev() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/impls/cheby/cheby.c:87
#       [0]PETSC ERROR: #16 KSPSetUp() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itfunc.c:365
#       [0]PETSC ERROR: #17 PCSetUp_MG() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/impls/mg/mg.c:1247
#       [0]PETSC ERROR: #18 PCSetUp() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/pc/interface/precon.c:1016
#       [0]PETSC ERROR: #19 KSPSetUp() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itfunc.c:406
#       [0]PETSC ERROR: #20 KSPSolve_Private() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itfunc.c:850
#       [0]PETSC ERROR: #21 KSPSolve() at 
/Users/jolivet/Documents/repositories/petsc/src/ksp/ksp/interface/itfunc.c:1084
#       [0]PETSC ERROR: #22 SNESSolve_NEWTONLS() at 
/Users/jolivet/Documents/repositories/petsc/src/snes/impls/ls/ls.c:225
#       [0]PETSC ERROR: #23 SNESSolve() at 
/Users/jolivet/Documents/repositories/petsc/src/snes/interface/snes.c:4769
#       [0]PETSC ERROR: #24 main() at 
/Users/jolivet/Documents/repositories/petsc/src/snes/tutorials/ex20.c:175
#       [0]PETSC ERROR: PETSc Option Table entries:
#       [0]PETSC ERROR: -dm_plex_box_faces 2,2
#       [0]PETSC ERROR: -dm_refine_hierarchy 3
#       [0]PETSC ERROR: -ksp_rtol 5e-10
#       [0]PETSC ERROR: -mg_levels_cr_ksp_converged_rate
#       [0]PETSC ERROR: -mg_levels_cr_ksp_converged_rate_type error
#       [0]PETSC ERROR: -mg_levels_cr_ksp_max_it 5
#       [0]PETSC ERROR: -mg_levels_esteig_ksp_max_it 10
#       [0]PETSC ERROR: -mg_levels_esteig_ksp_type cg
#       [0]PETSC ERROR: -mg_levels_ksp_chebyshev_esteig 0,0.05,0,1.05
#       [0]PETSC ERROR: -mg_levels_ksp_max_it 5
#       [0]PETSC ERROR: -mg_levels_ksp_norm_type preconditioned
#       [0]PETSC ERROR: -pc_mg_adapt_cr
#       [0]PETSC ERROR: -pc_type mg
#       [0]PETSC ERROR: -potential_petscspace_degree 1
#       [0]PETSC ERROR: ----------------End of Error Message -------send entire 
error message to petsc-ma...@mcs.anl.gov----------
#       Abort(56) on node 0 (rank 0 in comm 0): application called 
MPI_Abort(MPI_COMM_WORLD, 56) - process 0
 ok snes_tutorials-ex20_2d_p1_gmg_vcycle_cr # SKIP Command failed so no diff


# FAILED snes_tutorials-ex20_2d_p1_gmg_vcycle_cr
#
# To rerun failed tests:
#     /usr/bin/make -f gmakefile test test-fail=1

Reply via email to