I am experiencing an error while trying to do a FastExport with data from the TD Server to a file - the error message is UTY8713 RDBMS failure, 2617: Overflow occurred computing an expression involving MV_FAK_VMON_DTV_ALL.DTV
The column in question is DECIMAL(38,30) and has that weird format because the whole warehouse has been ported from an Oracle DB without real rethinking :-(. I can export the table without problems if I manually exclude every column with the format DECIMAL(38,30). Also - if I do a CAST to CHAR(38) the data gets exported without problems so there seems to be no problem with the table itself, but more with the data format and the FastExport utility.
Unfortunately I cannot manually override the SELECT statement of that export as the export is part of a script that automatically exports all tables within a certain control table (so I don't know which tables will be target for exporting beforehand) and gets created automatically.
Our database is TD 14.10 with FastExport Utility (FEXP.14.10.00.06) running on a Linux plattform. Server has all the latest patches installed.
Has ever anybody run into such a problem or can somebody give a hint to the root cause of the problem ?
As the warehouse (that table is in) is operational and I only have limited access to the ODI scripts doing the ETL I probably will have to live with the table structure, but need to export the data somehow. I have chosen to use FastExport as I can automatically tell it to generate a MultiLoad script to import the exported data on a remote server (also a TD machine).
Any help is highly appreciated
I have found the solution to my problem !
There is a parameter called DECIMALDIGITS that is part of the EXPORT command. That parameter is by default only 18 digits (see following excerpt from the FastExport documentation). Until I have not stumbled over that parameter as I would not have expected that such a thing would exist :-)
For anybody with the same problem:
A user-supplied maximum number of digits in the DECIMAL data type that can be exported. Starting from V2R6.2, the maximum number of digits in the DECIMAL data type increased from 18 to 38. Note that if a user doesn’t set the limit, the default maximum number of digits is 18. When the client is a mainframe, the user can set the limit to 31 to request automatic CAST to avoid n>31 results.
Using this option overwrites the max_decimal_returned value specified in the clispb.dat file for network-attached systems or the HSHSPB parameter for channel-attached systems.
Use it as .BEGIN EXPORT SESSIONS 5 DECIMALDIGITS 38; At least that helped me with my problem.