This error occurs when using the Progress DataDirect 64-bit SQL Server ODBC drivers and moving data via TPT. We have contacted Progress DataDirect and they have investigated this issue and their reponse was this was a Teradata issue. I've asked them to contact you as they may be partners (not sure) so you may be also receiving and official request from them. :/
Here are symptoms of the issue which are very specific.
1. This error only occurs with the 64-bit SQL Server Progress DataDirect WireProtocol Drivers. Moving via 32-bit Progress drivers do not cause the issue. The target data source was using the generic Teradata ODBC drivers.
2. It only occurs when moving data which is all of data type SMALLINT on SQL Server. You can have 5 SMALLINT columns or 1 SMALLINT column which you are moving. The number of columns I believe doesn't matter it is just that the data is all SMALLINT. If you add one other column whih is non-SMALLINT then you will not receive this error.
We're using TTU 15 from the website and the ODBC Operator to extract the data from SQL Server and the Stream Operator to load the data to Teradata.
I have scripts to duplicate the error if someone from Teradata would like to contact me via email. Thank you for your help.
ODBCOperator: TPT17187: Failed to obtain shared memory segment for for column data buffer, due to error 48.
ODBCOperator: TPT17174: Error 0 allocating memory for row size buffer
Please send the scripts to me: firstname.lastname@example.org.
For some reason, TPT needs more memory for the job (do not know why at this point).
Please try running the job again, and add -h 25M to the command line and see if that helps.
This fixed the issue. Thank you so much!