How to investigate message glibc detected *** dbvrep APPLY TEST: malloc(): memory corruption: 0x000000000d7fc420 ***
Problem Description
The main purpose of this article is to help investigate dbvisit support and development team problem with memory corruption. The article can be used in case you are able to reproduce the problem with memory corruption.
Steps Performed
set in the session export
export MALLOC_CHECK_=2
[http://www.novell.com/support/kb/doc.php?id=3113982]check value for command
ulimit -c
and dbvisit user. If there will be zero, You can executeulimit -c unlimited
. It should enable core dump. (optional)
Check if trace file was generated in replication home i.e. /u01/dbvisit/replicate/rep01/log/trace. Don't worry if trace file won't exists.
Let's try to start apply process without daemon variable (start it together with strace command). Beware the session shouldn't be closed, because the process is running in the foreground. In case it takes some time to reproduce the problem use screen program for the session.
EXEC="/home/oracle/dbvrep/280/dbvrep"
$EXEC --daemon --ddcfile /home/oracle/dbvrep/280/LOAD/LOAD-APPLY.ddc start APPLY
change to:
EXEC="/home/oracle/dbvrep/280/dbvrep"
$EXEC --ddcfile /home/oracle/dbvrep/280/LOAD/LOAD-APPLY.ddc start APPLY
use strace:
strace $EXEC --ddcfile /home/oracle/dbvrep/280/LOAD/LOAD-APPLY.ddc start APPLY
Write us what's your OS version (
cat /etc/*issue*
) and kernel version -uname -r
.check what's written /etc/log/messages after apply process crash
Create or update the ticket with above information.
Related to this issue could happen the plog opened by the apply process is corrupted. In this case, you can try to 1) stop apply processrename
2. rename plog from apply process
3. copy the plog with equal sequence from mine process
4. start the apply process and see apply log if issue happens again
Keywords: glibc; dbvisit replicate; memory corruption