Re: [ADMIN] Stuck Spinlock Error Message

2003-08-14 Thread Tom Lane
Ludwig Isaac Lim [EMAIL PROTECTED] writes:
I'm guessing that the spinlock error occurs after
 there are around hundreds (or thousands) of queued
 postmaster processes.

Thousands?  How large is your max_connections parameter, anyway
(and do you really have big enough iron to support it)?

The stuck spinlock error implies that some work that should have
taken a fraction of a microsecond (namely the time to check and update
the internal state of an LWLock structure) took upwards of a minute.

Since the process holding the spinlock could lose the CPU, it's
certainly physically possible for the actual duration of holding the
spinlock to be much more than a microsecond.  But the odds of losing
the CPU while holding the spinlock are not large, since it's held for
just a small number of instructions.  And to get an actual stuck
spinlock failure would imply that the holding process didn't get
scheduled again for more than a minute (while some other process that
wanted the spinlock *did* get scheduled again --- repeatedly).  I
suppose this is possible if your machine is sufficiently badly
overloaded.

regards, tom lane

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [ADMIN] Stuck Spinlock Error Message

2003-08-14 Thread Ludwig Isaac Lim
Hi:

--- Tom Lane [EMAIL PROTECTED] wrote:
   What can cause a stuck spinlock?
 In theory, that shouldn't ever happen.  Can you
 reproduce it?
  regards, tom lane

   I could not reproduce it, but I'll describe how
error happen. I have a program that read a file large
file which 20,000 records and spawn a process that
execute a PLPGSQL stored function based on the content
of the file. 

The following is a table of the SQL statement
generated:
process 1 SELECT f1(120,  123.3);   
process 2 SELECT f1(120,   53.3);   
process 3 SELECT f1(120,   31.3);
..
..
process n SELECT f1(120,2.3);

  the function f1 is basically defined as
  CREATE OR REPLACE FUNCTION f1(integer, float8)
  RETURN INTEGER
  AS'
  DECLARE
 -- some variable declaration  BEGIN
 -- Lock the table based on the first parameter
-- of the stored function (use record level lock) 
   SELECT * 
 FROM   t1
 WHERE  field1 = $1
 FOR UPDATE;
 --a batch of SQL statements here --
  END;'
  LANGUAGE 'plpgsql';

  As you noticed the the first parameter of the called
function is the same (Due to bug on our program).
Since it performs a record level lock on the record,
the processes will queue (i.e. will execute if  only a
process relinquish its lock).   I'm guessing that the
there was just to many postmaster process trying to
concurrently trying to access the same record being
lock by a record-lock. When I execute the top
command in linux there are a lot of postmaster process
in the process list

   Is the spinlock error possible given that scenario?
Is this error related to the following error messages:
   fatal 2: cannot write block 3 of 16556/148333 blind
: too many open files in sysytem.

   Note : I was able to correct the above error
messages by increasing the file-max parameter in the
sysctl.conf.

   I'm guessing that the spinlock error occurs after
there are around hundreds (or thousands) of queued
postmaster processes.

best regards,
ludwig


__
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com

---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster


[ADMIN] Stuck Spinlock Error Message

2003-07-31 Thread Ludwig Isaac Lim
 Hi:
 
I notice the following error message in my
postgresql log file:
 
FATAL : s_lock (0x401db020) at lwlock.c Stuck
spinlock. Aborting
 
 Version of my postgresql :
 
PostgreSQL 7.2.3 on i686-pc-linux-gnu compiled by
GCC 2.96
 
Operating System : RedHat 7.1

 What can cause a stuck spinlock?
 
Thanks in advance,
ludwig lim
 


__
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com

---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faqs/FAQ.html


Re: [ADMIN] Stuck Spinlock Error Message

2003-07-31 Thread Tom Lane
Ludwig Isaac Lim [EMAIL PROTECTED] writes:
  What can cause a stuck spinlock?

In theory, that shouldn't ever happen.  Can you reproduce it?

regards, tom lane

---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster