Teradata Issues and Troubleshooting

Learn more about the conversion issues in SnowConvert, and how to solve them.

Conversions of any large quantity of code will likely have a few errors and warnings. Mobilize.Net has been the leading authority on code conversion for 25 years, and trust us, we understand this. When using any of our products, you can count on us to be your partner in resolving any errors you may encounter.

Below is a list of common conversion issues that you may see when you perform a conversion with SnowConvert along with a severity level for each. Some suggested solution paths based on the severity level will follow the list of codes.

Take a minute to read through the list and the troubleshooting tips to help diagnose some of the error codes you have encountered. If you have a question that cannot be answered here, please reach out! You can post in the SnowConvert forums or drop us an email at support@mobilize.net. This is a living list, so it will grow and change as SnowConvert evolves. Updates to issue and error handling will appear on this page, and will also appear in the release notes.

Error Codes

Here is the list of error codes that exist in SnowConvert. A description of the severity levels and some troubleshooting suggestions will follow this list of codes.

Code

Description

Severity

MSCEWI2004

Invalid default value.

LOW

MSCEWI2006

Column name not supported.

LOW

MSCEWI2008

Cluster by performance review.

LOW

MSCEWI2009

Temporal column not supported.

LOW

MSCEWI2010

Uppercase not supported.

LOW

MSCEWI2011

Time zone not supported for time data type.

LOW

MSCEWI2012

Not supported by binary type.

LOW

MSCEWI2013

Column converted from Blob data type.

LOW

MSCEWI2014

Column converted from Clob data type.

LOW

MSCEWI2015

Set table not supported.

LOW

MSCEWI2016

Global temporary table not supported.

LOW

MSCEWI2017

Global temporary table trace not supported.

LOW

MSCEWI2018

Collation not supported in variant column.

LOW

MSCEWI2019

Converted to Varchar for current session default.

LOW

MSCEWI2020

Statement removed.

LOW

MSCEWI2022

Work or error table commented.

LOW

MSCEWI2024

Abort statement not supported.

LOW

MSCEWI2025

Output format not supported.

LOW

MSCEWI2026

Custom UDF inserted.

LOW

MSCEWI2027

Temporal column transformed.

LOW

MSCEWI2028

Run file must contain python statements only.

LOW

MSCEWI2029

Queue table not supported.

LOW

MSCEWI2031

Sequence warning.

LOW

MSCEWI2034

Multistatement SQL not supported.

LOW

MSCEWI2035

Cast might implicate an automatic trimming with Substring function.

LOW

MSCEWI2036

STRING to STRING Cast might require to be changed to Substring function.

LOW

MSCEWI2037

DELETE ALL statement replaced to TRUNCATE.

LOW

MSCEWI2038

Repeated label was renamed.

LOW

MSCEWI2040

Format in a table not supported.

LOW

MSCEWI2042

Binding time variables might require change in query.

LOW

MSCEWI2043

Warning default decimal precision in convert timezone.

LOW

MSCEWI2044

Warning lose of decimal precision in time

LOW

MSCEWI2001

Recursive forward alias error.

MEDIUM

MSCEWI2003

Collation error.

MEDIUM

MSCEWI2005

Geo-Spatial not supported.

MEDIUM

MSCEWI2023

Dynamic SQL statement may be unrecognized.

MEDIUM

MSCEWI2030

DBC reference not supported.

MEDIUM

MSCEWI2032

Columns were reordered.

MEDIUM

MSCEWI2033

Columns may be reordered

MEDIUM

MSCEWI2039

Input format not supported

MEDIUM

MSCEWI2041

TRUNC added to ensure integer

MEDIUM

How should you troubleshoot each error type? Troubleshooting is not an exact science, especially when it comes to complex code conversion. We’ve given you a description of each of the severity levels and some suggestions on how to handle each error type below.

Error Severity

Conversion errors happen. For Mobilize.net SnowConvert, errors are put into the following categories:

Regardless of the error severity, step 1 in troubleshooting a conversion is always to check the source code, especially if you receive a large number of errors. Ensure that it compiles in Teradata first. Often times a misplaced quote or parenthesis could lead to an entire file not converting correctly.

Beyond that, please review the severity levels and information below. It’s worth reiterating that if you have a conversion that did not succeed, please reach out! We would love to hear from you.

Let’s look at each severity level and see what we recommend as next steps.

Low

Low level errors are not actually errors. They are considered warnings. In other words, we are confident the code as a whole was converted, and it will compile in Snowflake. However, some things may look different. For example, SnowConvert changes a CREATE SET TABLE statement to a CREATE TABLE statement. An issue will be logged with code MSCEWI2015 in the issues report, and a comment will be placed above the line where the original CREATE SET TABLE statement was written. The code was successfully converted, but there as a change made. The reason you would create a SET table in Teradata may still exist for your table in Snowflake, but Snowflake’s architecture does not support Set Tables. For 99%+ of all Set Tables we've seen, this transformation is sufficient and the output code is functionally equivalent. Having said that, we would still recommend that you take a look at the output to ensure that the standard table is functionally equivalent in Snowflake. We are confident that it will, but would recommend that you still check on it.

Medium

Medium level errors indicate that a small piece of a object did not convert correctly, such as a line of code in a table statement or a macro/procedure. Check the issues report to find the exact location of the error. Depending on the context, that line or statement may not be necessary or there may be an issue with the source code. There are some terms or elements that SnowConvert does not yet recognize, even though the tool receives regular updates and version releases. For these type of errors, the output is usually a commented out version of the input. Check the line in the output, and determine if that will need a manual conversion or if it can be removed. If you are not sure what to do next, reach out!

High

A high level error indicates that an entire object could not be converted. This will require you to evaluate the object in question (procedure, macro, join, etc.) and evaluate the source code. Most high level conversion errors indicate there is information that simply did not make sense. The vast majority are resolved by updating the source code no the output code. The remainder usually come from a term that SnowConvert does not yet recognize. Post in the forums or send us an email so we can partner with you in solving this problem.

Critical

Critical errors are exceptionally rare (less than 1% of objects error codes), but they do happen. A critical error will most likely cause SnowConvert to fail and a crash report screen to come up. Please give as much information as you can in the crash report screen so we can diagnose the issue. If a crash report screen does not appear, please check the issues report focusing on the critical errors. Though the program completely converted the code, the presence of a critical errors could indicate there are other unrecognized errors as well. Hopefully and mot likely, you will not find yourself in this situation. If you do, check the source code again, and let us know.

Need more support?

As has been mentioned previously in this article, please reach out to us if you need more support. Mobilize.Net wants to be your partner in the conversion process, so let us know how we can help. You can email us at support@mobilize.net or post a message to our forums. If you have a contract for support with Mobilize.Net, reach out to your sales engineer and they can direct your support needs.