From 39135e707faea601e35cc2c61bfda580991ee205 Mon Sep 17 00:00:00 2001 From: stayrascal Date: Mon, 4 Mar 2024 08:40:09 +0800 Subject: [PATCH] [MINOR] Clean code of FileSystemViewManager (#10797) Co-authored-by: wuzhiping --- .../org/apache/hudi/table/HoodieTable.java | 15 ++- ...RemoteFileSystemViewWithMetadataTable.java | 2 +- .../TestTimelineServerBasedWriteMarkers.java | 5 +- .../hudi/testutils/HoodieClientTestUtils.java | 3 +- .../common/table/HoodieTableMetaClient.java | 6 +- .../table/view/FileSystemViewManager.java | 102 +++++++++--------- .../timeline/service/TimelineService.java | 6 +- .../TestRemoteHoodieTableFileSystemView.java | 4 +- 8 files changed, 66 insertions(+), 77 deletions(-) diff --git a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/HoodieTable.java b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/HoodieTable.java index 37e7939ab76a..d5244ac427c7 100644 --- a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/HoodieTable.java +++ b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/HoodieTable.java @@ -120,13 +120,12 @@ * @param Type of outputs */ public abstract class HoodieTable implements Serializable { - private static final Logger LOG = LoggerFactory.getLogger(HoodieTable.class); protected final HoodieWriteConfig config; protected final HoodieTableMetaClient metaClient; protected final HoodieIndex index; - private SerializableConfiguration hadoopConfiguration; + private final SerializableConfiguration hadoopConfiguration; protected final TaskContextSupplier taskContextSupplier; private final HoodieTableMetadata metadata; private final HoodieStorageLayout storageLayout; @@ -145,7 +144,7 @@ protected HoodieTable(HoodieWriteConfig config, HoodieEngineContext context, Hoo .build(); this.metadata = HoodieTableMetadata.create(context, metadataConfig, config.getBasePath()); - this.viewManager = FileSystemViewManager.createViewManager(context, config.getMetadataConfig(), config.getViewStorageConfig(), config.getCommonConfig(), unused -> metadata); + this.viewManager = getViewManager(); this.metaClient = metaClient; this.index = getIndex(config, context); this.storageLayout = getStorageLayout(config); @@ -164,7 +163,7 @@ protected HoodieStorageLayout getStorageLayout(HoodieWriteConfig config) { private synchronized FileSystemViewManager getViewManager() { if (null == viewManager) { - viewManager = FileSystemViewManager.createViewManager(getContext(), config.getMetadataConfig(), config.getViewStorageConfig(), config.getCommonConfig(), unused -> metadata); + viewManager = FileSystemViewManager.createViewManager(getContext(), config.getViewStorageConfig(), config.getCommonConfig(), unused -> metadata); } return viewManager; } @@ -180,8 +179,7 @@ public HoodieTableMetadata getMetadata() { * @param records hoodieRecords to upsert * @return HoodieWriteMetadata */ - public abstract HoodieWriteMetadata upsert(HoodieEngineContext context, String instantTime, - I records); + public abstract HoodieWriteMetadata upsert(HoodieEngineContext context, String instantTime, I records); /** * Insert a batch of new records into Hoodie table at the supplied instantTime. @@ -190,8 +188,7 @@ public abstract HoodieWriteMetadata upsert(HoodieEngineContext context, Strin * @param records hoodieRecords to upsert * @return HoodieWriteMetadata */ - public abstract HoodieWriteMetadata insert(HoodieEngineContext context, String instantTime, - I records); + public abstract HoodieWriteMetadata insert(HoodieEngineContext context, String instantTime, I records); /** * Bulk Insert a batch of new records into Hoodie table at the supplied instantTime. @@ -270,7 +267,7 @@ public abstract HoodieWriteMetadata insertPrepped(HoodieEngineContext context * @return HoodieWriteMetadata */ public abstract HoodieWriteMetadata bulkInsertPrepped(HoodieEngineContext context, String instantTime, - I preppedRecords, Option bulkInsertPartitioner); + I preppedRecords, Option bulkInsertPartitioner); /** * Replaces all the existing records and inserts the specified new records into Hoodie table at the supplied instantTime, diff --git a/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/client/functional/TestRemoteFileSystemViewWithMetadataTable.java b/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/client/functional/TestRemoteFileSystemViewWithMetadataTable.java index c4e4776009ca..3bd053a4a89c 100644 --- a/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/client/functional/TestRemoteFileSystemViewWithMetadataTable.java +++ b/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/client/functional/TestRemoteFileSystemViewWithMetadataTable.java @@ -116,7 +116,7 @@ public void initTimelineService() { .serverPort(config.getViewStorageConfig().getRemoteViewServerPort()).build(), FileSystem.get(new Configuration()), FileSystemViewManager.createViewManager( - context, config.getMetadataConfig(), config.getViewStorageConfig(), + context, config.getViewStorageConfig(), config.getCommonConfig(), metaClient -> new HoodieBackedTestDelayedTableMetadata( context, config.getMetadataConfig(), metaClient.getBasePathV2().toString(), true))); diff --git a/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/table/marker/TestTimelineServerBasedWriteMarkers.java b/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/table/marker/TestTimelineServerBasedWriteMarkers.java index b27f40e2addd..367229b18da4 100644 --- a/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/table/marker/TestTimelineServerBasedWriteMarkers.java +++ b/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/table/marker/TestTimelineServerBasedWriteMarkers.java @@ -20,7 +20,6 @@ import org.apache.hudi.client.common.HoodieSparkEngineContext; import org.apache.hudi.common.config.HoodieCommonConfig; -import org.apache.hudi.common.config.HoodieMetadataConfig; import org.apache.hudi.common.engine.HoodieLocalEngineContext; import org.apache.hudi.common.table.marker.MarkerType; import org.apache.hudi.common.table.view.FileSystemViewManager; @@ -66,15 +65,13 @@ public void setup() throws IOException { FileSystemViewStorageConfig storageConf = FileSystemViewStorageConfig.newBuilder().withStorageType(FileSystemViewStorageType.SPILLABLE_DISK).build(); - HoodieMetadataConfig metadataConfig = HoodieMetadataConfig.newBuilder().build(); HoodieLocalEngineContext localEngineContext = new HoodieLocalEngineContext(metaClient.getHadoopConf()); try { timelineService = new TimelineService(localEngineContext, new Configuration(), TimelineService.Config.builder().serverPort(0).enableMarkerRequests(true).build(), FileSystem.get(new Configuration()), - FileSystemViewManager.createViewManager( - localEngineContext, metadataConfig, storageConf, HoodieCommonConfig.newBuilder().build())); + FileSystemViewManager.createViewManager(localEngineContext, storageConf, HoodieCommonConfig.newBuilder().build())); timelineService.startService(); } catch (Exception ex) { throw new RuntimeException(ex); diff --git a/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/testutils/HoodieClientTestUtils.java b/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/testutils/HoodieClientTestUtils.java index b59b1ea8d670..2413bf2dffd4 100644 --- a/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/testutils/HoodieClientTestUtils.java +++ b/hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/testutils/HoodieClientTestUtils.java @@ -281,8 +281,7 @@ public static TimelineService initTimelineService( TimelineService.Config.builder().enableMarkerRequests(true) .serverPort(config.getViewStorageConfig().getRemoteViewServerPort()).build(), FileSystem.get(new Configuration()), - FileSystemViewManager.createViewManager(context, config.getMetadataConfig(), - config.getViewStorageConfig(), config.getCommonConfig())); + FileSystemViewManager.createViewManager(context, config.getViewStorageConfig(), config.getCommonConfig())); timelineService.startService(); LOG.info("Timeline service server port: " + timelineServicePort); return timelineService; diff --git a/hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableMetaClient.java b/hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableMetaClient.java index bdcf19caa96b..e7d50805b3f6 100644 --- a/hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableMetaClient.java +++ b/hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableMetaClient.java @@ -513,7 +513,7 @@ public static HoodieTableMetaClient initTableAndGetMetaClient(Configuration hado fs.mkdirs(auxiliaryFolder); } - initializeBootstrapDirsIfNotExists(hadoopConf, basePath, fs); + initializeBootstrapDirsIfNotExists(basePath, fs); HoodieTableConfig.create(fs, metaPathDir, props); // We should not use fs.getConf as this might be different from the original configuration // used to create the fs in unit tests @@ -523,7 +523,7 @@ public static HoodieTableMetaClient initTableAndGetMetaClient(Configuration hado return metaClient; } - public static void initializeBootstrapDirsIfNotExists(Configuration hadoopConf, String basePath, FileSystem fs) throws IOException { + public static void initializeBootstrapDirsIfNotExists(String basePath, FileSystem fs) throws IOException { // Create bootstrap index by partition folder if it does not exist final Path bootstrap_index_folder_by_partition = @@ -684,7 +684,7 @@ public String toString() { } public void initializeBootstrapDirsIfNotExists() throws IOException { - initializeBootstrapDirsIfNotExists(getHadoopConf(), basePath.toString(), getFs()); + initializeBootstrapDirsIfNotExists(basePath.toString(), getFs()); } private static HoodieTableMetaClient newMetaClient(Configuration conf, String basePath, boolean loadActiveTimelineOnLoad, diff --git a/hudi-common/src/main/java/org/apache/hudi/common/table/view/FileSystemViewManager.java b/hudi-common/src/main/java/org/apache/hudi/common/table/view/FileSystemViewManager.java index d5697e83eeba..172b5e41af77 100644 --- a/hudi-common/src/main/java/org/apache/hudi/common/table/view/FileSystemViewManager.java +++ b/hudi-common/src/main/java/org/apache/hudi/common/table/view/FileSystemViewManager.java @@ -31,7 +31,6 @@ import org.apache.hudi.common.util.ValidationUtils; import org.apache.hudi.metadata.HoodieMetadataFileSystemView; import org.apache.hudi.metadata.HoodieTableMetadata; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -66,17 +65,19 @@ public class FileSystemViewManager { private final SerializableConfiguration conf; // The View Storage config used to store file-system views private final FileSystemViewStorageConfig viewStorageConfig; - // Map from Base-Path to View - private final ConcurrentHashMap globalViewMap; // Factory Map to create file-system views private final Function2 viewCreator; + // Map from Base-Path to View + private final ConcurrentHashMap globalViewMap; - private FileSystemViewManager(HoodieEngineContext context, FileSystemViewStorageConfig viewStorageConfig, + private FileSystemViewManager( + HoodieEngineContext context, + FileSystemViewStorageConfig viewStorageConfig, Function2 viewCreator) { this.conf = context.getHadoopConf(); this.viewStorageConfig = viewStorageConfig; - this.globalViewMap = new ConcurrentHashMap<>(); this.viewCreator = viewCreator; + this.globalViewMap = new ConcurrentHashMap<>(); } /** @@ -95,7 +96,7 @@ public void clearFileSystemView(String basePath) { * Main API to get the file-system view for the base-path. * * @param basePath Hoodie table base path - * @return + * @return {@link SyncableFileSystemView} */ public SyncableFileSystemView getFileSystemView(String basePath) { return globalViewMap.computeIfAbsent(basePath, (path) -> { @@ -108,10 +109,10 @@ public SyncableFileSystemView getFileSystemView(String basePath) { * Main API to get the file-system view for the base-path. * * @param metaClient HoodieTableMetaClient - * @return + * @return {@link SyncableFileSystemView} */ public SyncableFileSystemView getFileSystemView(HoodieTableMetaClient metaClient) { - return globalViewMap.computeIfAbsent(metaClient.getBasePath(), + return globalViewMap.computeIfAbsent(metaClient.getBasePathV2().toString(), (path) -> viewCreator.apply(metaClient, viewStorageConfig)); } @@ -130,12 +131,12 @@ public void close() { /** * Create RocksDB based file System view for a table. * - * @param viewConf View Storage Configuration + * @param viewConf View Storage Configuration * @param metaClient HoodieTableMetaClient - * @return + * @return {@link RocksDbBasedFileSystemView} */ private static RocksDbBasedFileSystemView createRocksDBBasedFileSystemView(FileSystemViewStorageConfig viewConf, - HoodieTableMetaClient metaClient) { + HoodieTableMetaClient metaClient) { HoodieTimeline timeline = metaClient.getActiveTimeline().filterCompletedAndCompactionInstants(); return new RocksDbBasedFileSystemView(metaClient, timeline, viewConf); } @@ -143,24 +144,25 @@ private static RocksDbBasedFileSystemView createRocksDBBasedFileSystemView(FileS /** * Create a spillable Map based file System view for a table. * - * @param viewConf View Storage Configuration + * @param viewConf View Storage Configuration * @param metaClient HoodieTableMetaClient - * @return + * @return {@link SpillableMapBasedFileSystemView} */ - private static SpillableMapBasedFileSystemView createSpillableMapBasedFileSystemView(FileSystemViewStorageConfig viewConf, - HoodieTableMetaClient metaClient, HoodieCommonConfig commonConfig) { - LOG.info("Creating SpillableMap based view for basePath " + metaClient.getBasePath()); + private static SpillableMapBasedFileSystemView createSpillableMapBasedFileSystemView( + FileSystemViewStorageConfig viewConf, HoodieTableMetaClient metaClient, HoodieCommonConfig commonConfig) { + LOG.info("Creating SpillableMap based view for basePath {}.", metaClient.getBasePathV2()); HoodieTimeline timeline = metaClient.getActiveTimeline().filterCompletedAndCompactionInstants(); return new SpillableMapBasedFileSystemView(metaClient, timeline, viewConf, commonConfig); } /** * Create an in-memory file System view for a table. - * */ - private static HoodieTableFileSystemView createInMemoryFileSystemView(HoodieMetadataConfig metadataConfig, FileSystemViewStorageConfig viewConf, - HoodieTableMetaClient metaClient, SerializableFunctionUnchecked metadataCreator) { - LOG.info("Creating InMemory based view for basePath " + metaClient.getBasePathV2()); + private static HoodieTableFileSystemView createInMemoryFileSystemView( + FileSystemViewStorageConfig viewConf, + HoodieTableMetaClient metaClient, + SerializableFunctionUnchecked metadataCreator) { + LOG.info("Creating InMemory based view for basePath {}.", metaClient.getBasePathV2()); HoodieTimeline timeline = metaClient.getActiveTimeline().filterCompletedAndCompactionInstants(); if (metaClient.getTableConfig().isMetadataTableAvailable()) { ValidationUtils.checkArgument(metadataCreator != null, "Metadata supplier is null. Cannot instantiate metadata file system view"); @@ -168,31 +170,30 @@ private static HoodieTableFileSystemView createInMemoryFileSystemView(HoodieMeta } if (metaClient.getMetaserverConfig().isMetaserverEnabled()) { return (HoodieTableFileSystemView) ReflectionUtils.loadClass(HOODIE_METASERVER_FILE_SYSTEM_VIEW_CLASS, - new Class[] {HoodieTableMetaClient.class, HoodieTimeline.class, HoodieMetaserverConfig.class}, + new Class[]{HoodieTableMetaClient.class, HoodieTimeline.class, HoodieMetaserverConfig.class}, metaClient, timeline, metaClient.getMetaserverConfig()); } return new HoodieTableFileSystemView(metaClient, timeline, viewConf.isIncrementalTimelineSyncEnabled()); } - public static HoodieTableFileSystemView createInMemoryFileSystemView(HoodieEngineContext engineContext, HoodieTableMetaClient metaClient, - HoodieMetadataConfig metadataConfig) { - + public static HoodieTableFileSystemView createInMemoryFileSystemView( + HoodieEngineContext engineContext, HoodieTableMetaClient metaClient, HoodieMetadataConfig metadataConfig) { return createInMemoryFileSystemViewWithTimeline(engineContext, metaClient, metadataConfig, metaClient.getActiveTimeline().getCommitsTimeline().filterCompletedInstants()); - } - public static HoodieTableFileSystemView createInMemoryFileSystemViewWithTimeline(HoodieEngineContext engineContext, - HoodieTableMetaClient metaClient, - HoodieMetadataConfig metadataConfig, - HoodieTimeline timeline) { - LOG.info("Creating InMemory based view for basePath " + metaClient.getBasePath()); + public static HoodieTableFileSystemView createInMemoryFileSystemViewWithTimeline( + HoodieEngineContext engineContext, + HoodieTableMetaClient metaClient, + HoodieMetadataConfig metadataConfig, + HoodieTimeline timeline) { + LOG.info("Creating InMemory based view for basePath {}.", metaClient.getBasePathV2()); if (metaClient.getTableConfig().isMetadataTableAvailable()) { return new HoodieMetadataFileSystemView(engineContext, metaClient, timeline, metadataConfig); } if (metaClient.getMetaserverConfig().isMetaserverEnabled()) { return (HoodieTableFileSystemView) ReflectionUtils.loadClass(HOODIE_METASERVER_FILE_SYSTEM_VIEW_CLASS, - new Class[] {HoodieTableMetaClient.class, HoodieTimeline.class, HoodieMetadataConfig.class}, + new Class[]{HoodieTableMetaClient.class, HoodieTimeline.class, HoodieMetadataConfig.class}, metaClient, timeline, metaClient.getMetaserverConfig()); } return new HoodieTableFileSystemView(metaClient, timeline); @@ -201,43 +202,40 @@ public static HoodieTableFileSystemView createInMemoryFileSystemViewWithTimeline /** * Create a remote file System view for a table. * - * @param viewConf View Storage Configuration + * @param viewConf View Storage Configuration * @param metaClient Hoodie Table MetaClient for the table. - * @return + * @return {@link RemoteHoodieTableFileSystemView} */ private static RemoteHoodieTableFileSystemView createRemoteFileSystemView(FileSystemViewStorageConfig viewConf, - HoodieTableMetaClient metaClient) { - LOG.info("Creating remote view for basePath " + metaClient.getBasePath() + ". Server=" - + viewConf.getRemoteViewServerHost() + ":" + viewConf.getRemoteViewServerPort() + ", Timeout=" - + viewConf.getRemoteTimelineClientTimeoutSecs()); + HoodieTableMetaClient metaClient) { + LOG.info("Creating remote view for basePath {}. Server={}:{}, Timeout={}", metaClient.getBasePathV2(), + viewConf.getRemoteViewServerHost(), viewConf.getRemoteViewServerPort(), viewConf.getRemoteTimelineClientTimeoutSecs()); return new RemoteHoodieTableFileSystemView(metaClient, viewConf); } + public static FileSystemViewManager createViewManagerWithTableMetadata( + final HoodieEngineContext context, + final HoodieMetadataConfig metadataConfig, + final FileSystemViewStorageConfig config, + final HoodieCommonConfig commonConfig) { + return createViewManager(context, config, commonConfig, + metaClient -> HoodieTableMetadata.create(context, metadataConfig, metaClient.getBasePathV2().toString(), true)); + } + public static FileSystemViewManager createViewManager(final HoodieEngineContext context, - final HoodieMetadataConfig metadataConfig, final FileSystemViewStorageConfig config, final HoodieCommonConfig commonConfig) { - return createViewManager(context, metadataConfig, config, commonConfig, null); - } - - public static FileSystemViewManager createViewManagerWithTableMetadata(final HoodieEngineContext context, - final HoodieMetadataConfig metadataConfig, - final FileSystemViewStorageConfig config, - final HoodieCommonConfig commonConfig) { - return createViewManager(context, metadataConfig, config, commonConfig, - metaClient -> HoodieTableMetadata.create(context, metadataConfig, metaClient.getBasePathV2().toString(), true)); + return createViewManager(context, config, commonConfig, null); } /** * Main Factory method for building file-system views. - * */ public static FileSystemViewManager createViewManager(final HoodieEngineContext context, - final HoodieMetadataConfig metadataConfig, final FileSystemViewStorageConfig config, final HoodieCommonConfig commonConfig, final SerializableFunctionUnchecked metadataCreator) { - LOG.info("Creating View Manager with storage type :" + config.getStorageType()); + LOG.info("Creating View Manager with storage type {}.", config.getStorageType()); switch (config.getStorageType()) { case EMBEDDED_KV_STORE: LOG.info("Creating embedded rocks-db based Table View"); @@ -250,7 +248,7 @@ public static FileSystemViewManager createViewManager(final HoodieEngineContext case MEMORY: LOG.info("Creating in-memory based Table View"); return new FileSystemViewManager(context, config, - (metaClient, viewConfig) -> createInMemoryFileSystemView(metadataConfig, viewConfig, metaClient, metadataCreator)); + (metaClient, viewConfig) -> createInMemoryFileSystemView(viewConfig, metaClient, metadataCreator)); case REMOTE_ONLY: LOG.info("Creating remote only table view"); return new FileSystemViewManager(context, config, (metaClient, viewConfig) -> createRemoteFileSystemView(viewConfig, @@ -263,7 +261,7 @@ public static FileSystemViewManager createViewManager(final HoodieEngineContext SyncableFileSystemView secondaryView; switch (viewConfig.getSecondaryStorageType()) { case MEMORY: - secondaryView = createInMemoryFileSystemView(metadataConfig, viewConfig, metaClient, metadataCreator); + secondaryView = createInMemoryFileSystemView(viewConfig, metaClient, metadataCreator); break; case EMBEDDED_KV_STORE: secondaryView = createRocksDBBasedFileSystemView(viewConfig, metaClient); diff --git a/hudi-timeline-service/src/main/java/org/apache/hudi/timeline/service/TimelineService.java b/hudi-timeline-service/src/main/java/org/apache/hudi/timeline/service/TimelineService.java index adfc734d1c55..59f30ce21a56 100644 --- a/hudi-timeline-service/src/main/java/org/apache/hudi/timeline/service/TimelineService.java +++ b/hudi-timeline-service/src/main/java/org/apache/hudi/timeline/service/TimelineService.java @@ -379,20 +379,20 @@ public static FileSystemViewManager buildFileSystemViewManager(Config config, Se case MEMORY: FileSystemViewStorageConfig.Builder inMemConfBuilder = FileSystemViewStorageConfig.newBuilder(); inMemConfBuilder.withStorageType(FileSystemViewStorageType.MEMORY); - return FileSystemViewManager.createViewManager(localEngineContext, metadataConfig, inMemConfBuilder.build(), commonConfig); + return FileSystemViewManager.createViewManager(localEngineContext, inMemConfBuilder.build(), commonConfig); case SPILLABLE_DISK: { FileSystemViewStorageConfig.Builder spillableConfBuilder = FileSystemViewStorageConfig.newBuilder(); spillableConfBuilder.withStorageType(FileSystemViewStorageType.SPILLABLE_DISK) .withBaseStoreDir(config.baseStorePathForFileGroups) .withMaxMemoryForView(config.maxViewMemPerTableInMB * 1024 * 1024L) .withMemFractionForPendingCompaction(config.memFractionForCompactionPerTable); - return FileSystemViewManager.createViewManager(localEngineContext, metadataConfig, spillableConfBuilder.build(), commonConfig); + return FileSystemViewManager.createViewManager(localEngineContext, spillableConfBuilder.build(), commonConfig); } case EMBEDDED_KV_STORE: { FileSystemViewStorageConfig.Builder rocksDBConfBuilder = FileSystemViewStorageConfig.newBuilder(); rocksDBConfBuilder.withStorageType(FileSystemViewStorageType.EMBEDDED_KV_STORE) .withRocksDBPath(config.rocksDBPath); - return FileSystemViewManager.createViewManager(localEngineContext, metadataConfig, rocksDBConfBuilder.build(), commonConfig); + return FileSystemViewManager.createViewManager(localEngineContext, rocksDBConfBuilder.build(), commonConfig); } default: throw new IllegalArgumentException("Invalid view manager storage type :" + config.viewStorageType); diff --git a/hudi-timeline-service/src/test/java/org/apache/hudi/timeline/service/functional/TestRemoteHoodieTableFileSystemView.java b/hudi-timeline-service/src/test/java/org/apache/hudi/timeline/service/functional/TestRemoteHoodieTableFileSystemView.java index c9a103e5264f..834697852822 100644 --- a/hudi-timeline-service/src/test/java/org/apache/hudi/timeline/service/functional/TestRemoteHoodieTableFileSystemView.java +++ b/hudi-timeline-service/src/test/java/org/apache/hudi/timeline/service/functional/TestRemoteHoodieTableFileSystemView.java @@ -19,7 +19,6 @@ package org.apache.hudi.timeline.service.functional; import org.apache.hudi.common.config.HoodieCommonConfig; -import org.apache.hudi.common.config.HoodieMetadataConfig; import org.apache.hudi.common.engine.HoodieLocalEngineContext; import org.apache.hudi.common.model.HoodieFileGroup; import org.apache.hudi.common.table.timeline.HoodieTimeline; @@ -67,14 +66,13 @@ public class TestRemoteHoodieTableFileSystemView extends TestHoodieTableFileSyst protected SyncableFileSystemView getFileSystemView(HoodieTimeline timeline) { FileSystemViewStorageConfig sConf = FileSystemViewStorageConfig.newBuilder().withStorageType(FileSystemViewStorageType.SPILLABLE_DISK).build(); - HoodieMetadataConfig metadataConfig = HoodieMetadataConfig.newBuilder().build(); HoodieCommonConfig commonConfig = HoodieCommonConfig.newBuilder().build(); HoodieLocalEngineContext localEngineContext = new HoodieLocalEngineContext(metaClient.getHadoopConf()); try { server = new TimelineService(localEngineContext, new Configuration(), TimelineService.Config.builder().serverPort(0).build(), FileSystem.get(new Configuration()), - FileSystemViewManager.createViewManager(localEngineContext, metadataConfig, sConf, commonConfig)); + FileSystemViewManager.createViewManager(localEngineContext, sConf, commonConfig)); server.startService(); } catch (Exception ex) { throw new RuntimeException(ex);