-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(pubsublite): create/update export subscriptions #6885
Conversation
tmdiep
commented
Oct 18, 2022
•
edited
Loading
edited
- Added support for creating and updating export subscriptions, which write messages to a configured destination, for example a Pub/Sub topic. More destination types may be supported in the future.
- Added support for creating subscriptions initialized to a target location within the message backlog. A seek is performed for publish and event timestamps.
@codyoss Can you please review the API surface changes in pubsublite/config.go and pubsublite/admin.go. Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a couple comments on the surface -- don't consider any of them blocking.
@@ -211,6 +212,121 @@ func (tc *TopicConfigToUpdate) toUpdateRequest() *pb.UpdateTopicRequest { | |||
} | |||
} | |||
|
|||
// ExportDestinationConfig is the configuration for exporting to a destination. | |||
// Implemented by *PubSubConfig. | |||
type ExportDestinationConfig interface { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How many of these do you anticipate? Could this just be a config struct instead of having the extra indirection?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can't predict how many, but there may be several in the future, hence the oneof-like representation.
🤖 I have created a release *beep* *boop* --- ## [1.6.0](https://togithub.com/googleapis/google-cloud-go/compare/pubsublite/v1.5.0...pubsublite/v1.6.0) (2022-12-10) ### Features * **pubsublite:** Create/update export subscriptions ([#6885](https://togithub.com/googleapis/google-cloud-go/issues/6885)) ([5fa8555](https://togithub.com/googleapis/google-cloud-go/commit/5fa855545502ab01775d19cc7b42810beefd1d5f)) * **pubsublite:** rewrite signatures and type in terms of new location ([620e6d8](https://togithub.com/googleapis/google-cloud-go/commit/620e6d828ad8641663ae351bfccfe46281e817ad)) * **pubsublite:** Unload idle partition publishers ([#7105](https://togithub.com/googleapis/google-cloud-go/issues/7105)) ([176f533](https://togithub.com/googleapis/google-cloud-go/commit/176f5331ff02dd9ae4eb706f299b31c903689298)) --- This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).