[ 
https://issues.apache.org/jira/browse/DRILL-7472?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Arina Ielchiieva updated DRILL-7472:
------------------------------------
    Summary: Fix ser / de for sys and information_schema tables  (was: Complex 
queries on INFORMATION_SCHEMA fail when `planner.slice_target`is small)

> Fix ser / de for sys and information_schema tables
> --------------------------------------------------
>
>                 Key: DRILL-7472
>                 URL: https://issues.apache.org/jira/browse/DRILL-7472
>             Project: Apache Drill
>          Issue Type: Bug
>    Affects Versions: 1.16.0
>            Reporter: Vova Vysotskyi
>            Assignee: Arina Ielchiieva
>            Priority: Major
>              Labels: ready-to-commit
>             Fix For: 1.17.0
>
>
> Set small value for slice_target:
> {code:sql}
> alter session set `planner.slice_target`=1;
> {code}
> Run query on INFORMATION_SCHEMA:
> {code:sql}
> select * from information_schema.`tables` where TABLE_NAME='lineitem' order 
> by TABLE_NAME;
> {code}
> It will fail with the following exception:
> {noformat}
> Error: SYSTEM ERROR: InvalidDefinitionException: Cannot construct instance of 
> `org.apache.drill.exec.store.ischema.InfoSchemaFilter$ExprNode` (no Creators, 
> like default construct, exist): cannot deserialize from Object value (no 
> delegate- or property-based Creator)
>  at [Source: (String)"{
>   "pop" : "hash-partition-sender",
>   "@id" : 0,
>   "receiver-major-fragment" : 2,
>   "child" : {
>     "pop" : "InfoSchemaSubScan",
>     "@id" : 1,
>     "table" : "TABLES",
>     "filter" : {
>       "exprRoot" : {
>         "type" : "FUNCTION",
>         "function" : "equal",
>         "args" : [ {
>           "type" : "FIELD",
>           "field" : "TABLE_NAME"
>         }, {
>           "type" : "CONSTANT",
>           "value" : "lineitem"
>         } ]
>       }
>     },
>     "initialAllocation" : 1000000,
>     "maxAllocat"[truncated 681 chars]; line: 11, column: 9] (through 
> reference chain: 
> org.apache.drill.exec.physical.config.HashPartitionSender["child"]->org.apache.drill.exec.store.ischema.InfoSchemaSubScan["filter"]->org.apache.drill.exec.store.ischema.InfoSchemaFilter["exprRoot"])
> {noformat}
> Even when deserialization is fixed, it will fail when creating 
> InfoSchemaBatchCreator:
> {noformat}
> java.lang.Exception: org.apache.drill.common.exceptions.UserRemoteException: 
> SYSTEM ERROR: UnsupportedOperationException: Schema tree can only be created 
> in root fragment. This is a non-root fragment.
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to