Hi, experts,

My application uses a CTAS query to create a result table in hive, the
source table has deeply nested struct column (7 levels). CTAS query fails
with the following exception.

jdbc:hive2://localhost:10000/default> CREATE TABLE IF NOT EXISTS
reporting.test1 AS select row_number() over() AS rowid, * from (select data
from store.table1) X;

Error: Error while compiling statement: FAILED: SemanticException
org.apache.hadoop.hive.serde2.SerDeException: Number of levels of nesting
supported for LazySimpleSerde is 7 Unable to work with level 8. Use
hive.serialization.extend.nesting.levels serde property for tables using
LazySimpleSerde. (state=42000,code=40000)

Then I followed the suggestion to
add hive.serialization.extend.nesting.levels in hive-site.xml in order to
enable extended nesting levels, however, it is not in effect and I still
see the same exception. I noticed that
hive.serialization.extend.nesting.levels is a serde property, so is this
the reason that adding this property in hive-site.xml does not help? Then
how to enable this property for CTAS query? Thanks very much for the help!

Jessica

Reply via email to