You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "jiatao.tao (JIRA)" <ji...@apache.org> on 2017/07/31 15:32:00 UTC

[jira] [Updated] (KYLIN-2762) Get "Owner required" error on saving data model

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

jiatao.tao updated KYLIN-2762:
------------------------------
    Attachment: KYLIN-2762_patch.diff

Fixed by move KYLIN_HOME/tool in front of the CLASSPATH

> Get "Owner required" error on saving data model
> -----------------------------------------------
>
>                 Key: KYLIN-2762
>                 URL: https://issues.apache.org/jira/browse/KYLIN-2762
>             Project: Kylin
>          Issue Type: Bug
>    Affects Versions: v2.1.0
>            Reporter: Shaofeng SHI
>            Assignee: jiatao.tao
>             Fix For: v2.1.0
>
>         Attachments: KYLIN-2762_patch.diff
>
>
> Use the latest 2.1 build, when save a new data model, get "Owner required" error. In kylin.log, there are the following errors:
> {code}
> 2017-07-27 15:26:55,144 DEBUG [http-bio-7070-exec-2] controller.ModelController:214 : Saving MODEL {
>   "name": "test21",
>   "description": "",
>   "fact_table": "DEFAULT.KYLIN_SALES",
>   "lookups": [
>     {
>       "table": "DEFAULT.KYLIN_CAL_DT",
>       "alias": "KYLIN_CAL_DT",
>       "joinTable": "KYLIN_SALES",
>       "kind": "LOOKUP",
>       "join": {
>         "type": "inner",
>         "primary_key": [
>           "KYLIN_CAL_DT.CAL_DT"
>         ],
>         "foreign_key": [
>           "KYLIN_SALES.PART_DT"
>         ],
>         "isCompatible": [
>           true
>         ],
>         "pk_type": [
>           "date"
>         ],
>         "fk_type": [
>           "date"
>         ]
>       }
>     }
>   ],
>   "filter_condition": "",
>   "dimensions": [
>     {
>       "table": "KYLIN_SALES",
>       "columns": [
>         "TRANS_ID",
>         "PART_DT",
>         "LSTG_FORMAT_NAME",
>         "LEAF_CATEG_ID",
>         "LSTG_SITE_ID",
>         "BUYER_ID"
>       ]
>     },
>     {
>       "table": "KYLIN_CAL_DT",
>       "columns": [
>         "CAL_DT",
>         "YEAR_BEG_DT",
>         "QTR_BEG_DT",
>         "MONTH_BEG_DT",
>         "WEEK_BEG_DT"
>       ]
>     }
>   ],
>   "metrics": [
>     "KYLIN_SALES.PRICE",
>     "KYLIN_SALES.ITEM_COUNT"
>   ],
>   "partition_desc": {
>     "partition_date_column": "KYLIN_SALES.PART_DT",
>     "partition_type": "APPEND",
>     "partition_date_format": "yyyy-MM-dd"
>   },
>   "last_modified": 0
> }
> 2017-07-27 15:26:55,172 DEBUG [pool-10-thread-1] cachesync.Broadcaster:132 : Servers in the cluster: [localhost:7070]
> 2017-07-27 15:26:55,172 DEBUG [pool-10-thread-1] cachesync.Broadcaster:139 : Announcing new broadcast event: BroadcastEvent{entity=data_model, event=create, cacheKey=test21}
> 2017-07-27 15:26:55,182 DEBUG [pool-10-thread-1] cachesync.Broadcaster:132 : Servers in the cluster: [localhost:7070]
> 2017-07-27 15:26:55,182 DEBUG [pool-10-thread-1] cachesync.Broadcaster:139 : Announcing new broadcast event: BroadcastEvent{entity=project, event=update, cacheKey=learn_kylin}
> 2017-07-27 15:26:55,191 DEBUG [http-bio-7070-exec-2] service.AclService:198 : ACL of org.springframework.security.acls.domain.ObjectIdentityImpl[Type: org.apache.kylin.metadata.model.DataModelDesc; Identifier: bafa3eca-be31-4918-9354-acd8243ca058] created successfully.
> 2017-07-27 15:26:55,208 DEBUG [http-bio-7070-exec-10] project.ProjectL2Cache:191 : Loading L2 project cache for LEARN_KYLIN
> 2017-07-27 15:26:55,208 WARN  [http-bio-7070-exec-10] realization.RealizationRegistry:125 : No provider for realization type INVERTED_INDEX
> 2017-07-27 15:26:55,213 DEBUG [http-bio-7070-exec-2] service.AclService:255 : ACL of org.springframework.security.acls.domain.ObjectIdentityImpl[Type: org.apache.kylin.metadata.model.DataModelDesc; Identifier: bafa3eca-be31-4918-9354-acd8243ca058] updated successfully.
> 2017-07-27 15:26:55,216 INFO  [http-bio-7070-exec-10] cube.CubeManager:834 : Reloaded cube kylin_sales_cube being CUBE[name=kylin_sales_cube] having 0 segments
> 2017-07-27 15:26:55,217 INFO  [http-bio-7070-exec-10] service.CacheService:136 : removeOLAPDataSource is called for project learn_kylin
> 2017-07-27 15:26:55,217 INFO  [http-bio-7070-exec-10] service.CacheService:118 : cleaning cache for project learn_kylin (currently remove all entries)
> 2017-07-27 15:26:55,217 DEBUG [http-bio-7070-exec-10] cachesync.Broadcaster:236 : Done broadcasting metadata change: entity=project_schema, event=UPDATE, cacheKey=learn_kylin
> 2017-07-27 15:26:55,218 DEBUG [http-bio-7070-exec-10] cachesync.Broadcaster:236 : Done broadcasting metadata change: entity=data_model, event=CREATE, cacheKey=test21
> 2017-07-27 15:26:55,226 ERROR [http-bio-7070-exec-2] controller.BasicController:57 :
> java.lang.IllegalArgumentException: Owner required
> 	at org.springframework.util.Assert.notNull(Assert.java:115)
> 	at org.springframework.security.acls.domain.AclImpl.<init>(AclImpl.java:102)
> 	at org.apache.kylin.rest.service.AclService.readAclsById(AclService.java:166)
> 	at org.apache.kylin.rest.service.AclService.readAclById(AclService.java:127)
> 	at org.apache.kylin.rest.service.AccessService.inherit(AccessService.java:230)
> 	at org.apache.kylin.rest.service.AccessService$$FastClassBySpringCGLIB$$91550c7f.invoke(<generated>)
> 	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
> 	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:651)
> 	at org.apache.kylin.rest.service.AccessService$$EnhancerBySpringCGLIB$$f8fbfbf.inherit(<generated>)
> 	at org.apache.kylin.rest.service.ModelService.createModelDesc(ModelService.java:129)
> 	at org.apache.kylin.rest.service.ModelService$$FastClassBySpringCGLIB$$eb0205be.invoke(<generated>)
> 	at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
> 	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:651)
> 	at org.apache.kylin.rest.service.ModelService$$EnhancerBySpringCGLIB$$a340eadc.createModelDesc(<generated>)
> 	at org.apache.kylin.rest.controller.ModelController.saveModelDesc(ModelController.java:114)
> 	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:110)
> 	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:832)
> 	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:743)
> 	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
> 	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:961)
> 	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895)
> 	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967)
> 	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:869)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
> 	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843)
> 	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:316)
> 	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
> 	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:48)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)
> 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:205)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:120)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64)
> 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:53)
> 	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
> 	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
> 	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
> 	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
> 	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
> 	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
> 	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:318)
> 	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)
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)