That’s right, before we store the metadata, we need make sure it already passed all the check.
-- Best regards, John Zhao Cell: +1 (408) 464-5225 On 3/2/16, 6:59 PM, "hongbin ma" <[email protected]> wrote: >btw, is it leaving a inconsistent state in the metadata store (cube >instance exist but cube desc or model missing)? if it is, please elaborate. >In that case something needs improving int the cube create controller, etc. > >On Thu, Mar 3, 2016 at 10:56 AM, hongbin ma <[email protected]> wrote: > >> as the stacktrace said: >> >> java.lang.IllegalStateException: Derived can only be defined on lookup >> table, >> >> you need to redefine the cube desc >> >> On Thu, Mar 3, 2016 at 6:44 AM, zhaoyunjiong (JIRA) <[email protected]> >> wrote: >> >>> zhaoyunjiong created KYLIN-1464: >>> ----------------------------------- >>> >>> Summary: org.apache.kylin.cube.CubeInstance.getDataModelDesc >>> throw java.lang.NullPointerException >>> Key: KYLIN-1464 >>> URL: https://issues.apache.org/jira/browse/KYLIN-1464 >>> Project: Kylin >>> Issue Type: Bug >>> Reporter: zhaoyunjiong >>> Assignee: zhaoyunjiong >>> >>> >>> User report can't see models from Web UI. >>> After I check log, I found java.lang.NullPointerException >>> {quote} >>> 2016-03-02 08:06:59,645 ERROR [http-bio-7070-exec-22] >>> controller.BasicController:44 : >>> java.lang.NullPointerException >>> at >>> org.apache.kylin.cube.CubeInstance.getDataModelDesc(CubeInstance.java:128) >>> at >>> org.apache.kylin.metadata.MetadataManager.getModels(MetadataManager.java:326) >>> at >>> org.apache.kylin.rest.service.ModelService.listAllModels(ModelService.java:55) >>> at >>> org.apache.kylin.rest.service.ModelService.getModels(ModelService.java:74) >>> at >>> org.apache.kylin.rest.service.ModelService$$FastClassByCGLIB$$eb0205be.invoke(<generated>) >>> at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) >>> at >>> org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:618) >>> at >>> org.apache.kylin.rest.service.ModelService$$EnhancerByCGLIB$$2e750d6d.getModels(<generated>) >>> at >>> org.apache.kylin.rest.controller.ModelController.getModels(ModelController.java:71) >>> at sun.reflect.GeneratedMethodAccessor164.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:606) >>> at >>> org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:213) >>> at >>> org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126) >>> at >>> org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:96) >>> at >>> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617) >>> at >>> org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578) >>> at >>> org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80) >>> at >>> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923) >>> at >>> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) >>> at >>> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) >>> {quote} >>> >>> And before that we can see from log why it happens. >>> {quote} >>> 2016-03-02 08:06:59,238 INFO [http-bio-7070-exec-22] >>> cube.CubeDescManager:197 : Reloading Cube Metadata from folder >>> _kylin_metadata_qa2(key='/cube_desc')@_kylin_metadata_qa2@hbase >>> 2016-03-02 08:06:59,632 ERROR [http-bio-7070-exec-22] >>> cube.CubeDescManager:207 : Error loading cube desc /cube_desc/test4.json >>> java.lang.IllegalStateException: Derived can only be defined on lookup >>> table, cube CubeDesc [name=test4], DimensionDesc >>> [name=DEFAULT.SLNG_CATEG_META_LVL2_DERIVED, join=null, hierarchy=null, >>> table=DEFAULT.SLNG_CATEG_META_LVL2, column=null, derived=[CATEG_LVL2_NAME, >>> META_CATEG_NAME]] >>> at >>> org.apache.kylin.cube.model.DimensionDesc.init(DimensionDesc.java:111) >>> at org.apache.kylin.cube.model.CubeDesc.init(CubeDesc.java:461) >>> at >>> org.apache.kylin.cube.CubeDescManager.loadCubeDesc(CubeDescManager.java:134) >>> at >>> org.apache.kylin.cube.CubeDescManager.reloadAllCubeDesc(CubeDescManager.java:205) >>> at >>> org.apache.kylin.cube.CubeDescManager.<init>(CubeDescManager.java:94) >>> at >>> org.apache.kylin.cube.CubeDescManager.getInstance(CubeDescManager.java:74) >>> at >>> org.apache.kylin.cube.CubeInstance.getDescriptor(CubeInstance.java:123) >>> at >>> org.apache.kylin.cube.CubeInstance.getDataModelDesc(CubeInstance.java:128) >>> at >>> org.apache.kylin.metadata.MetadataManager.getModels(MetadataManager.java:326) >>> at >>> org.apache.kylin.rest.service.ModelService.listAllModels(ModelService.java:55) >>> at >>> org.apache.kylin.rest.service.ModelService.getModels(ModelService.java:74) >>> at >>> org.apache.kylin.rest.service.ModelService$$FastClassByCGLIB$$eb0205be.invoke(<generated>) >>> at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) >>> at >>> org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:618) >>> at >>> org.apache.kylin.rest.service.ModelService$$EnhancerByCGLIB$$2e750d6d.getModels(<generated>) >>> at >>> org.apache.kylin.rest.controller.ModelController.getModels(ModelController.java:71) >>> at sun.reflect.GeneratedMethodAccessor164.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:606) >>> at >>> org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:213) >>> at >>> org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java: >>> {quote} >>> >>> >>> >>> -- >>> This message was sent by Atlassian JIRA >>> (v6.3.4#6332) >>> >> >> >> >> -- >> Regards, >> >> *Bin Mahone | 马洪宾* >> Apache Kylin: http://kylin.io >> Github: https://github.com/binmahone >> > > > >-- >Regards, > >*Bin Mahone | 马洪宾* >Apache Kylin: http://kylin.io >Github: https://github.com/binmahone
