C/C++ Command-line Debugging for UDFs - Analytics Database - Teradata Vantage

SQL External Routine Programming

Deployment
VantageCloud
VantageCore
Edition
Enterprise
IntelliFlex
VMware
Product
Analytics Database
Teradata Vantage
Release Number
17.20
Published
June 2022
Language
English (United States)
Last Update
2023-07-11
dita:mapPath
iiv1628111441820.ditamap
dita:ditavalPath
qkf1628213546010.ditaval
dita:id
B035-1147
lifecycle
latest
Product Category
Teradata Vantage™
This section uses the name Teradata C/C++ UDF Debugger to refer to a version of GDB (the GNU Source-Level Debugger) that contains extensions implemented by Teradata. The Teradata C/C++ UDF Debugger supports standard GDB commands and adds commands for debugging protected-mode external routines written in C or C++:
  • User-defined functions (UDFs): scalar, aggregate, table functions, and table operators
  • External stored procedures
  • User-defined methods (UDMs)

This document uses the term “UDFs” to refer collectively to UDFs, external stored procedures, and UDMs.

Online information about the GNU debugger, including the Teradata C/C++ UDF Debugger extensions is available from the Linux command line by typing info tdgdb.

Teradata also offers Eclipse (Studio) plug-in debuggers for C/C++ and Java. For more information on these debuggers, see Teradata Debugger for C/C++ UDF and Teradata Debugger for Java UDF.

Required Privileges

Privileges needed for creating and debugging UDFS:
  • CREATE FUNCTION
  • EXECUTE FUNCTION
Privileges needed for creating and debugging external stored procedures:
  • CREATE EXTERNAL PROCEDURE
  • EXECUTE PROCEDURE
Privileges needed for debugging UDFs or external stored procedures by a user other than the one who created the routines:
  • EXECUTE FUNCTION or EXECUTE PROCEDURE
  • DROP FUNCTION or DROP PROCEDURE
Privileges needed for creating and debugging UDMs:
  • ALL on SYSUDTLIB
For example, the following statement grants all privileges on SYSUDTLIB to the user named debugger:
grant all on sysudtlib to debugger with grant option;