What does the message imply? That PETSc error handler is misbehaving? or that the user code is wrong? I don't understand. This is the latest release with a faulty code that I use as an example for using valgrind and gdb.
[0]PETSC ERROR: Memory corruption: https://petsc.org/release/faq/#valgrind [0]PETSC ERROR: Corrupted memory [0]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting. [0]PETSC ERROR: Petsc Release Version 3.18.1, unknown [0]PETSC ERROR: ./vecerror on a arch-ecrcml-double-debug named localhost.localdomain by szampini Fri Nov 4 12:01:33 2022 [0]PETSC ERROR: Configure options ... [0]PETSC ERROR: #1 PetscTrFreeDefault() at /home/szampini/Devel/miniforge/Devel/petsc/src/sys/memory/mtr.c:305 [0]PETSC ERROR: #2 VecDestroy_Seq() at /home/szampini/Devel/miniforge/Devel/petsc/src/vec/vec/impls/seq/bvec2.c:753 [0]PETSC ERROR: #3 VecDestroy() at /home/szampini/Devel/miniforge/Devel/petsc/src/vec/vec/interface/vector.c:521 [0]PETSC ERROR: #4 main() at /home/szampini/Devel/petscexamples/debugging/vecerror.c:22 [0]PETSC ERROR: Reached the main program with an out-of-range error code 1. This should never happen -- Stefano