Class RemoteLogSegmentId

java.lang.Object
org.apache.kafka.server.log.remote.storage.RemoteLogSegmentId

@Evolving public class RemoteLogSegmentId extends Object
This class represents a universally unique identifier associated to a topic partition's log segment. This will be regenerated for every attempt of copying a specific log segment in RemoteStorageManager.copyLogSegmentData(RemoteLogSegmentMetadata, LogSegmentData). Once it is stored in remote storage, it is used to access that segment later from remote log metadata storage.
  • Constructor Details

  • Method Details

    • generateNew

      public static RemoteLogSegmentId generateNew(TopicIdPartition topicIdPartition)
      Creates a new RemoteLogSegmentId for the provided TopicIdPartition with a random Uuid.
      Parameters:
      topicIdPartition - TopicIdPartition of this remote log segment.
      Returns:
      generated RemoteLogSegmentId.
    • topicIdPartition

      public TopicIdPartition topicIdPartition()
      Returns:
      TopicIdPartition of this remote log segment.
    • id

      public Uuid id()
      Returns:
      Universally Unique Id of this remote log segment.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object