Hi I'm trying to get DBD::Teradata to work. The environment is: Solaris 10 Perl 5.8.7 (64 bit) DBI 1.604 DBD::Teradata 1.50 Teradata client - TTU 13.0 SOLARIS SPARC cliv2.13.00.00.00 Teradata Server - V2R6.1
The sequence of events is: (1) I changed Makefile.Pl to get these settings for Libraires, Includes and Compile flags to allow it to compile. The additional compile flags were taken from use Config; print $Config{ccflags}, "\n"; * DBD::Teradata will be built using the following * directives: * Libraries: -L/usr/lib/sparcv9 -lcliv2 -lnet -lsocket -lresolv -ltdusr * -L/opt/teradata/teragss/solaris-sparc/13.00.00.00/lib -ltdgss * Include files: -I/usr/include * Compile flags: -D__error_t_defined=1 -xarch=generic64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 (2) After I got it to compile, error 302 occurred when trying to connect to a database. I got more info by setting these 2 environment variables: $ENV{NETRACE} = 1; $ENV{COPANOMLOG} = "/tmp/install/teradata/log/netrace_$dte"; SCBinit: NOMEM[1] Error cur_req_buf_len is 65536 maxlen is 32768 DBCHCL: CLICON returned [302] RCBinit: buffer too big [63000], max [32768] DBCHCL: CLICON returned [302] Error 302 is invalid buffer size. I tried changing req_buf_len & resp_buf_len by setting tdat_reqsize & tdat_respsize to 1024 when connecting but it didn't help. $dbh = DBI->connect("dbi:Teradata:$dsn", $user, $pswd, { RaiseError => 0, AutoCommit => 0, PrintError => 1, tdat_database => $db, tdat_reqsize => 1024 tdat_respsize => 1024 } I finally changed the code in Teradata.xs from dbcp->req_buf_len = 65536; dbcp->resp_buf_len = 63000; to dbcp->req_buf_len = 32768; dbcp->resp_buf_len = 32768; (3) Changing the code allowed me to get passed Error 302. But now I'm getting a Segmentation Fault. Does anyone has any suggestions? Any help is appreciated. thank you Albert Tom