Consider the following factors when specifying a value for the MaxSessions attribute:
- If no value is set for MaxSessions, the operator attempts to connect to one session per available AMP.
- The DDL, ODBC, and SQL Selector operators are limited to a single concurrent session, that is, one session each per single-step job, or one each session per step in a multi-step job.
- If the value of the MaxSessions attribute for an operator is smaller than the number of operator instances, the job will abort.
- If the value of MaxSessions is set to a number greater than the number of available AMPs, the job runs successfully, but logs on only as many sessions as available AMPs.
- For some jobs, especially those running on systems with a large number of AMPS, the default session allocation (one per available Teradata Database system AMP) may not be advantageous, and you may need to adjust the MaxSessions attribute value to limit the number of sessions used. After the job has run, use the evaluation criteria shown in Strategies for Balancing Sessions and Instances to help adjust and optimize the MaxSessions setting.
- The Stream and SQL Inserter operators use an SQL protocol, so it is not seen as a "load job" by the Teradata Database. Therefore, Stream and SQL Inserter operators connect to as many sessions as requested, up to the number of sessions allowed by the Teradata Database.
- If multiple sessions are used with the SQL Inserter operator and the data has duplicate primary index values, this could result in a potential Teradata Database deadlock 2631 error. To avoid this error, do not use multiple sessions with the TPT SQL Inserter operator.
- If multiple sessions are used and the data accesses the same row-level lock on the Teradata Database, the job could result in a hang. To avoid a hang, do not use multiple sessions with the TPT SQL Inserter operator. Use only 1 session.