FW: Informix halts for no obvious reason ?!
Posted in 1997
Topics: Storage & Space Management, Error Codes & Troubleshooting, Server Administration, Transactions, Locking & Isolation, Logging & Checkpoints, Networking & sqlhosts Configuration, Migration, Import/Export & Data Conversion
Hi=20
We have experienced this problem many many times on Informix Online =
5.05
UC3 on DecAlpha2100 Unix 3.0b.
Our machine froze with CHKPT REQD. All users waiting. Machine Hung - no =
response. Sometimes aborted. Rebooted to get going again. Tech support =
logged in a few times and assisted, but afterwards we started to fix it =
ourselves.
There seems to be some bad records or bad pointers to records in one or
more tables. In your case the PARTNUM is the tablename in hex.
Select tabname, hex(partnum) from systables, (I think) to get table =name.
FIX: In ISQL, Unload the table, (unload to mytable select rowid, * from =
"table".
When it reaches the bad record, you get an ISAM error saying "cannot do =
a
read to fetch next row".
Get the rowid. Read starting at the next readable rowid.
When all the data is unloaded, rename the original table(to keep intact)
and recreate schema and reload data.
This we did time after time, on many, many tables. Mainly the blobs and
blob pointers got corrupted. Also, there is a bug which causes writes of
log records to data files causing some corruption. Bug is fixed in
5.08.
If this is relevant to you, pls reply for lots, lots more information.=20
In the meantime, do a tbcheck -cD databasename > file1 =20
Look at file1 to see the files with errors.
lbj
lbj@petrotrin.com
----------
} From: Milen Metodiev <dbadmin@svilosa.bis.bg>
} To: Informix Mailing List <informix-list@rmy.emory.edu>
} Subject: Informix halts for no obvious reason ?!
} Date: Wednesday, September 03, 1997 3:15 AM
}=20
}=20
} Hi, folks.
}=20
} This is the umpteenth time this happens, so I wonder
} if anyone can help. Even a few hints will be more than
} welcome.
}=20
} When the system is busy enough ( 20-30 users of Informix )
} and people start issuing "heavy" queries, Informix falls into
} a strange deadlock. It looks like one process is in a critical
} section, and won't leave it. Informix waits for this process
} to get out of its critical section, so that it can complete
} the pending checkpoint. In the end, all users end up waiting
} for this checkpoint, which never occurs.
}=20
} It happens to random users, using random programs, i.e. there
} is no any consistency about this behaviour.
}=20
} Here is some information about our version of Informix, etc.
}=20
} =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D
} Database: Informix OnLine 5.0.2.UC6
} OS : SCO OpenServer Enterprise System Release 3.0
} E-mail : dbadmin@svilosa.bis.bg
} =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D
}=20
} The following is a listing of a file containing a snapshot of
} the system at the time of the failure:
}=20
}=20
} RSAM Version 5.01.UD2 -- On-Line (CKPT REQ) -- Up 01:14:09 -- 20288
Kbytes
}=20
} Message Log File: /usr/runtime/online.log
} ted
} 08:10:22 Checkpoint Completed
} 08:10:27 Checkpoint Completed
} 08:14:11 Checkpoint Completed
} 08:14:13 Checkpoint Completed
} 08:14:16 Checkpoint Completed
} 08:14:22 Checkpoint Completed
} 08:14:26 Checkpoint Completed
} 08:14:30 Checkpoint Completed
} 08:14:34 Checkpoint Completed
} 08:15:43 Checkpoint Completed
} 08:17:30 Checkpoint Completed
} 08:18:18 Checkpoint Completed
} 08:18:35 Checkpoint Completed
} 08:19:53 Checkpoint Completed
} 08:25:04 Checkpoint Completed
} 08:28:10 Checkpoint Completed
}=20
} Configuration File: /usr/runtime/etc/tbconfig
}
#************************************************************************=
**
} #
} # INFORMIX SOFTWARE, INC.
} #
} # Title: tbconfig.std
} # Sccsid: @(#)tbconfig.std 9.1.1.1 1/11/92 19:15:16
} # Description: INFORMIX-OnLine Configuration Parameters
} #
}
#************************************************************************=
**
}=20
} # Root Dbspace Configuration
}=20
} ROOTNAME rootdbs # Root dbspace name
} ROOTPATH /usr/runtime/chunks/Chunk1=20
} # Path for device containing root =
dbspace
} ROOTOFFSET 50 # Offset of root dbspace into device
(Kbytes)
} ROOTSIZE 683000 # Size of root dbspace (Kbytes)
}=20
} # Disk Mirroring Configuration=20
}=20
} MIRROR 0 # Mirroring flag (Yes =3D 1, No =3D 0)
} MIRRORPATH # Path for device containing root =
dbspace
mirror
} MIRROROFFSET 0 # Offset into mirror device (Kbytes)
}=20
} # Physical Log Configuration
}=20
} PHYSDBS rootdbs # Name of dbspace that contains =
physical
log
} PHYSFILE 1000 # Physical log file size (Kbytes)
}=20
} # Logical Log Configuration
}=20
} LOGFILES 50 # Number of logical log files
} LOGSIZE 1000 # Size of each logical log file =
(Kbytes)
}=20
} # Message Files
}=20
} MSGPATH /usr/runtime/online.log # OnLine message log pathname
} CONSOLE /dev/console # System console message pathname
}=20
} # Archive Tape Device
}=20
} TAPEDEV /dev/urStp1 # Archive tape device pathname
} TAPEBLK 16 # Archive tape block size (Kbytes)
} TAPESIZE 2000000 # Max amount of data to put on tape
(Kbytes)
}=20
} # Logical Log Backup Tape Device
}=20
} LTAPEDEV /dev/rStp1 # Logical log tape device pathname
} LTAPEBLK 16 # Logical log tape block size (Kbytes)
} LTAPESIZE 2000000 # Max amount of data to put on log =
tape
(Kbytes)
}=20
} # Identification Parameters
}=20
} SERVERNUM 1 # Unique id associated with this =
OnLine
instance
} DBSERVERNAME runtime # Unique name of this OnLine instance
}=20
} # Shared Memory Parameters
}=20
} RESIDENT 1 # Forced residency flag (Yes =3D 1, No =
=3D 0)
} USERS 40 # Maximum number of concurrent user
processes
} TRANSACTIONS 150 # Maximum number of concurrent
transactions
} LOCKS 50000 # Maximum number of locks
} BUFFERS 8000 # Maximum number of shared memory =
buffers
} TBLSPACES 400 # Maximum number of active tblspaces
} CHUNKS 8 # Maximum number of chunks
} DBSPACES 8 # Maximum number of dbspaces and
blobspaces
} PHYSBUFF 32 # Size of physical log buffers =
(Kbytes)
} LOGBUFF 32 # Size of logical log buffers (Kbytes)
} LOGSMAX 50 # Maximum number of logical log files
} CLEANERS 1 # Number of page-cleaner processes
} SHMBASE 0x0 # Shared memory base address
} CKPTINTVL 300 # Checkpoi