Class CompressedBlockChannelReader
java.lang.Object
org.apache.flink.table.runtime.io.CompressedBlockChannelReader
- All Implemented Interfaces:
org.apache.flink.runtime.io.disk.iomanager.BlockChannelReader<org.apache.flink.core.memory.MemorySegment>,org.apache.flink.runtime.io.disk.iomanager.FileIOChannel,org.apache.flink.runtime.io.disk.iomanager.RequestDoneCallback<org.apache.flink.runtime.io.network.buffer.Buffer>,org.apache.flink.runtime.io.network.buffer.BufferRecycler
public class CompressedBlockChannelReader
extends Object
implements org.apache.flink.runtime.io.disk.iomanager.BlockChannelReader<org.apache.flink.core.memory.MemorySegment>, org.apache.flink.runtime.io.disk.iomanager.RequestDoneCallback<org.apache.flink.runtime.io.network.buffer.Buffer>, org.apache.flink.runtime.io.network.buffer.BufferRecycler
Compressed block channel reader provides a scenario where MemorySegment must be maintained.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.flink.runtime.io.network.buffer.BufferRecycler
org.apache.flink.runtime.io.network.buffer.BufferRecycler.DummyBufferRecyclerNested classes/interfaces inherited from interface org.apache.flink.runtime.io.disk.iomanager.FileIOChannel
org.apache.flink.runtime.io.disk.iomanager.FileIOChannel.Enumerator, org.apache.flink.runtime.io.disk.iomanager.FileIOChannel.ID -
Constructor Summary
ConstructorsConstructorDescriptionCompressedBlockChannelReader(org.apache.flink.runtime.io.disk.iomanager.IOManager ioManager, org.apache.flink.runtime.io.disk.iomanager.FileIOChannel.ID channel, LinkedBlockingQueue<org.apache.flink.core.memory.MemorySegment> blockQueue, org.apache.flink.runtime.io.compression.BlockCompressionFactory codecFactory, int preferBlockSize, int segmentSize) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()voidvoidorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel.IDorg.apache.flink.core.memory.MemorySegmentLinkedBlockingQueue<org.apache.flink.core.memory.MemorySegment>longgetSize()booleanisClosed()voidreadBlock(org.apache.flink.core.memory.MemorySegment segment) voidrecycle(org.apache.flink.core.memory.MemorySegment segment) voidrequestFailed(org.apache.flink.runtime.io.network.buffer.Buffer buffer, IOException e) voidrequestSuccessful(org.apache.flink.runtime.io.network.buffer.Buffer request) voidseekToPosition(long position)
-
Constructor Details
-
CompressedBlockChannelReader
public CompressedBlockChannelReader(org.apache.flink.runtime.io.disk.iomanager.IOManager ioManager, org.apache.flink.runtime.io.disk.iomanager.FileIOChannel.ID channel, LinkedBlockingQueue<org.apache.flink.core.memory.MemorySegment> blockQueue, org.apache.flink.runtime.io.compression.BlockCompressionFactory codecFactory, int preferBlockSize, int segmentSize) throws IOException - Throws:
IOException
-
-
Method Details
-
readBlock
- Specified by:
readBlockin interfaceorg.apache.flink.runtime.io.disk.iomanager.BlockChannelReader<org.apache.flink.core.memory.MemorySegment>- Throws:
IOException
-
seekToPosition
- Specified by:
seekToPositionin interfaceorg.apache.flink.runtime.io.disk.iomanager.BlockChannelReader<org.apache.flink.core.memory.MemorySegment>- Throws:
IOException
-
getNextReturnedBlock
- Specified by:
getNextReturnedBlockin interfaceorg.apache.flink.runtime.io.disk.iomanager.BlockChannelReader<org.apache.flink.core.memory.MemorySegment>- Throws:
IOException
-
getReturnQueue
- Specified by:
getReturnQueuein interfaceorg.apache.flink.runtime.io.disk.iomanager.BlockChannelReader<org.apache.flink.core.memory.MemorySegment>
-
getChannelID
public org.apache.flink.runtime.io.disk.iomanager.FileIOChannel.ID getChannelID()- Specified by:
getChannelIDin interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel
-
getSize
- Specified by:
getSizein interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel- Throws:
IOException
-
isClosed
public boolean isClosed()- Specified by:
isClosedin interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel
-
close
- Specified by:
closein interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel- Throws:
IOException
-
deleteChannel
public void deleteChannel()- Specified by:
deleteChannelin interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel
-
closeAndDelete
- Specified by:
closeAndDeletein interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel- Throws:
IOException
-
getNioFileChannel
- Specified by:
getNioFileChannelin interfaceorg.apache.flink.runtime.io.disk.iomanager.FileIOChannel
-
requestSuccessful
public void requestSuccessful(org.apache.flink.runtime.io.network.buffer.Buffer request) - Specified by:
requestSuccessfulin interfaceorg.apache.flink.runtime.io.disk.iomanager.RequestDoneCallback<org.apache.flink.runtime.io.network.buffer.Buffer>
-
requestFailed
- Specified by:
requestFailedin interfaceorg.apache.flink.runtime.io.disk.iomanager.RequestDoneCallback<org.apache.flink.runtime.io.network.buffer.Buffer>
-
recycle
public void recycle(org.apache.flink.core.memory.MemorySegment segment) - Specified by:
recyclein interfaceorg.apache.flink.runtime.io.network.buffer.BufferRecycler
-