mirror of
https://github.com/apache/impala.git
synced 2025-12-30 03:01:44 -05:00
The limit of 100 was determined empirically by generating deeply nested Parquet and Avro files and then trying to run queries with and without subplans over them (one absolute table ref vs. all relative table refs for maximally nested subplans). Based on those experiments we can handle up to 200 levels of nesting, but the queries get very slow. At 300 levels, we exceed the stack space due to the recursive implementation of the scan. Also, we decode the rep/def levels of Parquet as uint8_t. I settled with 100 because it is safe, future proof and reasonably high for most practical cases. Change-Id: Iebdfa96a6dd6060387e38eaedb8ddf0f9901ac24 Reviewed-on: http://gerrit.cloudera.org:8080/905 Reviewed-by: Alex Behm <alex.behm@cloudera.com> Tested-by: Internal Jenkins
8.6 KiB
8.6 KiB