【已记录】创建自定义函数,不支持String, Map

Viewed 47

在playgroud中创建如下function:

create function rex(String, String) RETURNS map<String, String>
PROPERTIES (
  "SYMBOL"="rex",
  "OBJECT_FILE"="192.168.110.84:9000",
  "TYPE"="RPC"
);

报错为,不支持String:

Execution failed: Error Failed to execute sql: java.sql.SQLException: (conn=1516) errCode = 2, detailMessage = type STRING is not supported

修改为varchar,依然报错:

create function rex(varchar, varchar) RETURNS map<varchar, varchar>
PROPERTIES (
  "SYMBOL"="rex",
  "OBJECT_FILE"="192.168.110.84:9000",
  "TYPE"="RPC"
);

Execution failed: Error Failed to execute sql: java.sql.SQLException: (conn=1518) errCode = 2, detailMessage = type MAP is not supported

从文档上看应该是支持的。不知道应该如何支持

1 Answers

目前rpc udf 不支持返回map ,需要开发。可以使用java udf来返回map。