Commit b2942df
committed
cluster: recovery for cloud topics metastore and topics
This implements the body of the cluster restore stages for cloud
topics, by restoring the metastore, and then calling create topics on
all the desired cloud topics.
One of the invariants that we're trying to uphold is that the metastore
topic will have the same remote_label after restoring as the original,
in order (this has the nice property of being able to point at the
metastore from a topic manifest, e.g. for read replicas).
To that end, restoring the metastore looks like:
1. creating the metastore topic
2. calling restore
3. upon success, updating the metastore topic's remote_label to be what
it was in the dead cluster
After this happens, we go ahead and create all the cloud topics, which
is only partially implemented in this commit: we create the topics, but
additional logic is needed to get the restored topics to bootstrap their
ctp_stms from the metastore. That is left as separate work.1 parent a6a1e19 commit b2942df
File tree
10 files changed
+718
-113
lines changed- src/v
- cloud_topics/tests
- cluster
- cloud_metadata
- redpanda
10 files changed
+718
-113
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
0 commit comments