In GCP Pub/Sub I have a topic and a Subscription1 and have have started publishing messages.
Can I add another subscription, Subscription2 and replay old messages that had been published before the Subscription2 was created? Would it allow it? (Kafka allows it)
At what point would I lose access to messages (within the retention period)?, deleting all the Subscriptions? Would keeping at least one active subscription allow PubSub to add new Subscriptions and replay old messages?
Can I also increase the retention period beyond 7 days on the topic?
Edit: The messages will be persisted to DB, but I am more interested in a pub/sub architecture
Replaying old topic messages to a new subscription is possible since mid-2021 (see the announcement for more details).
To be able to do this, message retention must be enabled for the topic (maximum configurable retention is 31 days).
To do this, using gcloud CLI, you'd first create a new subscription as usual:
gcloud pubsub subscriptions create test-subscription --topic test-topic
and then "replay" old messages retained on the topic using the seek command:
gcloud pubsub subscriptions seek test-subscription \
--time="$(date --date='10 days ago')"
In this example messages from 10 days in the past would become available in the subscription. Please note that the date subcommand won't work on macOS but you could install and use gdate instead (brew install gdate).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With