No perfect solution at the moment. From a design perspective, we can cope with column addition. But column rename/deletion are very difficult to handle. Usually requires rebuild the cube again.
Any better idea? Yang On Tue, Dec 13, 2016 at 8:50 AM, Mars Xu <[email protected]> wrote: > > > > 在 2016年12月12日,下午8:14,Mars Xu <[email protected]> 写道: > > > > Hello All, > > > > I notice that Kylin 1.6 has a feature that more robust approach for > hive schema changes. I have test it , just alter the column name of cube’s > fact table ,it throws an error like this: > > > > java.lang.NullPointerException > > at org.apache.kylin.cube.model.CubeDesc.getFactTableDesc( > CubeDesc.java:342) > > at org.apache.kylin.source.hive.SchemaChecker$1.apply( > SchemaChecker.java:110) > > at org.apache.kylin.source.hive.SchemaChecker$1.apply( > SchemaChecker.java:101) > > at com.google.common.collect.Iterators$7.computeNext( > Iterators.java:702) > > at com.google.common.collect.AbstractIterator.tryToComputeNext( > AbstractIterator.java:143) > > at com.google.common.collect.AbstractIterator.hasNext( > AbstractIterator.java:138) > > at com.google.common.collect.ImmutableList.copyOf( > ImmutableList.java:263) > > at com.google.common.collect.ImmutableList.copyOf( > ImmutableList.java:223) > > at org.apache.kylin.source.hive.SchemaChecker.findCubeByTable( > SchemaChecker.java:119) > > at org.apache.kylin.source.hive.SchemaChecker.allowReload( > SchemaChecker.java:212) > > at org.apache.kylin.source.hive.HiveSourceTableLoader. > reloadHiveTables(HiveSourceTableLoader.java:66) > > at org.apache.kylin.rest.service.CubeService.reloadHiveTable( > CubeService.java:538) > > at org.apache.kylin.rest.service.CubeService$$ > FastClassBySpringCGLIB$$17a07c0e.invoke(<generated>) > > at org.springframework.cglib.proxy.MethodProxy.invoke( > MethodProxy.java:204) > > at org.springframework.aop.framework.CglibAopProxy$ > CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:700) > > at org.springframework.aop.framework.ReflectiveMethodInvocation. > proceed(ReflectiveMethodInvocation.java:150) > > …… > > > > What I do is to load hive table in the datasource tab after I change the > hive table using hive cli. Is any solution to this problem? > > > > Mars
