public class TierObjectStoreMetricsEnabled extends Object implements TierObjectStore
TierObjectStore.Backend, TierObjectStore.BackupObjectsListMetadata, TierObjectStore.DataTypePathPrefix, TierObjectStore.FileType, TierObjectStore.KeyAndVersion, TierObjectStore.LifecycleManagerStateMetadata, TierObjectStore.ObjectMetadata, TierObjectStore.ObjectStoreMetadata, TierObjectStore.OpaqueData, TierObjectStore.TierStateRestoreSnapshotMetadata
Constructor and Description |
---|
TierObjectStoreMetricsEnabled(TierObjectStore inner,
org.apache.kafka.common.metrics.Metrics metrics,
org.apache.kafka.common.utils.Time time) |
Modifier and Type | Method and Description |
---|---|
void |
close() |
void |
deleteSegment(TierObjectStore.ObjectMetadata objectMetadata) |
void |
deleteVersions(List<TierObjectStore.KeyAndVersion> keys) |
TierObjectStore.Backend |
getBackend() |
TierObjectStoreResponse |
getObject(TierObjectStore.ObjectStoreMetadata objectMetadata,
TierObjectStore.FileType objectFileType,
Integer byteOffset,
Integer byteOffsetEnd) |
Map<String,List<VersionInformation>> |
listObject(String keyPrefix,
boolean getVersionInfo) |
boolean |
objectExists(TierObjectStore.ObjectMetadata objectMetadata,
TierObjectStore.FileType type) |
TierObjectStore.OpaqueData |
prepPutSegment() |
void |
putBuf(String key,
Map<String,String> metadata,
ByteBuffer buf) |
void |
putInMemorySegment(TierObjectStore.ObjectMetadata objectMetadata,
File segmentData,
File offsetIndexData,
File timestampIndexData,
Optional<ByteBuffer> producerStateSnapshotData,
Optional<ByteBuffer> transactionIndexData,
Optional<ByteBuffer> epochState) |
void |
putObject(TierObjectStore.ObjectStoreMetadata objectMetadata,
File file,
TierObjectStore.FileType fileType) |
void |
putSegment(TierObjectStore.ObjectMetadata objectMetadata,
File segmentData,
File offsetIndexData,
File timestampIndexData,
Optional<File> producerStateSnapshotData,
Optional<ByteBuffer> transactionIndexData,
Optional<ByteBuffer> epochState) |
void |
restoreObjectByCopy(String key,
VersionInformation lastLiveVersion)
There are usually 2 ways to restore a deleted object:
- to remove the deleteMarker of the object to expose its last live version again as current version.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getObject, getObject
public TierObjectStoreMetricsEnabled(TierObjectStore inner, org.apache.kafka.common.metrics.Metrics metrics, org.apache.kafka.common.utils.Time time)
public TierObjectStore.Backend getBackend()
getBackend
in interface TierObjectStore
public Map<String,List<VersionInformation>> listObject(String keyPrefix, boolean getVersionInfo)
listObject
in interface TierObjectStore
public TierObjectStoreResponse getObject(TierObjectStore.ObjectStoreMetadata objectMetadata, TierObjectStore.FileType objectFileType, Integer byteOffset, Integer byteOffsetEnd) throws IOException
getObject
in interface TierObjectStore
IOException
public TierObjectStore.OpaqueData prepPutSegment() throws TierObjectStoreRetriableException, IOException
prepPutSegment
in interface TierObjectStore
TierObjectStoreRetriableException
IOException
public void putObject(TierObjectStore.ObjectStoreMetadata objectMetadata, File file, TierObjectStore.FileType fileType) throws TierObjectStoreRetriableException, IOException
putObject
in interface TierObjectStore
TierObjectStoreRetriableException
IOException
public void restoreObjectByCopy(String key, VersionInformation lastLiveVersion)
TierObjectStore
restoreObjectByCopy
in interface TierObjectStore
public void putInMemorySegment(TierObjectStore.ObjectMetadata objectMetadata, File segmentData, File offsetIndexData, File timestampIndexData, Optional<ByteBuffer> producerStateSnapshotData, Optional<ByteBuffer> transactionIndexData, Optional<ByteBuffer> epochState) throws TierObjectStoreRetriableException, IOException
putInMemorySegment
in interface TierObjectStore
TierObjectStoreRetriableException
IOException
public void putSegment(TierObjectStore.ObjectMetadata objectMetadata, File segmentData, File offsetIndexData, File timestampIndexData, Optional<File> producerStateSnapshotData, Optional<ByteBuffer> transactionIndexData, Optional<ByteBuffer> epochState) throws TierObjectStoreRetriableException, IOException
putSegment
in interface TierObjectStore
TierObjectStoreRetriableException
IOException
public void putBuf(String key, Map<String,String> metadata, ByteBuffer buf) throws IOException
putBuf
in interface TierObjectStore
IOException
public void deleteSegment(TierObjectStore.ObjectMetadata objectMetadata) throws IOException
deleteSegment
in interface TierObjectStore
IOException
public void deleteVersions(List<TierObjectStore.KeyAndVersion> keys)
deleteVersions
in interface TierObjectStore
public boolean objectExists(TierObjectStore.ObjectMetadata objectMetadata, TierObjectStore.FileType type) throws TierObjectStoreRetriableException, IOException
objectExists
in interface TierObjectStore
TierObjectStoreRetriableException
IOException
public void close()
close
in interface TierObjectStore