[jira] [Resolved] (CARBONDATA-3295) MV datamap throw exception because its rewrite algorithm when multiply subquery

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Resolved] (CARBONDATA-3295) MV datamap throw exception because its rewrite algorithm when multiply subquery

Akash R Nilugal (Jira)

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

Ravindra Pesala resolved CARBONDATA-3295.
-----------------------------------------
       Resolution: Fixed
    Fix Version/s: 1.6.0

> MV datamap throw exception because its rewrite algorithm when multiply subquery
> -------------------------------------------------------------------------------
>
>                 Key: CARBONDATA-3295
>                 URL: https://issues.apache.org/jira/browse/CARBONDATA-3295
>             Project: CarbonData
>          Issue Type: Bug
>            Reporter: Chenjian Qiu
>            Priority: Blocker
>             Fix For: 1.6.0
>
>          Time Spent: 4.5h
>  Remaining Estimate: 0h
>
> error:
> java.lang.UnsupportedOperationException was thrown.
> java.lang.UnsupportedOperationException
>  at org.apache.carbondata.mv.plans.util.SQLBuildDSL$Fragment.productArity(SQLBuildDSL.scala:36)
>  at scala.runtime.ScalaRunTime$$anon$1.<init>(ScalaRunTime.scala:174)
>  at scala.runtime.ScalaRunTime$.typedProductIterator(ScalaRunTime.scala:172)
>  
> mv sql:
> sql(s"""create datamap data_table_mv using 'mv' as
>  | SELECT STARTTIME,LAYER4ID,
>  | COALESCE (SUM(seq),0) AS seq_c,
>  | COALESCE (SUM(succ),0) AS succ_c
>  | FROM data_table
>  | GROUP BY STARTTIME,LAYER4ID""".stripMargin)
>  
> Query sql:
> sql(s"""SELECT MT.`3600` AS `3600`,
>  | MT.`2250410101` AS `2250410101`,
>  | (CASE WHEN (SUM(COALESCE(seq_c, 0))) = 0 THEN NULL
>  | ELSE
>  | (CASE WHEN (CAST((SUM(COALESCE(seq_c, 0))) AS int)) = 0 THEN 0
>  | ELSE ((CAST((SUM(COALESCE(succ_c, 0))) AS double))
>  | / (CAST((SUM(COALESCE(seq_c, 0))) AS double)))
>  | END) * 100
>  | END) AS rate
>  | FROM (
>  | SELECT sum_result.*, H_REGION.`2250410101` FROM
>  | (SELECT cast(floor((starttime + 28800) / 3600) * 3600 - 28800 as int) AS `3600`,
>  | LAYER4ID,
>  | COALESCE(SUM(seq), 0) AS seq_c,
>  | COALESCE(SUM(succ), 0) AS succ_c
>  | FROM data_table
>  | WHERE STARTTIME >= 1549866600 AND STARTTIME < 1549899900
>  | GROUP BY cast(floor((STARTTIME + 28800) / 3600) * 3600 - 28800 as int),LAYER4ID
>  | )sum_result
>  | LEFT JOIN
>  | (SELECT l4id AS `225040101`,
>  | l4name AS `2250410101`,
>  | l4name AS NAME_2250410101
>  | FROM region
>  | GROUP BY l4id, l4name) H_REGION
>  | ON sum_result.LAYER4ID = H_REGION.`225040101`
>  | WHERE H_REGION.NAME_2250410101 IS NOT NULL
>  | ) MT
>  | GROUP BY MT.`3600`, MT.`2250410101`
>  | ORDER BY `3600` ASC LIMIT 5000""".stripMargin)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)