|
@@ -18,8 +18,9 @@
|
|
|
|
|
|
package org.apache.hadoop.ozone.container.keyvalue;
|
|
package org.apache.hadoop.ozone.container.keyvalue;
|
|
|
|
|
|
-import java.io.FileInputStream;
|
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
|
|
+import java.io.InputStream;
|
|
|
|
+import java.io.OutputStream;
|
|
import java.nio.ByteBuffer;
|
|
import java.nio.ByteBuffer;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.LinkedList;
|
|
import java.util.LinkedList;
|
|
@@ -841,13 +842,14 @@ public class KeyValueHandler extends Handler {
|
|
throw new StorageContainerException(msg, result);
|
|
throw new StorageContainerException(msg, result);
|
|
}
|
|
}
|
|
|
|
|
|
- public Container importContainer(long containerID, long maxSize,
|
|
|
|
- String originPipelineId,
|
|
|
|
- String originNodeId,
|
|
|
|
- FileInputStream rawContainerStream,
|
|
|
|
- TarContainerPacker packer)
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public Container importContainer(final long containerID,
|
|
|
|
+ final long maxSize, final String originPipelineId,
|
|
|
|
+ final String originNodeId, final InputStream rawContainerStream,
|
|
|
|
+ final TarContainerPacker packer)
|
|
throws IOException {
|
|
throws IOException {
|
|
|
|
|
|
|
|
+ // TODO: Add layout version!
|
|
KeyValueContainerData containerData =
|
|
KeyValueContainerData containerData =
|
|
new KeyValueContainerData(containerID,
|
|
new KeyValueContainerData(containerID,
|
|
maxSize, originPipelineId, originNodeId);
|
|
maxSize, originPipelineId, originNodeId);
|
|
@@ -862,6 +864,20 @@ public class KeyValueHandler extends Handler {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public void exportContainer(final Container container,
|
|
|
|
+ final OutputStream outputStream,
|
|
|
|
+ final TarContainerPacker packer)
|
|
|
|
+ throws IOException{
|
|
|
|
+ container.readLock();
|
|
|
|
+ try {
|
|
|
|
+ final KeyValueContainer kvc = (KeyValueContainer) container;
|
|
|
|
+ kvc.exportContainerData(outputStream, packer);
|
|
|
|
+ } finally {
|
|
|
|
+ container.readUnlock();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public void markContainerForClose(Container container)
|
|
public void markContainerForClose(Container container)
|
|
throws IOException {
|
|
throws IOException {
|