Kbase P18637: 761 occuring due to bi corruption while doing checkpoint
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  2/3/2003 |
|
Status: Unverified
FACT(s) (Environment):
Progress 8.2x
FACT(s) (Environment):
UNIX
SYMPTOM(s):
Database shuts down due to 761 error.
Users still connected to the db start failing with 5028 and 5026 errors.
OID (OIDriver) then terminate with 49 errors.
SYSTEM ERROR: bkwrite for .bi block with negative addr: <number> (761)
SYSTEM ERROR: Releasing regular latch. latchId: <latch-num> (5028)
SYSTEM ERROR: Releasing regular latch. latchId: 1 (5028)
User <num> died holding <num> shared memory locks. (5026)
SYSTEM ERROR: Memory violation. (49)
Stack trace from OID Processes:
Command line arguments are
/u/dlc/bin/_prooidv -SV -m1 -U -P -N TCP -Nd /dev/tcp -hs 0 -Mm 1024 -h 5 -yy 1950 -cpinternal iso8859-1 -cpstream iso8859-1 -cpterm iso8859-1 -cpcase basic -cpcoll basic -S odbcprsv
( 0) 0x00189fe0 uttraceback + 0x18 [/u/dlc/bin/_prooidv]
( 1) 0x00179e40 uttrace + 0xa8 [/u/dlc/bin/_prooidv]
( 2) 0x00179cfc utcore + 0xbc [/u/dlc/bin/_prooidv]
( 3) 0x0001a920 drexit + 0x2b0 [/u/dlc/bin/_prooidv]
( 4) 0x00040c44 drSigFatal + 0x68 [/u/dlc/bin/_prooidv]
( 5) 0xc013dce0 _sigreturn [/usr/lib/libc.1]
( 6) 0x000497d0 nsahrecv + 0xa0 [/u/dlc/bin/_prooidv]
( 7) 0x00044d84 nsasrvhli + 0xbc [/u/dlc/bin/_prooidv]
( 8) 0x000448a8 main + 0x670 [/u/dlc/bin/_prooidv]
( 9) 0xc00646bc _start + 0x8c [/usr/lib/libc.1]
(10) 0x0000d284 $START$ + 0x134 [/u/dlc/bin/_prooidv]
Before Image Blocksize is 1024
CAUSE:
Bug# 19980331-015
CAUSE:
The problem was a race condition between the BIW and a client writing a checkpoint note that spanned blocks. During this race condition the information in the cluster header regarding the current block is inconsistent with the buffer a client is writing. This is fatal and results in the database shutting down in such a way that crash recovery is impossible.
FIX:
Problem was fixed in 8.3A and 9.0A. Upgrade to the latest Progress 8.X or 9.X release.
One way to avoid experiencing this problem is to change your biblocksize to 8192 instead of 1024.
Syntax: proutil dbname -C truncate bi -biblocksize 8192