Nevertheless, Kylin could warn earlier when the model is created. Save us the troubleshooting time.
Mind create a JIRA for this? Yang On Mon, Feb 20, 2017 at 4:11 PM, Österlund Berry <[email protected] > wrote: > This was just a stupid error. One of the dimensions actually had a BINARY > column that had slipped into the model. When I removed that one, cube works > as designed. > > > > > > > > *From:* Österlund Berry [mailto:[email protected]] > *Sent:* den 20 februari 2017 07:14 > *To:* [email protected] > *Subject:* RE: Unrecognized data type binary > > > > Missed to copy/paste the stacktrace for the error. Here it is. > > > > LIMIT 50000": Unrecognized data type binary > > at org.apache.calcite.avatica.Helper.createException(Helper. > java:56) > > at org.apache.calcite.avatica.Helper.createException(Helper. > java:41) > > at org.apache.calcite.avatica.AvaticaStatement.executeInternal( > AvaticaStatement.java:147) > > at org.apache.calcite.avatica.AvaticaStatement.executeQuery( > AvaticaStatement.java:208) > > at org.apache.kylin.rest.service.QueryService.execute( > QueryService.java:538) > > at org.apache.kylin.rest.service.QueryService.queryWithSqlMassage( > QueryService.java:452) > > at org.apache.kylin.rest.service.QueryService.query( > QueryService.java:151) > > at org.apache.kylin.rest.service.QueryService.doQueryWithCache( > QueryService.java:354) > > at org.apache.kylin.rest.controller.QueryController. > query(QueryController.java:69) > > at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source) > > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:498) > > 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:1142) > > at java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:617) > > at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run( > TaskThread.java:61) > > at java.lang.Thread.run(Thread.java:745) > > Caused by: java.lang.IllegalArgumentException: Unrecognized data type > binary > > at org.apache.kylin.query.schema.OLAPTable.createSqlType( > OLAPTable.java:136) > > at org.apache.kylin.query.schema.OLAPTable.deriveRowType( > OLAPTable.java:126) > > at org.apache.kylin.query.schema.OLAPTable.getRowType( > OLAPTable.java:118) > > at org.apache.calcite.prepare.CalciteCatalogReader.getTableFrom( > CalciteCatalogReader.java:124) > > at org.apache.calcite.prepare.CalciteCatalogReader.getTable( > CalciteCatalogReader.java:106) > > at org.apache.calcite.prepare.CalciteCatalogReader.getTable( > CalciteCatalogReader.java:72) > > at org.apache.calcite.sql.validate.EmptyScope. > getTableNamespace(EmptyScope.java:75) > > at org.apache.calcite.sql.validate.DelegatingScope. > getTableNamespace(DelegatingScope.java:125) > > at org.apache.calcite.sql.validate.IdentifierNamespace. > validateImpl(IdentifierNamespace.java:104) > > at org.apache.calcite.sql.validate.AbstractNamespace. > validate(AbstractNamespace.java:86) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateNamespace(SqlValidatorImpl.java:864) > > at org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery( > SqlValidatorImpl.java:845) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateFrom(SqlValidatorImpl.java:2775) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateFrom(SqlValidatorImpl.java:2760) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateJoin(SqlValidatorImpl.java:2797) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateFrom(SqlValidatorImpl.java:2769) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateSelect(SqlValidatorImpl.java:2988) > > at org.apache.calcite.sql.validate.SelectNamespace. > validateImpl(SelectNamespace.java:60) > > at org.apache.calcite.sql.validate.AbstractNamespace. > validate(AbstractNamespace.java:86) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateNamespace(SqlValidatorImpl.java:864) > > at org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery( > SqlValidatorImpl.java:845) > > at org.apache.calcite.sql.SqlSelect.validate(SqlSelect.java:208) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validateScopedExpression(SqlValidatorImpl.java:820) > > at org.apache.calcite.sql.validate.SqlValidatorImpl. > validate(SqlValidatorImpl.java:536) > > at org.apache.calcite.sql2rel.SqlToRelConverter.convertQuery( > SqlToRelConverter.java:533) > > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:224) > > at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:193) > > at org.apache.calcite.prepare.CalcitePrepareImpl.prepare2_( > CalcitePrepareImpl.java:724) > > at org.apache.calcite.prepare.CalcitePrepareImpl.prepare_( > CalcitePrepareImpl.java:591) > > at org.apache.calcite.prepare.CalcitePrepareImpl.prepareSql( > CalcitePrepareImpl.java:561) > > at org.apache.calcite.jdbc.CalciteConnectionImpl.parseQuery( > CalciteConnectionImpl.java:215) > > at org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute( > CalciteMetaImpl.java:594) > > at org.apache.calcite.avatica.AvaticaConnection. > prepareAndExecuteInternal(AvaticaConnection.java:613) > > at org.apache.calcite.avatica.AvaticaStatement.executeInternal( > AvaticaStatement.java:139) > > ... 76 more > > 2017-02-20 07:11:11,497 INFO [Query > 64ea440d-ea56-49c0-968e-b8cdd20cfdef-1932] > service.QueryService:284 : > > ==========================[QUERY]=============================== > > Query Id: 64ea440d-ea56-49c0-968e-b8cdd20cfdef > > SQL: select > > count(1) as counter > > from <FACT TABLE> as f > > left join <LOOKUP TABLE> as e on f.rtc_id = e.rtc_id > > LIMIT 50000 > > User: <USER> > > Success: false > > Duration: 0.0 > > Project: <PROJECT> > > Realization Names: [] > > Cuboid Ids: [] > > Total scan count: 0 > > Result row count: 0 > > Accept Partial: true > > Is Partial Result: false > > Hit Exception Cache: false > > Storage cache used: false > > Message: Error while executing SQL "<QUERY AS ABOVE>": Unrecognized data > type binary > > ==========================[QUERY]=============================== > > > > *From:* Österlund Berry [mailto:[email protected] > <[email protected]>] > *Sent:* den 20 februari 2017 07:09 > *To:* [email protected] > *Subject:* Unrecognized data type binary > > > > Hi > > > > I’m stuck and need some help! > > In one of my dimension, I have an integer column that is the PK/FK join to > the lookup table. As soon as I use that column to join with the lookup > table, I get a “Unrecognized data type binary” error message. I Have other > lookup tables with the exact same setup in the same cube & model, and they > work fine. > > > > Can someone point me in the right direction to help me solve this error? > > > > >
