Re: lock table overflow
Posted in 1998
Hello,
You should increase the number of LOCKS.
You have already using 200000, this is a very big number.
Should you look at your code and change in order
to use less locks.
hope that helps
Serafim Fonseca
>
> hi
>
> i'm running ods7.23uc1 on hp-ux10.20. this application is an off-the-shelf manufacutrin gpkg which runs on top of informix. whenever a particular trnasaction the application bombs out with the errors below:
> %SQLCODE: -244 Could not do a physical-order read to fetch next row.
> %SQLERRD2: -134 ISAM error: no more locks
> and in looking at the log file , i saw this error:
> 19:13:32 Lock table overflow - user id 102, session id 47>
> i'm wondering if anyone has any ideas on this. i did do oncheck on the tables and indices the sql was after, and it came back okay. i'm attaching my onconfig file.
>
> #**************************************************************************
> #
> # INFORMIX SOFTWARE, INC.
> #
> # Title: onconfig.std
> # Description: INFORMIX-OnLine Configuration Parameters
> #
> #**************************************************************************
>
> # Root Dbspace Configuration
>
> ROOTNAME root_dbs # Root dbspace name
> ROOTPATH /PRD1/root # Path for device containing root dbspace
> ROOTOFFSET 10 # Offset of root dbspace into device (Kbytes)
> ROOTSIZE 499980 # Size of root dbspace (Kbytes)>
> # Disk Mirroring Configuration Parameters
>
> MIRROR 0 # Mirroring flag (Yes = 1, No = 0)
> MIRRORPATH # Path for device containing mirrored root
> MIRROROFFSET 0 # Offset into mirrored device (Kbytes)>
> # Physical Log Configuration
>
> PHYSDBS phy_dbs # Location (dbspace) of physical log
> PHYSFILE 95000 # Physical log file size (Kbytes)>
> # Logical Log Configuration
>
> LOGFILES 9 # Number of logical log files
> LOGSIZE 30000 # Logical log size (Kbytes)>
> # Diagnostics
>
> MSGPATH /apps/informix/log/wsm_prd1.log # System message log file path
> CONSOLE /apps/informix/log/console_prd1.log
> # System console message path
> ALARMPROGRAM /apps/informix/etc/no_log.sh # Alarm program path
>
> # System Archive Tape Device
>
> TAPEDEV /mis/dbsave/comets.db # Tape device path
> TAPEBLK 16 # Tape block size (Kbytes)
> TAPESIZE 2000000000 # Maximum amount of data to put on tape (Kbytes)>
> # Log Archive Tape Device
>
> LTAPEDEV /logsave/comets.log # Log tape device path
> LTAPEBLK 16 # Log tape block size (Kbytes)
> LTAPESIZE 2000000 # Max amount of data to put on log tape (Kbytes)>
> # Optical
>
> STAGEBLOB ,1 # INFORMIX-OnLine/Optical staging area
>
> # System Configuration
>
> SERVERNUM 1 # Unique id corresponding to a OnLine instance
> DBSERVERNAME wsm_prd1 # Name of default database server
> DBSERVERALIASES penang_prd1 # List of alternate dbservernames
> NETTYPE ipcshm,1,50,CPU # Configure poll thread(s) for nettype
> NETTYPE soctcp,1,50,NET # Configure poll thread(s) for nettype
> DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
> RESIDENT 1 # Forced residency flag (Yes = 1, No = 0)
>
> MULTIPROCESSOR 0 # 0 for single-processor, 1 for multi-processor
> NUMCPUVPS 1 # Number of user (cpu) vps
> SINGLE_CPU_VP 1 # If non-zero, limit number of cpu vps to one
>
> NOAGE 0 # Process aging
> AFF_SPROC 0 # Affinity start processor
> AFF_NPROCS 0 # Affinity number of processors>
> # Shared Memory Parameters
>
> LOCKS 200000 # Maximum number of locks
> BUFFERS 200000 # Maximum number of shared buffers
> NUMAIOVPS 10 # Number of IO vps
> PHYSBUFF 32 # Physical log buffer size (Kbytes)
> LOGBUFF 32 # Logical log buffer size (Kbytes)> LOGSMAX 20 # Maximum number of logical log files
> CLEANERS 10 # Number of buffer cleaner processes
> SHMBASE 0x0 # Shared memory base address
> SHMVIRTSIZE 120000 # initial virtual shared memory segment size
> SHMADD 65536 # Size of new shared memory segments (Kbytes)
> SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
> CKPTINTVL 300 # Check point interval (in sec)
> LRUS 128 # Number of LRU queues
> LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
> LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
> LTXHWM 50 # Long transaction high water mark percentage
> LTXEHWM 60 # Long transaction high water mark (exclusive)
> TXTIMEOUT 0x12c # Transaction timeout (in sec)
> STACKSIZE 32 # Stack size (Kbytes)>
> # System Page Size
> # BUFFSIZE - OnLine no longer supports this configuration parameter.
> # To determine the page size used by OnLine on your platform
> # see the last line of output from the command, 'onstat -b'.
>
>
> # Recovery Variables
> # OFF_RECVRY_THREADS:
> # Number of parallel worker threads during fast recovery or an offline restore.
> # ON_RECVRY_THREADS:
> # Number of parallel worker threads during an online restore.
>
> OFF_RECVRY_THREADS 10 # Default number of offline worker threads
> ON_RECVRY_THREADS 1 # Default number of online worker threads>
> # Data Replication Variables
> # DRAUTO: 0 manual, 1 retain type, 2 reverse type
> DRAUTO 0 # DR automatic switchover
> DRINTERVAL 30 # DR max time between DR buffer flushes (in sec)
> DRTIMEOUT 30 # DR network timeout (in sec)> DRLOSTFOUND /apps/informix/etc/dr.lostfound # DR lost+found file path
>
> # CDR Variables
> CDR_LOGBUFFERS 2048 # size of log reading buffer pool (Kbytes)
> CDR_EVALTHREADS 1,2 # evaluator threads (per-cpu-vp,additional)
> CDR_DSLOCKWAIT 5 # DS lockwait timeout (seconds)
> CDR_QUEUEMEM 4096 # Maximum amount of memory for any CDR queue (Kbytes)>
> # Backup/Restore variables
> BAR_ACT_LOG /tmp/bar_act.log
> BAR_MAX_BACKUP 0
> BAR_RETRY 1
> BAR_NB_XPORT_COUNT 10
> BAR_XFER_BUF_SIZE 31>
> # Read Ahead Variables
> RA_PAGES 32 # Number of pages to attempt to read ahead
> RA_THRESHOLD 16 # Number of pages left before next group>
> # DBSPACETEMP:
> # OnLine equivalent of DBTEMP for SE. This is the list of dbspaces
> # that the OnLine SQL Engine will use to create temp tables etc.
> # If specified it must be a colon separated list of dbspaces that exist
> # when t