Add the ability to implement and test custom advanced visibility stores#4871
Conversation
e34bbf6 to
3f0ad69
Compare
|
@rodrigozhou, does this feature seem acceptable in principle? If yes, I would rebase and resolve conflicts so we could proceed with the review. |
|
@aromanovich Yes, please. This feature sounds nice! |
3f0ad69 to
fdddc67
Compare
|
@rodrigozhou, done. I would greatly appreciate if you could also take a look at #5118 — it's a bit related. Merging them would make the life of https://github.com/yandex/temporal-over-ydb a lot easier :) |
|
Gentle bump. Just in case this got lost 🙂 |
rodrigozhou
left a comment
There was a problem hiding this comment.
LGTM, just added a nit comment.
There was a problem hiding this comment.
visStore and err must be nil if it didn't enter any of those branches, so the last return should work.
|
@aromanovich |
…tom one (similar to AbstractDataStoreFactory)
f35cde7 to
cbf54a2
Compare
|
@rodrigozhou Done. Semgrep is not passing, but I'm quite sure it's not due to my rebase :) |
What changed?
Two things:
common/persistence/tests/visibility_persistence_suite_test.gorenamed tovisibility_persistence_suite.go, so that itsVisibilityPersistenceSuitecould be imported and run by the third-party package;VisibilityStoreFactoryinterface introduced. The server now acceptscustomVisibilityStoreFactoryand invokes it if visibility store configuration points toCustomDataStoreConfig.Why?
To be have an ability to implement and test custom advanced visibility stores.
How did you test it?
Ran Temporal tests.
Also built and ran a Temporal server with
temporal.WithCustomVisibilityStoreFactory(mypackage.NewMyVisibilityStoreFactory())option passed.Potential risks
None.
Is hotfix candidate?
No.