This is an automated email from the ASF dual-hosted git repository.
hemant pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git
The following commit(s) were added to refs/heads/master by this push:
new 559e884a1d HDDS-9799. Provide a flag to skip the native_rocksdb_tool
loading (#5719)
559e884a1d is described below
commit 559e884a1d9588d277324304bd685d66ceef9883
Author: Swaminathan Balachandran <[email protected]>
AuthorDate: Fri Dec 15 10:39:29 2023 +0530
HDDS-9799. Provide a flag to skip the native_rocksdb_tool loading (#5719)
---
.../common/src/main/resources/ozone-default.xml | 9 +++
.../utils/db/managed/ManagedSSTDumpIterator.java | 8 +-
.../hdds/utils/db/managed/ManagedSSTDumpTool.java | 14 +---
.../hdds/utils/db/managed/PipeInputStream.java | 15 +---
.../db/managed/TestManagedSSTDumpIterator.java | 3 +-
.../ozone/rocksdb/util/ManagedSstFileReader.java | 11 +--
.../org/apache/hadoop/ozone/om/OMConfigKeys.java | 4 +
.../ozone/om/snapshot/SnapshotDiffManager.java | 88 ++++++++--------------
.../ozone/om/snapshot/TestSnapshotDiffManager.java | 8 +-
9 files changed, 62 insertions(+), 98 deletions(-)
diff --git a/hadoop-hdds/common/src/main/resources/ozone-default.xml
b/hadoop-hdds/common/src/main/resources/ozone-default.xml
index d0c8f4e2bd..2d410fecd9 100644
--- a/hadoop-hdds/common/src/main/resources/ozone-default.xml
+++ b/hadoop-hdds/common/src/main/resources/ozone-default.xml
@@ -4188,6 +4188,15 @@
</description>
</property>
+ <property>
+ <name>ozone.om.snapshot.load.native.lib</name>
+ <value>true</value>
+ <tag>OZONE, OM</tag>
+ <description>
+ Load native library for performing optimized snapshot diff.
+ </description>
+ </property>
+
<property>
<name>ozone.om.snapshot.sst_dumptool.buffer.size</name>
<value>8KB</value>
diff --git
a/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpIterator.java
b/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpIterator.java
index 38358df9f6..d8844eaacb 100644
---
a/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpIterator.java
+++
b/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpIterator.java
@@ -21,7 +21,6 @@ import com.google.common.collect.Maps;
import com.google.common.primitives.UnsignedLong;
import org.apache.hadoop.hdds.StringUtils;
import org.apache.hadoop.util.ClosableIterator;
-import org.apache.hadoop.hdds.utils.NativeLibraryNotLoadedException;
import org.eclipse.jetty.io.RuntimeIOException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -62,7 +61,7 @@ public abstract class ManagedSSTDumpIterator<T> implements
ClosableIterator<T> {
public ManagedSSTDumpIterator(ManagedSSTDumpTool sstDumpTool,
String sstFilePath, ManagedOptions options)
- throws NativeLibraryNotLoadedException, IOException {
+ throws IOException {
this(sstDumpTool, sstFilePath, options, null, null);
}
@@ -70,7 +69,7 @@ public abstract class ManagedSSTDumpIterator<T> implements
ClosableIterator<T> {
String sstFilePath, ManagedOptions options,
ManagedSlice lowerKeyBound,
ManagedSlice upperKeyBound)
- throws IOException, NativeLibraryNotLoadedException {
+ throws IOException {
File sstFile = new File(sstFilePath);
if (!sstFile.exists()) {
throw new IOException(String.format("File in path : %s doesn't exist",
@@ -136,8 +135,7 @@ public abstract class ManagedSSTDumpIterator<T> implements
ClosableIterator<T> {
private void init(ManagedSSTDumpTool sstDumpTool, File sstFile,
ManagedOptions options, ManagedSlice lowerKeyBound,
- ManagedSlice upperKeyBound)
- throws NativeLibraryNotLoadedException {
+ ManagedSlice upperKeyBound) {
Map<String, String> argMap = Maps.newHashMap();
argMap.put("file", sstFile.getAbsolutePath());
argMap.put("silent", null);
diff --git
a/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpTool.java
b/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpTool.java
index 0c601b7c1d..5d965d7398 100644
---
a/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpTool.java
+++
b/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/ManagedSSTDumpTool.java
@@ -34,18 +34,14 @@ import static
org.apache.hadoop.hdds.utils.NativeConstants.ROCKS_TOOLS_NATIVE_LI
*/
public class ManagedSSTDumpTool {
- static {
- NativeLibraryLoader.getInstance()
- .loadLibrary(ROCKS_TOOLS_NATIVE_LIBRARY_NAME);
- }
-
private int bufferCapacity;
private ExecutorService executorService;
public ManagedSSTDumpTool(ExecutorService executorService,
int bufferCapacity)
throws NativeLibraryNotLoadedException {
- if (!NativeLibraryLoader.isLibraryLoaded(ROCKS_TOOLS_NATIVE_LIBRARY_NAME))
{
+ if (!NativeLibraryLoader.getInstance()
+ .loadLibrary(ROCKS_TOOLS_NATIVE_LIBRARY_NAME)) {
throw new NativeLibraryNotLoadedException(
ROCKS_TOOLS_NATIVE_LIBRARY_NAME);
}
@@ -53,16 +49,14 @@ public class ManagedSSTDumpTool {
this.executorService = executorService;
}
- public SSTDumpToolTask run(String[] args, ManagedOptions options)
- throws NativeLibraryNotLoadedException {
+ public SSTDumpToolTask run(String[] args, ManagedOptions options) {
PipeInputStream pipeInputStream = new PipeInputStream(bufferCapacity);
return new SSTDumpToolTask(this.executorService.submit(() ->
this.runInternal(args, options.getNativeHandle(),
pipeInputStream.getNativeHandle())), pipeInputStream);
}
- public SSTDumpToolTask run(Map<String, String> args, ManagedOptions options)
- throws NativeLibraryNotLoadedException {
+ public SSTDumpToolTask run(Map<String, String> args, ManagedOptions options)
{
return this.run(args.entrySet().stream().map(e -> "--"
+ (e.getValue() == null || e.getValue().isEmpty() ? e.getKey() :
e.getKey() + "=" + e.getValue())).toArray(String[]::new), options);
diff --git
a/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/PipeInputStream.java
b/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/PipeInputStream.java
index 54d653b6bf..df4f613f98 100644
---
a/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/PipeInputStream.java
+++
b/hadoop-hdds/rocks-native/src/main/java/org/apache/hadoop/hdds/utils/db/managed/PipeInputStream.java
@@ -18,22 +18,14 @@
package org.apache.hadoop.hdds.utils.db.managed;
-import org.apache.hadoop.hdds.utils.NativeLibraryLoader;
-import org.apache.hadoop.hdds.utils.NativeLibraryNotLoadedException;
import java.io.InputStream;
import java.util.concurrent.atomic.AtomicBoolean;
-import static
org.apache.hadoop.hdds.utils.NativeConstants.ROCKS_TOOLS_NATIVE_LIBRARY_NAME;
-
/**
* JNI for reading data from pipe.
*/
public class PipeInputStream extends InputStream {
- static {
- NativeLibraryLoader.getInstance()
- .loadLibrary(ROCKS_TOOLS_NATIVE_LIBRARY_NAME);
- }
private byte[] byteBuffer;
private long nativeHandle;
private int numberOfBytesLeftToRead;
@@ -42,12 +34,7 @@ public class PipeInputStream extends InputStream {
private AtomicBoolean cleanup;
- PipeInputStream(int capacity) throws NativeLibraryNotLoadedException {
- if (!NativeLibraryLoader.isLibraryLoaded(ROCKS_TOOLS_NATIVE_LIBRARY_NAME))
{
- throw new NativeLibraryNotLoadedException(
- ROCKS_TOOLS_NATIVE_LIBRARY_NAME);
- }
-
+ PipeInputStream(int capacity) {
this.byteBuffer = new byte[capacity];
this.numberOfBytesLeftToRead = 0;
this.capacity = capacity;
diff --git
a/hadoop-hdds/rocks-native/src/test/java/org/apache/hadoop/hdds/utils/db/managed/TestManagedSSTDumpIterator.java
b/hadoop-hdds/rocks-native/src/test/java/org/apache/hadoop/hdds/utils/db/managed/TestManagedSSTDumpIterator.java
index 496b8052c6..99d2a6ced5 100644
---
a/hadoop-hdds/rocks-native/src/test/java/org/apache/hadoop/hdds/utils/db/managed/TestManagedSSTDumpIterator.java
+++
b/hadoop-hdds/rocks-native/src/test/java/org/apache/hadoop/hdds/utils/db/managed/TestManagedSSTDumpIterator.java
@@ -22,7 +22,6 @@ import com.google.common.primitives.Bytes;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.hadoop.hdds.StringUtils;
import org.apache.hadoop.hdds.utils.NativeLibraryLoader;
-import org.apache.hadoop.hdds.utils.NativeLibraryNotLoadedException;
import org.apache.hadoop.hdds.utils.TestUtils;
import org.apache.ozone.test.tag.Native;
import org.apache.ozone.test.tag.Unhealthy;
@@ -248,7 +247,7 @@ class TestManagedSSTDumpIterator {
@ParameterizedTest
@MethodSource("invalidPipeInputStreamBytes")
public void testInvalidSSTDumpIteratorWithKeyFormat(byte[] inputBytes)
- throws NativeLibraryNotLoadedException, ExecutionException,
+ throws ExecutionException,
InterruptedException, IOException {
ByteArrayInputStream byteArrayInputStream =
new ByteArrayInputStream(inputBytes);
diff --git
a/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdb/util/ManagedSstFileReader.java
b/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdb/util/ManagedSstFileReader.java
index cf98e340e6..120b199c88 100644
---
a/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdb/util/ManagedSstFileReader.java
+++
b/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdb/util/ManagedSstFileReader.java
@@ -22,7 +22,6 @@ import org.apache.hadoop.hdds.StringUtils;
import org.apache.hadoop.hdds.utils.IOUtils;
import org.apache.hadoop.hdds.utils.db.managed.ManagedSlice;
import org.apache.hadoop.util.ClosableIterator;
-import org.apache.hadoop.hdds.utils.NativeLibraryNotLoadedException;
import org.apache.hadoop.hdds.utils.db.managed.ManagedOptions;
import org.apache.hadoop.hdds.utils.db.managed.ManagedReadOptions;
import org.apache.hadoop.hdds.utils.db.managed.ManagedSSTDumpIterator;
@@ -167,7 +166,7 @@ public class ManagedSstFileReader {
@Override
protected ClosableIterator<String> getKeyIteratorForFile(String file)
- throws NativeLibraryNotLoadedException, IOException {
+ throws IOException {
return new ManagedSSTDumpIterator<String>(sstDumpTool, file,
options, lowerBoundSlice, upperBoundSlice) {
@Override
@@ -239,7 +238,7 @@ public class ManagedSstFileReader {
protected abstract void init();
protected abstract ClosableIterator<T> getKeyIteratorForFile(String file)
- throws RocksDBException, NativeLibraryNotLoadedException,
+ throws RocksDBException,
IOException;
@Override
@@ -251,8 +250,7 @@ public class ManagedSstFileReader {
return true;
}
} while (moveToNextFile());
- } catch (IOException | RocksDBException |
- NativeLibraryNotLoadedException e) {
+ } catch (IOException | RocksDBException e) {
// TODO: [Snapshot] This exception has to be handled by the caller.
// We have to do better exception handling.
throw new RuntimeException(e);
@@ -277,8 +275,7 @@ public class ManagedSstFileReader {
}
}
- private boolean moveToNextFile() throws IOException, RocksDBException,
- NativeLibraryNotLoadedException {
+ private boolean moveToNextFile() throws IOException, RocksDBException {
if (fileNameIterator.hasNext()) {
closeCurrentFile();
currentFile = fileNameIterator.next();
diff --git
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
index 72a8d4fdc2..58f341b74a 100644
---
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
+++
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java
@@ -33,6 +33,10 @@ public final class OMConfigKeys {
"ozone.om.snapshot.sst_dumptool.pool.size";
public static final int
OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_POOL_SIZE_DEFAULT = 1;
+
+ public static final String OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB =
+ "ozone.om.snapshot.load.native.lib";
+ public static final boolean OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB_DEFAULT = true;
public static final String
OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE =
"ozone.om.snapshot.sst_dumptool.buffer.size";
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/snapshot/SnapshotDiffManager.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/snapshot/SnapshotDiffManager.java
index c34594cffe..2c0a564306 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/snapshot/SnapshotDiffManager.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/snapshot/SnapshotDiffManager.java
@@ -289,28 +289,31 @@ public class SnapshotDiffManager implements AutoCloseable
{
private Optional<ManagedSSTDumpTool> initSSTDumpTool(
final OzoneConfiguration conf) {
- try {
- int threadPoolSize = conf.getInt(
- OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_POOL_SIZE,
- OMConfigKeys
- .OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_POOL_SIZE_DEFAULT);
- int bufferSize = (int) conf.getStorageSize(
- OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE,
- OMConfigKeys
- .OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE_DEFAULT,
- StorageUnit.BYTES);
- this.sstDumpToolExecService = Optional.of(new ThreadPoolExecutor(0,
- threadPoolSize, 60, TimeUnit.SECONDS,
- new SynchronousQueue<>(), new ThreadFactoryBuilder()
- .setNameFormat(ozoneManager.getThreadNamePrefix() +
- "snapshot-diff-manager-sst-dump-tool-TID-%d")
- .build(),
- new ThreadPoolExecutor.DiscardPolicy()));
- return Optional.of(new ManagedSSTDumpTool(sstDumpToolExecService.get(),
- bufferSize));
- } catch (NativeLibraryNotLoadedException e) {
- this.sstDumpToolExecService.ifPresent(exec ->
- closeExecutorService(exec, "SstDumpToolExecutor"));
+ if (conf.getBoolean(OMConfigKeys.OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB,
+ OMConfigKeys.OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB_DEFAULT)) {
+ try {
+ int threadPoolSize = conf.getInt(
+ OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_POOL_SIZE,
+ OMConfigKeys
+
.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_POOL_SIZE_DEFAULT);
+ int bufferSize = (int) conf.getStorageSize(
+ OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE,
+ OMConfigKeys
+ .OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE_DEFAULT,
+ StorageUnit.BYTES);
+ this.sstDumpToolExecService = Optional.of(new ThreadPoolExecutor(0,
+ threadPoolSize, 60, TimeUnit.SECONDS,
+ new SynchronousQueue<>(), new ThreadFactoryBuilder()
+ .setNameFormat(ozoneManager.getThreadNamePrefix() +
+ "snapshot-diff-manager-sst-dump-tool-TID-%d")
+ .build(),
+ new ThreadPoolExecutor.DiscardPolicy()));
+ return Optional.of(new ManagedSSTDumpTool(sstDumpToolExecService.get(),
+ bufferSize));
+ } catch (NativeLibraryNotLoadedException e) {
+ this.sstDumpToolExecService.ifPresent(exec ->
+ closeExecutorService(exec, "SstDumpToolExecutor"));
+ }
}
return Optional.empty();
}
@@ -1057,40 +1060,10 @@ public class SnapshotDiffManager implements
AutoCloseable {
deltaFiles.addAll(getSSTFileListForSnapshot(fromSnapshot,
tablesToLookUp));
}
-
- try {
- addToObjectIdMap(fsTable,
- tsTable,
- deltaFiles,
- !skipNativeDiff && sstDumpTool.isPresent(),
- oldObjIdToKeyMap,
- newObjIdToKeyMap,
- objectIdToIsDirMap,
- oldParentIds,
- newParentIds,
- tablePrefixes);
- } catch (NativeLibraryNotLoadedException e) {
- LOG.warn("SSTDumpTool load failure, retrying without it.", e);
- try {
- // Workaround to handle deletes if use of native rockDB for reading
- // tombstone fails.
- // TODO: [SNAPSHOT] Update Rocksdb SSTFileIterator to read tombstone
- deltaFiles.addAll(getSSTFileListForSnapshot(
- fromSnapshot, tablesToLookUp));
- addToObjectIdMap(fsTable,
- tsTable,
- deltaFiles,
- false,
- oldObjIdToKeyMap,
- newObjIdToKeyMap,
- objectIdToIsDirMap,
- oldParentIds,
- newParentIds,
- tablePrefixes);
- } catch (NativeLibraryNotLoadedException ex) {
- throw new IllegalStateException(ex);
- }
- }
+ addToObjectIdMap(fsTable, tsTable, deltaFiles,
+ !skipNativeDiff && sstDumpTool.isPresent(),
+ oldObjIdToKeyMap, newObjIdToKeyMap, objectIdToIsDirMap, oldParentIds,
+ newParentIds, tablePrefixes);
}
@VisibleForTesting
@@ -1103,8 +1076,7 @@ public class SnapshotDiffManager implements AutoCloseable
{
PersistentMap<byte[], Boolean> objectIdToIsDirMap,
Optional<Set<Long>> oldParentIds,
Optional<Set<Long>> newParentIds,
- Map<String, String> tablePrefixes) throws IOException,
- NativeLibraryNotLoadedException, RocksDBException {
+ Map<String, String> tablePrefixes) throws IOException, RocksDBException {
if (deltaFiles.isEmpty()) {
return;
}
diff --git
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestSnapshotDiffManager.java
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestSnapshotDiffManager.java
index 41b6f73d8c..5229ea46fb 100644
---
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestSnapshotDiffManager.java
+++
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/snapshot/TestSnapshotDiffManager.java
@@ -28,7 +28,6 @@ import org.apache.hadoop.hdds.client.ECReplicationConfig;
import org.apache.hadoop.hdds.conf.OzoneConfiguration;
import org.apache.hadoop.hdds.conf.StorageUnit;
import org.apache.hadoop.hdds.utils.IOUtils;
-import org.apache.hadoop.hdds.utils.NativeLibraryNotLoadedException;
import org.apache.hadoop.hdds.utils.db.CodecRegistry;
import org.apache.hadoop.hdds.utils.db.RDBStore;
import org.apache.hadoop.hdds.utils.db.RocksDatabase;
@@ -137,6 +136,8 @@ import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_DIFF_THR
import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_DIFF_THREAD_POOL_SIZE_DEFAULT;
import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_FORCE_FULL_DIFF;
import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_FORCE_FULL_DIFF_DEFAULT;
+import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB;
+import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB_DEFAULT;
import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE;
import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE_DEFAULT;
import static
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_POOL_SIZE;
@@ -349,6 +350,9 @@ public class TestSnapshotDiffManager {
OZONE_OM_SNAPSHOT_SST_DUMPTOOL_EXECUTOR_BUFFER_SIZE_DEFAULT,
StorageUnit.BYTES))
.thenReturn(FileUtils.ONE_KB_BI.doubleValue());
+ when(configuration.getBoolean(OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB,
+ OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB_DEFAULT))
+ .thenReturn(OZONE_OM_SNAPSHOT_LOAD_NATIVE_LIB_DEFAULT);
for (int i = 0; i < jobStatuses.size(); i++) {
when(snapshotInfoTable.get(getTableKey(VOLUME_NAME, BUCKET_NAME,
@@ -640,7 +644,7 @@ public class TestSnapshotDiffManager {
"true," + OmMetadataManagerImpl.KEY_TABLE})
public void testObjectIdMapWithTombstoneEntries(boolean nativeLibraryLoaded,
String snapshotTableName)
- throws NativeLibraryNotLoadedException, IOException, RocksDBException {
+ throws IOException, RocksDBException {
Set<String> keysIncludingTombstones = IntStream.range(0, 100)
.boxed().map(i -> (i + 100) + "/key" + i).collect(Collectors.toSet());
// Mocking SST file with keys in SST file excluding tombstones
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]