pljava安装PostgreSQL的10beta2 1.5.1快照 - 未定义的符号:DatumGetFloat8

问题描述:

当PostgreSQL的10B2安装pljava-1.5.1-快照上postgres96执行 create extension pljava;pljava安装PostgreSQL的10beta2 1.5.1快照 - 未定义的符号:DatumGetFloat8

工作对我来说,当我得到 undefined symbol: DatumGetFloat8

在upcomming postgresql版本上安装pljava时有问题吗?有人可以请我指出正确的方向吗?

在此先感谢 彼得

感谢您的报告。这对10b1来说不是一个已知的问题。我会看看我是否可以用10b2重现它。

编辑:适用于我的10b2。有没有可能您的PG 10b2安装使用的PL/Java版本实际上是针对PG版本< 10而构建的?如果你自己构建了这个版本,并且有多个PG版本可用,Maven将构建一个可执行文件在搜索路径中第一个找到的可执行文件,尽管你也可以在mvn命令行上使用-Dpgsql.pgconfig=来强制构建针对特定版本(通过指向该版本的bin目录中的pg_config可执行文件)。

PostgreSQL的上游改变DatumGetFloat8从外部函数的内联一个for PG 10,所以如果你碰巧建立PL/Java的反对旧的PG版本,它仍然会尝试外部DatumGetFloat8链接,在第10页,ISN再也没有了。

编辑:顺便说一下,我会在这个阶段建议建立和使用1.5.1-BETA1代替1.5.1-SNAPSHOT,这样一旦1.5.1被释放,你将能够从1.5.1-BETA1移动到1.5.1用一个简单的ALTER EXTENSION ... UPDATE。从快照版本,ALTER EXTENSION将不知道如何更新。