- The user performing the installation is authorized. A user is authorized if they own the schema or the schema is public.
- The UDF (or a file with the same name) does not exist on the Teradata ML Engine.
- The UDF name is different from the destination schema name.
- The UDF file size is 238 MB or less.
- The archive file name for the UDF is the same as the main function class in the archive that must be executed.
- The SQL identifier for the UDF is registered through a sysuif.install_file call before invoking the PM.INSTALL_AFUNCTION call.
- The SQL identifier name is not one of the following, which are reserved for Teradata SQL Engine JAR files:
- javFnc
- terajdbc4
- tdgssjava
- tdgssconfig
- The SQL identifier is not the name of the destination Teradata ML Engine schema.
- The length of the SQL identifier does not exceed 30 characters.
- The SQL identifier follows the rules for naming Teradata ML Engine analytic functions, without enclosing the names in double quotation marks. It must not begin with a digit, and must include only the following characters:
- Uppercase or lowercase characters (A to Z or a to z).
- Digits (0 through 9).
- Special characters dollar sign ($) and underscore (_).
- For correct UDF installation, the command sysuif.install_file must be called first. The recommended way to do this is to use the Teradata Studio client.
A failed installation does not make changes on the Teradata SQL Engine and Teradata ML Engine.
Rerunning a successful pm.install_afunction always fails.