This sql is not generated by kylin, Kylin does not generate any query.
Kylin is read only OLAP system. Kylin accepts SQL and returns query result.

Please try that SQL in Kylin insight tab directly, if not work, you could
adjust the statement to figure out which one is the incompatible one.

2017-08-10 17:26 GMT+08:00 578300...@qq.com <believe...@foxmail.com>:

> You mean that the tableau's calculation field query and kylin can not be
> well fused?
> Beacause the sql is automatically generated by kylin on the basis of
> tableau's calculation field.
> And the environment is:
> jdk1.7.0_80
> hadoop-2.5.0-cdh5.3.9
> hbase-0.98.6-cdh5.3.9
> apache-kylin-1.6.0
> tableau 9
>
>
> ------------------ 原始邮件 ------------------
> 发件人: "Billy Liu";<billy...@apache.org>;
> 发送时间: 2017年8月10日(星期四) 下午5:05
> 收件人: "dev"<dev@kylin.apache.org>;
>
> 主题: Re: The REST query request failed
>
>
>
> The error is clear, some sql grammar did not work in your case, such as "{d
> '2017-06-30'))}"
>
> 2017-08-10 15:58 GMT+08:00 578300...@qq.com <believe...@foxmail.com>:
>
> > Oh,I see.
> > I will redescribe with word.
> >
> >
> > I created a calculated field in tableau to judge the date(统计日期) is or not
> > the last month of last year:
> > YEAR([统计日期])=YEAR(DATEADD('year',-1,[截止日期])) and MONTH([统计日期])=12
> >
> >
> >
> > when I use the calculated field ,there is an error in kylin.log:
> > 2017-08-10 15:44:27,279 ERROR [http-bio-7070-exec-2]
> > controller.BasicController:44 :
> > org.apache.kylin.rest.exception.InternalErrorException: Encountered ")"
> > at line 1, column 154. Was expecting:     "}" ...
> >         at org.apache.kylin.rest.service.QueryService.doQueryWithCache(
> > QueryService.java:391)
> >         at org.apache.kylin.rest.controller.QueryController.
> > query(QueryController.java:69)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke(
> > NativeMethodAccessorImpl.java:57)
> >         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> > DelegatingMethodAccessorImpl.java:43)
> >         at java.lang.reflect.Method.invoke(Method.java:606)
> >         at org.springframework.web.method.support.
> InvocableHandlerMethod.
> > doInvoke(InvocableHandlerMethod.java:221)
> >         at org.springframework.web.method.support.
> InvocableHandlerMethod.
> > invokeForRequest(InvocableHandlerMethod.java:136)
> >         at org.springframework.web.servlet.mvc.method.annotation.
> > ServletInvocableHandlerMethod.invokeAndHandle(
> > ServletInvocableHandlerMethod.java:104)
> >         at org.springframework.web.servlet.mvc.method.annotation.
> > RequestMappingHandlerAdapter.invokeHandleMethod(
> > RequestMappingHandlerAdapter.java:743)
> >         at org.springframework.web.servlet.mvc.method.annotation.
> > RequestMappingHandlerAdapter.handleInternal(
> RequestMappingHandlerAdapter.
> > java:672)
> >         at org.springframework.web.servlet.mvc.method.
> > AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.
> java:82)
> >         at org.springframework.web.servlet.DispatcherServlet.
> > doDispatch(DispatcherServlet.java:933)
> >         at org.springframework.web.servlet.DispatcherServlet.
> > doService(DispatcherServlet.java:867)
> >         at org.springframework.web.servlet.FrameworkServlet.
> > processRequest(FrameworkServlet.java:951)
> >         at org.springframework.web.servlet.FrameworkServlet.
> > doPost(FrameworkServlet.java:853)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
> >         at org.springframework.web.servlet.FrameworkServlet.
> > service(FrameworkServlet.java:827)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
> >         at org.apache.catalina.core.ApplicationFilterChain.
> > internalDoFilter(ApplicationFilterChain.java:303)
> >         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:208)
> >         at org.apache.tomcat.websocket.server.WsFilter.doFilter(
> > WsFilter.java:52)
> >         at org.apache.catalina.core.ApplicationFilterChain.
> > internalDoFilter(ApplicationFilterChain.java:241)
> >         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:208)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> >         at org.springframework.security.web.access.intercept.
> > FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
> >         at org.springframework.security.web.access.intercept.
> > FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.access.
> > ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.session.
> > SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.authentication.
> > AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.
> > java:113)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.servletapi.
> > SecurityContextHolderAwareRequestFilter.doFilter(
> > SecurityContextHolderAwareRequestFilter.java:54)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.savedrequest.
> > RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.authentication.www.
> > BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:201)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.authentication.ui.
> > DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilt
> > er.java:91)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.authentication.
> > AbstractAuthenticationProcessingFilter.doFilter(
> > AbstractAuthenticationProcessingFilter.java:183)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.authentication.logout.
> > LogoutFilter.doFilter(LogoutFilter.java:105)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.context.
> > SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilt
> > er.java:87)
> >         at org.springframework.security.web.FilterChainProxy$
> > VirtualFilterChain.doFilter(FilterChainProxy.java:342)
> >         at org.springframework.security.web.FilterChainProxy.
> > doFilterInternal(FilterChainProxy.java:192)
> >         at org.springframework.security.web.FilterChainProxy.doFilter(
> > FilterChainProxy.java:160)
> >         at org.springframework.web.filter.DelegatingFilterProxy.
> > invokeDelegate(DelegatingFilterProxy.java:343)
> >         at org.springframework.web.filter.DelegatingFilterProxy.
> doFilter(
> > DelegatingFilterProxy.java:260)
> >         at org.apache.catalina.core.ApplicationFilterChain.
> > internalDoFilter(ApplicationFilterChain.java:241)
> >         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:208)
> >         at com.thetransactioncompany.cors.CORSFilter.doFilter(
> > CORSFilter.java:209)
> >         at com.thetransactioncompany.cors.CORSFilter.doFilter(
> > CORSFilter.java:244)
> >         at org.apache.catalina.core.ApplicationFilterChain.
> > internalDoFilter(ApplicationFilterChain.java:241)
> >         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
> > ApplicationFilterChain.java:208)
> >         at org.apache.catalina.core.StandardWrapperValve.invoke(
> > StandardWrapperValve.java:220)
> >         at org.apache.catalina.core.StandardContextValve.invoke(
> > StandardContextValve.java:122)
> >         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
> > AuthenticatorBase.java:505)
> >         at org.apache.catalina.core.StandardHostValve.invoke(
> > StandardHostValve.java:169)
> >         at org.apache.catalina.valves.ErrorReportValve.invoke(
> > ErrorReportValve.java:103)
> >         at org.apache.catalina.valves.AccessLogValve.invoke(
> > AccessLogValve.java:956)
> >         at org.apache.catalina.core.StandardEngineValve.invoke(
> > StandardEngineValve.java:116)
> >         at org.apache.catalina.connector.CoyoteAdapter.service(
> > CoyoteAdapter.java:436)
> >         at org.apache.coyote.http11.AbstractHttp11Processor.process(
> > AbstractHttp11Processor.java:1078)
> >         at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
> > process(AbstractProtocol.java:625)
> >         at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.
> > run(JIoEndpoint.java:316)
> >         at java.util.concurrent.ThreadPoolExecutor.runWorker(
> > ThreadPoolExecutor.java:1145)
> >         at java.util.concurrent.ThreadPoolExecutor$Worker.run(
> > ThreadPoolExecutor.java:615)
> >         at org.apache.tomcat.util.threads.TaskThread$
> WrappingRunnable.run(
> > TaskThread.java:61)
> >         at java.lang.Thread.run(Thread.java:745)
> >
> >
> >
> >
> >
> >
> >
> > and in kylin.log,the sql is:
> > SELECT (CASE WHEN (( EXTRACT(YEAR FROM "BASEINFO_REPAY_HIS_FACT_
> PARTATION"."CAL_DATE")
> > =  EXTRACT(YEAR FROM  TIMESTAMPADD(SQL_TSI_YEAR,-1,{d '2017-06-30'))})
> > AND ( EXTRACT(MONTH FROM "BASEINFO_REPAY_HIS_FACT_PARTATION"."CAL_DATE")
> > = 12)) THEN 1 WHEN NOT (( EXTRACT(YEAR FROM "BASEINFO_REPAY_HIS_FACT_
> PARTATION"."CAL_DATE")
> > =  EXTRACT(YEAR FROM  TIMESTAMPADD(SQL_TSI_YEAR,-1,{d '2017-06-30'))})
> > AND ( EXTRACT(MONTH FROM "BASEINFO_REPAY_HIS_FACT_PARTATION"."CAL_DATE")
> > = 12)) THEN 0 ELSE NULL END) AS "Calculation_FJFAIBABFECFFCFC" FROM
> > "TN_QUERY"."BASEINFO_REPAY_HIS_FACT_PARTATION" "BASEINFO_REPAY_HIS_FACT_
> PARTATION"
> > GROUP BY (CASE WHEN (( EXTRACT(YEAR FROM "BASEINFO_REPAY_HIS_FACT_
> PARTATION"."CAL_DATE")
> > =  EXTRACT(YEAR FROM  TIMESTAMPADD(SQL_TSI_YEAR,-1,{d '2017-06-30'))})
> > AND ( EXTRACT(MONTH FROM "BASEINFO_REPAY_HIS_FACT_PARTATION"."CAL_DATE")
> > = 12)) THEN 1 WHEN NOT (( EXTRACT(YEAR FROM "BASEINFO_REPAY_HIS_FACT_
> PARTATION"."CAL_DATE")
> > =  EXTRACT(YEAR FROM  TIMESTAMPADD(SQL_TSI_YEAR,-1,{d '2017-06-30'))})
> > AND ( EXTRACT(MONTH FROM "BASEINFO_REPAY_HIS_FACT_PARTATION"."CAL_DATE")
> > = 12)) THEN 0 ELSE NULL END)
> >
> >
> >
> >
> > The sql generated Automatically.
> > Thank you!
> >
> >
> >
> >
> >
> >
> > ------------------ 原始邮件 ------------------
> > 发件人: "Billy Liu";<billy...@apache.org>;
> > 发送时间: 2017年8月10日(星期四) 下午3:20
> > 收件人: "dev"<dev@kylin.apache.org>;
> >
> > 主题: Re: The REST query request failed
> >
> >
> >
> > Attachment is not allowed in the mailer, you could upload the images to
> > some public image services.
> >
> > 2017-08-09 19:21 GMT+08:00 578300...@qq.com <believe...@foxmail.com>:
> >
> > >
> > > The picture may not show up, I put them in the attachment.Thank you!
> > >
> > > ------------------ 原始邮件 ------------------
> > > *发件人:* "578300...@qq.com";<believe...@foxmail.com>;
> > > *发送时间:* 2017年8月9日(星期三) 晚上6:08
> > > *收件人:* "dev"<dev@kylin.apache.org>;
> > > *主题:* The REST query request failed
> > >
> > > Hello!
> > >     when I use tableau to connect to kylin,some error arised.
> > >
> > >      I created a calculated field in tableau
> > >
> > >
> > >     and in kylin.log,the sql is:
> > >
> > >
> > >   How is this caused  and how can I solve it. Thank you very much!
> > >
> > >
> >
>

Reply via email to