17.00 - Teradata TPump/INMOD Interface - Parallel Data Pump

Teradata® Parallel Data Pump Reference

prodname
Parallel Data Pump
vrm_release
17.00
created_date
June 2020
category
Programming Reference
featnum
B035-3021-220K

Teradata TPump/INMOD Interface on IBM Client-Based Systems

The use of an INMOD is specified on the IMPORT command. On IBM client-based systems, the database interfaces with INMODs written in C.

Examples of these INMODs are presented in INMOD and Notify Exit Routine Examples. An optional parms string to be passed to the INMOD may also be specified on the IMPORT command. Teradata TPump imposes the following syntax rules for this string:
  • The parms string may include one or more character strings, each delimited on either end by apostrophes or quotation marks. The maximum size of the parms string is 1 KB.
  • If a FastLoad INMOD is used, the parms string of the IMPORT command must be FDLINMOD.
  • The parms string passed to an INMOD includes the parentheses used to specify the parms. Thus, if the IMPORT specifies USING ('5'), the entire expression ('5') is passed to the INMOD.
  • Parentheses within delimited character strings or comments have the same syntactical significance as alphabetic characters.
  • In the parms string that Teradata TPump passes to the INMOD routine, each comment is replaced by a single blank character.
  • In the parms string that Teradata TPump passes to the INMOD routine, each consecutive sequence of whitespace characters, such as blank, tab, and so on, that appears outside of delimited strings, is replaced by a single blank character.
  • FDLINMOD is used for compatibility by pointing to a data structure that is the same for BDL and FDL INMODs.

Teradata TPump/INMOD Interface on UNIX Systems

On UNIX system-based client platforms, Teradata TPump is written in C and, therefore, the INMOD procedure is dynamically loaded at runtime, rather than link-edited into the Teradata TPump module or operated as a separate executable program.

The runtime loader requires that the INMOD module be compiled and linked as a shared object, and that the entry point for the procedure be named _dynamn.

The use of an INMOD is specified in the IMPORT command. On UNIX systems, the database interfaces only with INMODs written in C. An example of a C INMOD is presented in INMOD and Notify Exit Routine Examples. An optional parms string to be passed to the INMOD may also be specified on the IMPORT command. Teradata TPump imposes these syntax rules:
  • One INMOD is allowed for each IMPORT command. Multiple IMPORTs are allowed; these may use the same or different INMODs.
  • The input filename parameter specified on the IMPORT command must be the fully qualified UNIX pathname for the input file.
  • The INMOD filename parameter specified on the IMPORT command must be the fully qualified UNIX pathname of the INMOD shared object file.
  • The parms string may include one or more character strings, each delimited on either end by an apostrophe, or delimited on either end by a quotation mark. The maximum size of the parms string is 1k bytes.
  • If a FastLoad INMOD is used, the parms string of the IMPORT command must be “FDLINMOD”.
  • The parms string as a whole must be enclosed in parentheses.
  • Parentheses within delimited character strings or comments have the same syntactical significance as alphabetic characters.
  • In the parms string that Teradata TPump passes to the INMOD routine, each comment is replaced by a single blank character.
  • In the parms string that Teradata TPump passes to the INMOD routine, each consecutive sequence of whitespace characters, such as blank, tab, and so on, that appears outside of delimited strings, is replaced by a single blank character.
  • FDLINMOD is used for compatibility by pointing to a data structure that is the same for FDL INMODs.

Teradata TPump/INMOD Interface on Windows Systems

On Windows client platforms, Teradata TPump is written in C and, therefore, the INMOD procedure is dynamically loaded at runtime, rather than link-edited into the Teradata TPump module or run as a separate executable program.

The runtime loader requires that the INMOD module be compiled and linked as a Dynamic-Link Library (DLL) file, and that the point for the procedure be named _dynamn.

The use of an INMOD is specified in the IMPORT command. On systems, the database interfaces only with written in C. An optional parms string to be passed to INMOD may also be specified on the IMPORT command. Teradata TPump imposes the following syntax rules:
  • One INMOD is allowed for each IMPORT command. Multiple are allowed; these may use the same or different INMODs.
  • The input filename parameter specified on the IMPORT command must be the fully qualified Windows pathname for the input file.
  • The INMOD filename parameter specified on the IMPORT command must be the fully qualified Windows pathname of the INMOD DLL file.
  • The parms string may include one or more character strings, each delimited on either end by an apostrophe, or delimited on either end by a quotation mark. The maximum size of the parms string is 1k bytes.
  • If a FastLoad INMOD is used, the parms string of the IMPORT command must be “FDLINMOD”.
  • The parms string as a whole must be enclosed in parentheses.
  • Parentheses within delimited character strings or comments have the same syntactical significance as alphabetic characters.
  • In the parms string that Teradata TPump passes to the INMOD routine, each comment is replaced by a single blank character.
  • In the parms string that Teradata TPump passes to the INMOD routine, each consecutive sequence of whitespace characters, such as blank, tab, and so on, that appears outside of delimited strings, is replaced by a single blank character.
  • FDLINMOD is used for compatibility by pointing to a data structure that is the same for FDL INMODs.