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

ASF GitHub Bot updated HUDI-1446:
---------------------------------
    Labels: pull-request-available  (was: )

> Support skip bootstrapIndex's init in abstract fs view init
> -----------------------------------------------------------
>
>                 Key: HUDI-1446
>                 URL: https://issues.apache.org/jira/browse/HUDI-1446
>             Project: Apache Hudi
>          Issue Type: Improvement
>            Reporter: ann
>            Priority: Major
>              Labels: pull-request-available
>
> the bootstrapIndex default is HFileBootstrapIndex. If program doesn't include 
> hbase pom, it would throw a exception as follows:
> Caused by: java.lang.NoClassDefFoundError: 
> org/apache/hadoop/hbase/util/BytesCaused by: java.lang.NoClassDefFoundError: 
> org/apache/hadoop/hbase/util/Bytes at 
> org.apache.hudi.common.bootstrap.index.HFileBootstrapIndex.<clinit>(HFileBootstrapIndex.java:92)
>  at java.lang.Class.forName0(Native Method) at 
> java.lang.Class.forName(Class.java:264) at 
> org.apache.hudi.common.util.ReflectionUtils.getClass(ReflectionUtils.java:53) 
> at 
> org.apache.hudi.common.util.ReflectionUtils.loadClass(ReflectionUtils.java:87)
>  at 
> org.apache.hudi.common.util.ReflectionUtils.loadClass(ReflectionUtils.java:98)
>  at 
> org.apache.hudi.common.bootstrap.index.BootstrapIndex.getBootstrapIndex(BootstrapIndex.java:159)
>  at 
> org.apache.hudi.common.table.view.AbstractTableFileSystemView.init(AbstractTableFileSystemView.java:106)
>  at 
> org.apache.hudi.common.table.view.HoodieTableFileSystemView.init(HoodieTableFileSystemView.java:106)
>  at 
> org.apache.hudi.common.table.view.HoodieTableFileSystemView.<init>(HoodieTableFileSystemView.java:100)
>  at 
> org.apache.hudi.common.table.view.FileSystemViewManager.createInMemoryFileSystemView(FileSystemViewManager.java:158)
>  at 
> org.apache.hudi.common.table.view.FileSystemViewManager.lambda$createViewManager$ab86fd6b$5(FileSystemViewManager.java:213)
>  at 
> org.apache.hudi.common.table.view.FileSystemViewManager.lambda$getFileSystemView$1(FileSystemViewManager.java:104)
>  at 
> java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660)
>  at 
> org.apache.hudi.common.table.view.FileSystemViewManager.getFileSystemView(FileSystemViewManager.java:103)
>  at 
> org.apache.hudi.table.HoodieTable.getBaseFileOnlyView(HoodieTable.java:242) 
> at 
> org.apache.hudi.table.action.commit.UpsertPartitioner.getSmallFiles(UpsertPartitioner.java:230)
>  at 
> org.apache.hudi.table.action.commit.UpsertPartitioner.lambda$getSmallFilesForPartitions$681ff4ab$1(UpsertPartitioner.java:213)
>  at 
> org.apache.hudi.client.common.function.FunctionWrapper.lambda$throwingMapToPairWrapper$3(FunctionWrapper.java:68)
>  at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) 
> at 
> java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
>  at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at 
> java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) 
> at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 
> at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at 
> java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at 
> org.apache.hudi.client.common.HoodieFlinkEngineContext.mapToPair(HoodieFlinkEngineContext.java:79)
>  at 
> org.apache.hudi.table.action.commit.UpsertPartitioner.getSmallFilesForPartitions(UpsertPartitioner.java:213)
>  at 
> org.apache.hudi.table.action.commit.UpsertPartitioner.assignInserts(UpsertPartitioner.java:136)
>  at 
> org.apache.hudi.table.action.commit.UpsertPartitioner.<init>(UpsertPartitioner.java:97)
>  at 
> org.apache.hudi.table.action.commit.BaseFlinkCommitActionExecutor.getUpsertPartitioner(BaseFlinkCommitActionExecutor.java:321)
>  at 
> org.apache.hudi.table.action.commit.BaseFlinkCommitActionExecutor.getPartitioner(BaseFlinkCommitActionExecutor.java:144)
>  at 
> org.apache.hudi.table.action.commit.BaseFlinkCommitActionExecutor.execute(BaseFlinkCommitActionExecutor.java:114)
>  at 
> org.apache.hudi.table.action.commit.BaseFlinkCommitActionExecutor.execute(BaseFlinkCommitActionExecutor.java:68)
>  at 
> org.apache.hudi.table.action.commit.AbstractWriteHelper.write(AbstractWriteHelper.java:55)
>  
>  
> When write data into hoodie table using operation api, shouldn't init a 
> bootstrap index.
> The patch change Bootstrap api , it would return a null if execution config 
> does not set bootstrap path, and skip some process when index is null in 
> abstract fs view.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to