FreeBSD 5.3-RELEASE + JDK1.4 native in a Jail -> hangs 99% cpu on kserel

Achilleus Mantzios achill at matrix.gatewaynet.com
Mon Dec 13 08:23:58 PST 2004


O Joris Verschoor έγραψε στις Dec 13, 2004 :

> Hello,
> 
> I've installed a 5.3-RELEASE box. I haven't changed anything from the 
> default kernel.
> The box is a single cpu P4 with HT disabled.
> I've set some sysctl vars:
> security.jail.sysvipc_allowed: 1 (for pg in a jail)
> 
> 
> 
> There are 2 jails on my box:
> 1) Java 1.4.2 native port + resin3
> 2) PostgreSQL-7(.4)

Just some thoughts:

- Postgresql unfortunately cant be jailified since IPC is not
meant to be jailified itself.
(BTW have you set security.jail.sysvipc_allowed=1 ??)

> 
> PostgreSQL runs fine (I think)
> 
> I've installed a webapp on resin3 using the pg jdbc drivers. Everything 
> runs fine and dandy, but after a while, I suddenly get two things:
> 
> ******** 1 ********
> And exception while opening a connection to pg.
> 
> Caused by: org.postgresql.util.PSQLException:
> An I/O error occured while reading from backend
> Exception: java.net.SocketException: Resource temporarily unavailable
> Stack Trace:
> 
> java.net.SocketException: Resource temporarily unavailable
>         at java.net.SocketInputStream.socketRead0(Native Method)
>         at java.net.SocketInputStream.read(SocketInputStream.java:129)
>         at java.io.BufferedInputStream.fill(BufferedInputStream.java:183)
> ... etc
> 
> ******** 2 ********
> the java process runs on 98% in the kserel state.
> When it's in this state it won't serve any requests.
> It is killable (killall -9 java and the perl wrapper).
> 
> I'm still not sure if nr 2 happens because of nr 1.
> 
> 
> I haven't tried green threads yet.
> 

Hmm. native,green,classic is not an option anymore.
Only -client,-server (hotspot).

> 
> Is this a known problem, and if so, what can I do to resolve it?
> 
> What does problem 1 mean?
> Is this a problem caused by java(jailed) or pg(jailed)?
> What is state is kserel?
> Is there anything I can do to provide more information, for example a 
> dump when it's stuck?
> 

Always have an eye on the postgresql log.
Maybe the backend was non gracefully restarted due to a
jail IPC failure.
What does the postgresql log say?
Which postgresql are you running?
I suggest 7.4.6 (the lastest stable).
Also make sure the jdbc driver in in sync
with your backend.

Also... an advice: Dont use the ports for postgresql.
Manually manage your installations, because even for 
minor releases updates you could do a real harm to your
database if you rely on the ports/packages upgrade mechanisms.

No script will ever do :

UPDATE pg_type where oid=... ;

kinds of things.

> 
> Thanks
> 
> _______________________________________________
> freebsd-java at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-java
> To unsubscribe, send any mail to "freebsd-java-unsubscribe at freebsd.org"
> 

-- 
-Achilleus



More information about the freebsd-java mailing list