PL / JAVA 类别参数

本文档介绍了系统配置参数中 PL / JAVA 类别的相关参数。

注意!
为确保系统稳定与安全,请务必谨慎手动修改相关参数

pljava_classpath


包含 jar 文件或目录的冒号(:)分隔列表,其中包含 PL/Java 函数所需的 jar 文件。

  • 必须指定 jar 文件或目录的完整路径,但 $GPHOME/lib/postgresql/java 目录中的 jar 文件的路径可以省略。 jar 文件必须安装在所有 YMatrix 主机上的相同位置,并且可由 mxadmin 用户读取。
  • pljava_classpath 参数用于在每个用户会话开始时组装 PL/Java 类路径(Classpath)。 会话启动后添加的 jar 文件不可用于该会话。
  • 如果在 pljava_classpath 中指定了 jar 文件的完整路径,则会将其添加到 PL/Java 类路径中。
  • 指定目录时,该目录包含的任何 jar 文件都将添加到 PL/Java 类路径中。
  • 搜索不会下降到指定目录的子目录中。
  • 如果 jar 文件的名称包含在没有路径的 pljava_classpath 中, 则 jar 文件必须位于 $GPHOME/lib/postgresql/java 目录下。
  • 注意:如果要搜索的目录很多或者有大量的 jar 文件,性能会受到影响。
  • 如果 pljava_classpath_insecurefalse, 则设置 pljava_classpath 参数需要超级用户权限。
  • 当没有超级用户权限的用户执行代码时,在 SQL 代码中设置类路径将失败。
数据类型 默认值 设置分类
string master;session;reload;superuser

pljava_classpath_insecure


控制是否可以由没有 YMatrix 数据库超级用户权限的用户设置服务器配置参数 pljava_classpath

  • 如果为 true,则 pljava_classpath 可由常规用户设置。否则,pljava_classpath 只能由数据库超级用户设置。

注意!
启用此参数会使非管理员数据库用户能够运行未经授权的 Java 方法,从而暴露出安全风险。

数据类型 默认值 设置分类
boolean false master;session;restart;superuser

pljava_release_lingering_savepoints


如果为值 true,则 PL/Java 函数中使用的延迟保存点将在函数退出时释放。如果为 false,则将回滚保存点。

数据类型 默认值 设置分类
boolean false master;system;restart;superuser

pljava_statement_cache_size


为预准备语句设置 JRE MRU(最近使用)缓存的大小(KB)。

数据类型 默认值 取值范围 设置分类
int 0 0 ~ 512 master;system;restart;superuser

pljava_vmoptions


定义 Java VM 的启动选项。

数据类型 默认值 设置分类
string master;system;reload;superuser