Results 1 to 15 of 15
  1. #1
    Join Date
    Mar 2008
    Posts
    136

    Unanswered: ADM1832E error got ????

    Hi,
    I am getting this error in notification file.
    What meaning of this error and how to resolve it...Please reply ASAP

    ADM1832E DB2 was unable to find the user exit program when archiving log file
    "S0000011.LOG" from "/home/db/db/NODE0000/SQL00001/SQLOGDIR/" for
    database "db". The error code was "24".

    and one more message is getting
    "Still unable to archive log file 11 due to rc 24 for LOGARCHMETH1 using method 4 and target ."

    Thanks & Regards
    Pawan

  2. #2
    Join Date
    Mar 2008
    Posts
    4
    which method/parameters are you using for archive the logs files.

  3. #3
    Join Date
    Mar 2008
    Posts
    136

    parameters list

    Log file size (4KB) (LOGFILSIZ) = 1000
    Number of primary log files (LOGPRIMARY) = 3
    Number of secondary log files (LOGSECOND) = 2
    Changed path to log files (NEWLOGPATH) =
    Path to log files = /home/carsdb2/carsdb2/NODE0000/SQL00001/SQLOGDIR/
    Overflow log path (OVERFLOWLOGPATH) =
    Mirror log path (MIRRORLOGPATH) =
    First active log file = S0000027.LOG
    Block log on disk full (BLK_LOG_DSK_FUL) = NO
    Percent of max active log space by transaction(MAX_LOG) = 0
    Num. of active log files for 1 active UOW(NUM_LOG_SPAN) = 0
    First log archive method (LOGARCHMETH1) = USEREXIT
    Options for logarchmeth1 (LOGARCHOPT1) =
    Second log archive method (LOGARCHMETH2) = OFF
    Options for logarchmeth2 (LOGARCHOPT2) =
    Failover log archive path (FAILARCHPATH) =
    Number of log archive retries on error (NUMARCHRETRY) = 5
    Log archive retry Delay (secs) (ARCHRETRYDELAY) = 20
    Vendor options (VENDOROPT) =

  4. #4
    Join Date
    Mar 2008
    Posts
    4
    Provide the values for this parameter also:

    User exit for logging enabled (USEREXIT) = OFF

    and also the db2level of your instance.
    do you want to move the archive log files by using userexit program??

  5. #5
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    Setting up for userexit for archiving logs is partially manual. You need to supply the userexit routine and place it in <INSTHOME>/sqllib/adm.

    Andy

  6. #6
    Join Date
    Mar 2008
    Posts
    136
    yes I want to move the archive log files by using userexit program...
    what should I do??

  7. #7
    Join Date
    Jan 2003
    Posts
    4,292
    Provided Answers: 5
    It depends on what you want to do with them. If you want to send them to a third party backup solution like Veritas NetBackup, they will supply you with a userexit routine. If you want to just send them to another storage location, you do not need a userexit, you can use the LOGARCHMETH1.

    Andy

  8. #8
    Join Date
    Apr 2008
    Posts
    51
    IBM's implementation of LOGARCHMETH1 leaves much to be desired - I try to stay away. Instead a simple shell script will do the job of moving log files to an "archive" location and retrieving from there. Here is one example ...
    .
    #!/bin/ksh
    usr=`id|cut -f2 -d'('|cut -f1 -d')'`
    if [[ .$HOME = . ]]; then
    export HOME=`grep $usr':!:' /etc/passwd|cut -d: -f6`
    fi
    if ! [[ -d ~/USEREXIT ]]; then
    mkdir ~/USEREXIT
    fi
    mlog=~/USEREXIT/USEREXIT.LOG
    elog=~/USEREXIT/USEREXIT.ERR
    fc=`echo $3|cut -c4-15`
    db=`echo $4|cut -c4-15`
    lp=`echo $5|cut -c8-11`
    dr=`echo $6|cut -c4-1000`
    lg=`echo $7|cut -c4-1000`
    msg1="`date +%Y%m%d%H%M%S`"' DB: '$db' LDP: '$lp
    if [[ .$fc == .ARCHIVE ]]; then
    if ! [[ -d $dr"ARCH" ]]; then
    mkdir $dr"ARCH">>$mlog 2>>$elog
    echo "$msg1" ' Created log archive directory: '$dr"ARCH">>$mlog
    fi
    if [[ -f $dr$lg ]]; then
    cp $dr$lg $dr"ARCH/"$lg>>$mlog 2>>$elog
    echo "$msg1" ' REQ: '$fc' LOG: '$lg>>$mlog
    else
    echo "$msg1" ' REQ: '$fc' LOG: '$lg' (NOT FOUND)'>>$mlog
    fi
    elif [[ .$fc == .RETRIEVE ]]; then
    if [[ -f $dr"ARCH/"$lg ]]; then
    cp $dr"ARCH/"$lg $dr$lg>>$mlog 2>>$elog
    echo "$msg1" ' REQ: '$fc' LOG: '$lg>>$mlog
    else
    echo "$msg1" ' REQ: '$fc' LOG: '$lg' (NOT FOUND)'>>$mlog
    fi
    else
    echo "$msg1" ' REQ: '$fc' (INVALID) '>>$elog
    fi
    exit 0
    .
    db2topgun.com

  9. #9
    Join Date
    Feb 2009
    Posts
    18
    Hello, does anyone have a solution for message "DB2 was unable to find the user exit program when archiving log file"

  10. #10
    Join Date
    Apr 2008
    Posts
    51
    Look for sqllib/adm/db2uext2
    db2topgun.com

  11. #11
    Join Date
    Feb 2009
    Posts
    18
    the file does exist in /sqllib/adm
    it is an executable file
    i also have userxit=on and logarchmeth1 = userexit
    i also performed a backup
    but i still get the same error message
    do you have any more advice, please. thanks

  12. #12
    Join Date
    Aug 2008
    Location
    Toronto, Canada
    Posts
    2,367
    check if you have db2uext2 in .../sqllib/bin (could be an older version there). bin usually comes before adm in the path.

  13. #13
    Join Date
    Feb 2009
    Posts
    18
    i checked and that file only exitsts in /sqllib/adm/ directory.
    thanks

  14. #14
    Join Date
    Aug 2008
    Location
    Toronto, Canada
    Posts
    2,367
    rc 24 usually indicates that the userexit in not found in adm or bin. Was the userexit compiled on the same system and was the compilation successful? check permissions on the userexit and try to restart the instance (sometimes it helps). check if there are any additional errors in the db2diag.log prior to "failed to archive" (ie. permission issue)

    Do you really want to continue using userexit? setting logarchmeth1 is much simpler.

  15. #15
    Join Date
    Feb 2009
    Posts
    18
    Thank you, i realised that i did not configure the file on the same system. So thats what i did now, and it works 100%. Thank you kindly db2girl

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •