Database exception trace output

Use a Trace node to produce details of exceptions that occur when a database exception is detected.

The following figure shows an extract of the output that might be generated by a Trace node that has Pattern property set to a value that represents a structure that includes the exception list tree.

The exception shown occurred when a database exception was detected

ExceptionList = (
  (0x1000000)RecoverableException = (
    (0x3000000)File                 = 'F:\build\S000_D\src\DataFlowEngine\ImbComputeNode.cpp'
    (0x3000000)Line                 = 402
    (0x3000000)Function             = 'ImbComputeNode::evaluate'
    (0x3000000)Type                 = 'ComIbmComputeNode'
    (0x3000000)Name                 = 'acd8f35d-e700-0000-0080-b78796c5e70d'
    (0x3000000)Label                = 'esql_13485_check_defect.Compute1'
    (0x3000000)Text                 = 'Caught exception and rethrowing'
    (0x3000000)Catalog              = 'WMQIv210'
    (0x3000000)Severity             = 3
    (0x3000000)Number               = 2230
    (0x1000000)RecoverableException = (
      (0x3000000)File              = 'F:\build\S000_D\src\DataFlowEngine\ImbRdl\ImbRdlExternalDb.cpp'
      (0x3000000)Line              = 278
      (0x3000000)Function          = 'SqlExternalDbStmt::executeStmt'
      (0x3000000)Type              = 'ComIbmComputeNode'
      (0x3000000)Name              = 'acd8f35d-e700-0000-0080-b78796c5e70d'
      (0x3000000)Label             = 'esql_13485_check_defect.Compute1'
      (0x3000000)Text              = 'The following error occurred execution SQL statement &3. inserts where &4'
      (0x3000000)Catalog           = 'WMQIv210'
      (0x3000000)Severity          = 3
      (0x3000000)Number            = 2519
      (0x1000000)Insert            = (
        (0x3000000)Type = 2
        (0x3000000)Text = '1'
      )
      (0x1000000)Insert            = (
        (0x3000000)Type = 2
        (0x3000000)Text = '1'
      )
      (0x1000000)Insert            = (
        (0x3000000)Type = 5
        (0x3000000)Text = 'USERDB'
      )
      (0x1000000)Insert            = (
        (0x3000000)Type = 5
        (0x3000000)Text = 'DELETE FROM DB2ADMIN.STOCK WHERE (STOCK_ID)=(?)'
      )
      (0x1000000)Insert            = (
        (0x3000000)Type = 5
        (0x3000000)Text = '500027,  '
      )
      (0x1000000)DatabaseException = (
        (0x3000000)File     = 'F:\build\S000_D\src\DataFlowEngine\ImbOdbc.cpp'
        (0x3000000)Line     = 153
        (0x3000000)Function = 'ImbOdbcHandle::checkRcInner'
        (0x3000000)Type     = ''
        (0x3000000)Name     = ''
        (0x3000000)Label    = ''
        (0x3000000)Text     = 'Root SQL exception'
        (0x3000000)Catalog  = 'WMQIv210'
        (0x3000000)Severity = 3
        (0x3000000)Number   = 2321
        (0x1000000)Insert   = (
          (0x3000000)Type = 2
          (0x3000000)Text = '100'
        )
      )
    )
  )
)