[Pljava-dev] FreeBSD failed: /usr/local/openjdk8/jre/lib/amd64/server/libjvm.so: Undefined symbol "pthread_set_name_np"

From: Achilleas Mantzios <achill(at)matrix(dot)gatewaynet(dot)com>
To:
Subject: [Pljava-dev] FreeBSD failed: /usr/local/openjdk8/jre/lib/amd64/server/libjvm.so: Undefined symbol "pthread_set_name_np"
Date: 2018-11-15 13:38:42
Message-ID: 39e8375d-df79-7a10-6d02-b29f881910d9@matrix.gatewaynet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pljava-dev

Dear members,

I am trying to install pljava (java PL support for PostgreSQL, triggers), I have successfully built pljava, and installed it, but when I try to create the extension I get :

[local] [448] 5bed6f0c.1c0 2018-11-15 15:10:36.784 EET psql postgres(at)dynacom line:15 WARNING: Java virtual machine not yet loaded

[local] [448] 5bed6f0c.1c0 2018-11-15 15:10:36.784 EET psql postgres(at)dynacom line:16 DETAIL: dlopen (/usr/local/openjdk8/jre/lib/amd64/server/libjvm.so) failed:
/usr/local/openjdk8/jre/lib/amd64/server/libjvm.so: Undefined symbol "pthread_set_name_np"

[local] [448] 5bed6f0c.1c0 2018-11-15 15:10:36.784 EET psql postgres(at)dynacom line:17 HINT: SET pljava.libjvm_location TO the correct path to the jvm library (libjvm.so or jvm.dll, etc.)

[local] [448] 5bed6f0c.1c0 2018-11-15 15:10:36.784 EET psql postgres(at)dynacom line:18 CONTEXT: PL/pgSQL function call_weeklycheck_before() line 6 at assignment

[local] [448] 5bed6f0c.1c0 2018-11-15 15:10:36.784 EET psql postgres(at)dynacom line:19 ERROR: cannot use PL/Java before successfully completing its setup

It used to work with openjdk7, by doing :

postgres(at)smadev:~% ldd /usr/local/openjdk8/jre/lib/amd64/server/libjvm.so
/usr/local/openjdk8/jre/lib/amd64/server/libjvm.so:
libm.so.5 => /lib/libm.so.5 (0x801dd8000)
libc++.so.1 => /usr/lib/libc++.so.1 (0x802005000)
libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x8022d3000)
libc.so.7 => /lib/libc.so.7 (0x800823000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x8024f2000)

postgres(at)smadev:~%

I see no linking to libthr, whereas if I ldd jdk7 I get :

postgres(at)smadev:~% ldd /pgsqlbig/SMADEV_BACKUP/usr/local/openjdk7/jre/lib/amd64/server/libjvm.so
/pgsqlbig/SMADEV_BACKUP/usr/local/openjdk7/jre/lib/amd64/server/libjvm.so:
libm.so.5 => /lib/libm.so.5 (0x801d42000)
libc++.so.1 => /usr/lib/libc++.so.1 (0x801f6f000)
libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x80223d000)
libthr.so.3 => /lib/libthr.so.3 (0x80245c000)
libc.so.7 => /lib/libc.so.7 (0x800823000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x802684000)
postgres(at)smadev:~%
And it indeed runs with jd7.
However, jdk7 is no more on this machine, and also pljava was compiled with jdk8. Any ideas?

--
Achilleas Mantzios
IT DEV Lead
IT DEPT
Dynacom Tankers Mgmt

_______________________________________________
Pljava-dev mailing list
Pljava-dev(at)lists(dot)pgfoundry(dot)org
http://lists.pgfoundry.org/mailman/listinfo/pljava-dev

Browse pljava-dev by date

  From Date Subject
Next Message Chapman Flack 2019-01-01 05:04:54 Re: PL/Java 1.5.2 - fixes one regression in date conversion in 1.5.1
Previous Message Christoph Berg 2018-11-08 21:42:56 Re: PL/Java 1.5.2 - fixes one regression in date conversion in 1.5.1