Teradata C/C++ UDF DebuggerはGDBを拡張します。したがって、通常のデバッガで使用可能なすべてのGDBコマンドをUDFのデバッグでも使用できます。逆実行や特定のシステム呼び出し(forkやexecなど)の受け取りなど、一部の操作は超並列環境では安全(または可能)ではない点に留意してください。
Teradata C/C++ UDF Debuggerを使用する場合、いずれかのスレッドが、スレッドを停止する条件に遭遇すると、デバッガに接続されたすべてのスレッドが停止します。continueコマンドはすべてのスレッドを実行します(スレッドが一時停止されていない限り)。stepコマンドとnextコマンドは現在のスレッドのみを実行します。対照的に、一部のバージョンのGDBは、ブレークポイント(またはスレッドを停止する他の条件)に到達したスレッドのみを停止し、他のすべてのスレッドの実行は続行します。
kill
killコマンドは、UDFデバッグ セッションで発行された場合、通常のGDBセッションのように接続されたプロセスではなく、現在のデータベース リクエストを破棄します。複数のデータベース セッションがデバッグ セッションに結合される場合、killコマンドにより、結合された全セッションのアクティブなSQLリクエストのデバッグが終了しますが、現在のUDFのリクエストのみが破棄されます。データベース セッションは問合わせを再開して、そのUDFのデバッグを続行します。
info thread
info threadコマンドは、現在GDBによって把握されているすべてのスレッドを表示します。UDFのデバッグ時、[Target Id]フィールドに各スレッド セレクタを表示し、スレッドの現在の命令アドレスを示します。この情報は、1つのUDFがブレークポイントで停止した際、他のUDFを特定する場合に役立ちます。