Request Buffer - Call-Level Interface Version 2

Teradata Call-Level Interface Version 2 Reference for Mainframe-Attached Systems

Product
Call-Level Interface Version 2
Release Number
16.10
Published
May 2017
Language
English (United States)
Last Update
2018-05-07
dita:mapPath
jen1488824663137.ditamap
dita:ditavalPath
Audience_PDF_include.ditaval
dita:id
B035-2417
lifecycle
previous
Product Category
Teradata Tools and Utilities

Information to be sent to the Teradata Database is placed by CLIv2 in a request buffer. CLIv2 allocates a single request buffer per session. The allocation takes place when the session is first established. DBCHCL automatically:

  • Expands the buffer if it is too small to hold the request being prepared.
  • Shrinks the buffer if Request-buffer-length is less than Current-request-buffer-length.

DBCHCL uses field values that the application has placed in the DBCAREA to determine which parcels to send to the Teradata Database and what to put in them. The application does not see the request buffer.

How to Calculate Maximum Length

The maximum length (in bytes) needed for the request buffer can be calculated as follows:

maximum  Request-buffer-length  = 
   (14 if Request-processing-option = ‘P‘) +
   (4 + the maximum length of a request string) +
   (4 + the maximum length of using data,
      including indicator bytes ifUser Presence Bits 
      is set to ‘Y‘) +
   (length of parcels in any {DBCAIRX extension} +
   (6 for overhead)

The second and fifth lines are always included in the calculation. The third line is included only if data is being sent to the Teradata Database. The first line is included only if Request-processing-option = P.