User GuidesAPI ReferenceRelease Notes
Doc HomeHelp CenterLog In

Tips for Troubleshooting Transformations

This topic lists errors you can encounter in the transformation editor with common causes and solutions.

Error Messages in the Transformation Editor

If you receive an error message in the transformation editor, these tips can help you determine the possible cause and solution.

Error Message

Cause and Solution

"Mismatched input ‘SELECT’ expecting {, ‘,’, ‘;’, ‘.’}" (in transformation editor)

You have multiple transformations within this cell and one is missing a ‘;’ at the end.

"Mismatched input ‘’ expecting K_AS" (in transformation editor)

The structure of your transformation should be similar to: SELECT
This error indicates that you have not included the AS alias clause.

"“Attribute_1” is an array, but it’s being used like a string" (in transformation editor)

The function you are trying to use requires a string input, but this field is currently an array.

  • If you expect the field to contain only single values, use to_string() or get()
  • If you expect the field to contain multi-value arrays, use map and lambda to apply the function to all values in the array

Remember that if you use to_string() or get() your attribute type will be a string rather than array. You can change back by using the array() function.

"“Attribute_1” is a string, but it’s being used like an array" (in transformation editor)The opposite of the previous example: the function you are trying to use requires an array input, but this field is currently a string. You can convert the data type using the array() function.
"Cannot convert complex types within an array value" (in error log when unified dataset update fails)This error occurs when a transformation does not convert an array<array<data_type>> (an array of arrays) to array.
Transformations that include the functions top, mode, or collect_set are the likeliest sources of an array of arrays.
A potential solution is to rewrite your transformation from this format: group collect_set(allNames) As allNames by keyField1 to a format that uses spread: group collect_set(...allNames) As allNames by keyField1.
The first version collects a set of sets of names [['joe', 'joey'], ['joe'], ['anne']]. Using spread (...) in the second version collects a set of names ['joe', 'joey', 'anne'].
A different solution may be needed depending on the specifics of your transformation.

Error Messages on the Unified Dataset Page

If you navigate to the Unified Dataset page and a 500 Internal Server Error, "The previewRunner service threw: java.lang.NullPointerException" message appears, the preview microservice is not running. A system administrator can restart Tamr Core to correct this problem.

This problem typically is the result of an error in a transformation. Reviewing the syntax and completeness of your transformations can prevent recurrence.