All Forums Tools
ghk11 3 posts Joined 06/14
05 Jun 2014
TPT Export to Mainframe File - RDBMS error 3177

Hi,
I am facing issues in exporting data using TPT from a table which has high number of columns(approx 1250 columns & 5800 bytes in size) to a Mainframe Physical Sequential(PS).  The error message that I get is
 
“TPT10508: RDBMS error 3177: Response buffer size is insufficient to hold one record > 64KB”
 
I had included attributes like BUFFERSIZE, MAXRESPSIZE to max values and had set UTILITYDATASIZE to Large in the TPT export query but to no avail.
 
It would be great if you could provide any help in resolving the export issue.
 
Teradata Parallel Transporter Executor Version 13.10.00.04     
Teradata Parallel Transporter Coordinator Version 13.10.00.04  
Teradata Parallel Transporter Executor Version 13.10.00.04      
Teradata Parallel Transporter DataConnector Version 13.10.00.04
Teradata Parallel Transporter Export Operator Version 13.10.00.03
 
Teradata Database Version:      '13.10.07.21         
Teradata Database Release:      '13.10.07.18         
Maximum request size supported: 1MB                  
Session character set:          'EBCDIC'             
Total AMPs available:           390                  
Data Encryption:                not supported by RDBMS
Blocksize for this job:         64330 bytes           
 
Note:
When I tried splitting the columns in the table into 3 and then exporting to 3 separate files (~1850 bytes per file), I was able to export the data successfully.

ghk11 3 posts Joined 06/14
10 Jun 2014

Hi,
Below is the TPT Fast Export script that I have been executing from Mainframes. Please do let me know if anyone has any suggestions to address the error. Thanks.
Script:
DEFINE JOB EXPORT_JOB_EXP                                
DESCRIPTION 'EXPORT TABLE TO MAINFRAME FILE'  
(                                                      
 DEFINE SCHEMA EXPTBL_SCHEMA             
  ( 
   FIELD1                     CHAR(25),
   FIELD2                     CHAR(15),
   .
   . 
   FIELD1250            CHAR(02)
);
 DEFINE OPERATOR FASTEXPORT_OPERATOR                 
 TYPE EXPORT                                         
 SCHEMA EXPTBL_SCHEMA                               
 ATTRIBUTES                                          
  (                                                  
   VARCHAR PRIVATELOGNAME ='EXPTBL.LOG.FILE1', 
   VARCHAR TDPID        = @TDPID,                           
   VARCHAR USERNAME     = @USERNAME,                     
    INTEGER MAXSESSIONS = 10,                        
    INTEGER MINSESSIONS = 1,                         
    INTEGER MAXRESPSIZE = 1048575,                   
    INTEGER MAXBUFSIZE  = 1048575,                    
    INTEGER BLOCKSIZE   = 64330,                      
   VARCHAR SELECTSTMT   = 'SELECT 
 CAST(FIELD1 AS CHAR(25))
,CAST(FIELD2 AS CHAR(15))
.
.
,CAST(FIELD1250 AS CHAR(2))                         
  FROM  DB.EXPORT_TB1;' 
  ); 
DEFINE OPERATOR FILE_WRITER                     
TYPE DATACONNECTOR CONSUMER                     
SCHEMA EXPTBL_SCHEMA                           
ATTRIBUTES                                      
(                                               
  VARCHAR PRIVATELOGNAME = 'EXPTBL.LOG.FILE',
  VARCHAR FILENAME   = 'DD:OUTDD',                
  VARCHAR FORMAT   = 'UNFORMATTED',               
   VARCHAR INDICATORMODE = 'N',                 
   INTEGER MAXRESPSIZE   = 1048575,               
   INTEGER IOBUFFERSIZE  = 16777215,             
   INTEGER MAXBUFSIZE    = 1048575,                
   INTEGER BLOCKSIZE     = 64330,                  
  VARCHAR OPENMODE   = 'WRITE'                    
 );  
STEP EXPORT_TO_FILE                                 
   (                                                
      APPLY TO OPERATOR (FILE_WRITER())             
      SELECT * FROM OPERATOR(FASTEXPORT_OPERATOR());
 );                                                 
);

feinholz 1234 posts Joined 05/08
11 Jun 2014

Ok, I see that you are using this for the Export operator:
    INTEGER MAXRESPSIZE = 1048575,                   
    INTEGER MAXBUFSIZE  = 1048575,                    
    INTEGER BLOCKSIZE   = 64330,
I am not sure where you got MAXRESPSIZE and MAXBUFSIZE as they are not valid (and are being ignored).
For BLOCKSIZE, it is best to omit that and let the operator use the maximum size it can.
For the file writer, the same thing. Those attributes are not valid.
And for IOBUFFERSIZE, I would not specify that either. Let the DC operator use the proper size.
 
I really do not know the issue, but if you could please provide all of the operator output that might help.
If not, I will need you to turn on trace (add a VARCHAR TraceLevel = 'all' attribute to the Export operator) and run and then send the operator trace output to me (via email might be better than posting here; it will be a lot of output).
 
 

--SteveF

You must sign in to leave a comment.