ShadowySpirits opened a new issue, #5863:
URL: https://github.com/apache/rocketmq/issues/5863
link to #5754
In this issue, I add a new module `rocketmq-tiered-store` and implement the
first function of this tiered storage: metadata.
The tiered storage has three kinds of metadata: topic, queue, and file
segment. I designed some interfaces to access metadata and persisted them to
disk in JSON format like the topic config.
```
// File segment metadata will be published later
public interface TieredStoreMetadataStore {
@Nullable
TopicMetadata getTopic(String topic);
void iterateTopic(Consumer<TopicMetadata> callback);
TopicMetadata addTopic(String topic, long reserveTime);
void updateTopicReserveTime(String topic, long reserveTime);
void updateTopicStatus(String topic, int status);
void deleteTopic(String topic);
@Nullable
QueueMetadata getQueue(MessageQueue queue);
void iterateQueue(String topic, Consumer<QueueMetadata> callback);
QueueMetadata addQueue(MessageQueue queue, long baseOffset);
void updateQueue(QueueMetadata metadata);
void deleteQueue(MessageQueue queue);
}
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]