URL: http://<db.host>:<db.port>/create/proc
Creates an instance (proc) of the user-defined functions (UDF) specified by the given command, options, and files, and makes it available for execution.
Input Parameter Description
Name | Type | Description | ||||||
---|---|---|---|---|---|---|---|---|
proc_name | string | Name of the proc to be created. Must not be the name of a currently existing proc. | ||||||
execution_mode | string | The execution mode of the proc. The default value is distributed.
| ||||||
files | map of string to bytes | A map of the files that make up the proc. The keys of the map are file names, and the values are the binary contents of the files. The file names may include subdirectory names (e.g. 'subdir/file') but must not resolve to a directory above the root for the proc. Files may be loaded from existing files in KiFS. Those file names should be prefixed with the uri kifs:// and the values in the map should be empty. The default value is an empty map ( {} ). | ||||||
command | string | The command (excluding arguments) that will be invoked when the proc is executed. It will be invoked from the directory containing the proc input parameter files and may be any command that can be resolved from that directory. It need not refer to a file actually in that directory; for example, it could be 'java' if the proc is a Java application; however, any necessary external programs must be preinstalled on every database node. If the command refers to a file in that directory, it must be preceded with './' as per Linux convention. If not specified, and exactly one file is provided in input parameter files, that file will be invoked. The default value is ''. | ||||||
args | array of strings | An array of command-line arguments that will be passed to input parameter command when the proc is executed. The default value is an empty array ( [] ). | ||||||
options | map of string to strings | Optional parameters. The default value is an empty map ( {} ).
|
Output Parameter Description
The GPUdb server embeds the endpoint response inside a standard response structure which contains status information and the actual response to the query. Here is a description of the various fields of the wrapper:
Name | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
status | String | 'OK' or 'ERROR' | |||||||||
message | String | Empty if success or an error message | |||||||||
data_type | String | 'create_proc_response' or 'none' in case of an error | |||||||||
data | String | Empty string | |||||||||
data_str | JSON or String | This embedded JSON represents the result of the /create/proc endpoint:
Empty string in case of an error. |