agora inbox for pljava-dev@postgresql.org  
help / color / mirror / Atom feed
Subject: [Pljava-dev] FreeBSD pl/java problem
Date: Mon, 04 Feb 2013 15:17:11 +0200
Message-ID: <4461985.cuacIgvZGL@smadev.internal.net> (raw)

Hello,

I am running postgresql 9.2.2 with 
openjdk version "1.6.0_32"
OpenJDK Runtime Environment (build 1.6.0_32-b25)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
On FreeBSD 8.3-RELEASE

I am having trouble even running simple tests like : 
CREATE FUNCTION getsysprop(VARCHAR) 
  RETURNS VARCHAR 
  AS 'java.lang.System.getProperty' 
  LANGUAGE java; 

SELECT getsysprop('user.home'); 

When i do that, the session hangs, and have to kill -9 the backend.

Searching with truss got :

gettimeofday({1359983241.596250 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596275 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596300 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596327 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596352 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596378 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596403 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596431 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596458 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596482 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596507 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596532 },0x0)           = 0 (0x0)
gettimeofday({1359983241.596556 },0x0)           = 0 (0x0)
_umtx_op(0x7fffffffc7e8,0x3,0x1,0x0,0x0,0x1)     = 0 (0x0)
sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGABRT|SIGEMT|SIGKILL|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0)
sigprocmask(SIG_SETMASK,0x0,0x0)                 = 0 (0x0)
sigprocmask(SIG_BLOCK,SIGHUP|SIGINT|SIGQUIT|SIGABRT|SIGEMT|SIGKILL|SIGSYS|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2,0x0) = 0 (0x0)
sigprocmask(SIG_SETMASK,0x0,0x0)                 = 0 (0x0)

while ktrace gave :

 98910 initial thread CALL  gettimeofday(0x7fffffffc900,0)
 98910 initial thread RET   gettimeofday 0
 98910 initial thread CALL  gettimeofday(0x7fffffffc900,0)
 98910 initial thread RET   gettimeofday 0
 98910 initial thread CALL  gettimeofday(0x7fffffffc900,0)
 98910 initial thread RET   gettimeofday 0
 98910 initial thread CALL  gettimeofday(0x7fffffffc900,0)
 98910 initial thread RET   gettimeofday 0
 98910 initial thread CALL  gettimeofday(0x7fffffffc940,0)
 98910 initial thread RET   gettimeofday 0
 98910 initial thread CALL  _umtx_op(0x7fffffffc7e8,0x3,0x1,0,0)
 98910 initial thread RET   _umtx_op 0
 98910 initial thread CALL  sigprocmask(SIG_BLOCK,0x7fffffffc780,0x8016167d8)
 98910 initial thread RET   sigprocmask 0
 98910 initial thread CALL  sigprocmask(SIG_SETMASK,0x8016167d8,0)
 98910 initial thread RET   sigprocmask 0
 98910 initial thread CALL  sigprocmask(SIG_BLOCK,0x7fffffffc6e0,0x8016167d8)
 98910 initial thread RET   sigprocmask 0
 98910 initial thread CALL  sigprocmask(SIG_SETMASK,0x8016167d8,0)
 98910 initial thread RET   sigprocmask 0
 98910 initial thread CALL  _umtx_op(0x8f8dc4280,0x11,0,0,0)

I found some relevant problems with FreeBSD systems hanging after an _umtx_op but all those point 
to threading problems that now are solved. I found nothing modern about _umtx_op.

I know FreeBSD is not a "Tier-1" platform for postgresql (nor java), but this is my main platform and i'd like
to stick with this.

Is there anything i could do to get closer to make pl/java work with FreeBSD?

Of course i will have to reach other communities as well (freebsd-java, etc...) 
but any pointers from you would be just great.

Also read this http://postgresql.1045698.n5.nabble.com/Java-VM-stalls-during-quot-install-jar-quot-td3290754.html thread.
Very close to my situation. JNI standalone also worked for me.

-
Achilleas Mantzios
IT DEV
IT DEPT
Dynacom Tankers Mgmt



view thread (5+ messages)  latest in thread

Message-ID: <4461985.cuacIgvZGL@smadev.internal.net>
Permalink:  ../4461985.cuacIgvZGL@smadev.internal.net/
Also on:    postgresql.org/message-id/4461985.cuacIgvZGL@smadev.internal.net

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pljava-dev@postgresql.org
  Subject: Re: [Pljava-dev] FreeBSD pl/java problem
  In-Reply-To: <4461985.cuacIgvZGL@smadev.internal.net>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox