-
Notifications
You must be signed in to change notification settings - Fork 0
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
Add utilities module and functions for reindexing #101
base: main
Are you sure you want to change the base?
Conversation
Container Scanning Status: ✅ Success
|
1a8e124
to
c9ae6d8
Compare
c9ae6d8
to
4e64bb4
Compare
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.
More discussion points than specific changes.
GenServer.stop(Figgy.HydrationConsumer) | ||
end | ||
|
||
def reindex_all(cache_version) do |
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.
Do we need to reset the state of everything if want to reindex? Like if we want a full re-hydration, can't we just reset the hydrator? And if we want a full retransformation without hydration, we just reset the transformer?
IndexingPipeline.get_processor_marker!("figgy_transformer", cache_version) | ||
|
||
IndexingPipeline.delete_processor_marker(transformation_processor_marker) | ||
GenServer.stop(Figgy.TransformationConsumer) |
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.
Should we use Broadway.stop?
alias DpulCollections.IndexingPipeline | ||
alias DpulCollections.IndexingPipeline.Figgy | ||
|
||
def reindex_solr(cache_version) do |
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.
Should these functions be part of the Consumer namespace? So like, Figgy.IndexingConsumer.Restart()
or Reset()
or ResetTo(nil)
or something?
Update: I tried doing it this way while I was reindexing for description and it didn't work - if indexing is running, it writes the marker between me updating and restarting the node, no matter how quickly I went. I think we need to stop the producer in-band somehow. |
I feel like we should be able to start these broadway pipelines as named processes so that we can shut them down by referencing them with an atom instead of needing a PID |
Closes #127 Co-authored-by: Anna Headley <[email protected]>
Co-authored-by: Anna Headley <[email protected]>
4e64bb4
to
a9f7e54
Compare
Co-authored-by: Trey Pendragon <[email protected]>
Co-authored-by: Trey Pendragon <[email protected]>
we're gonna read them again
Co-authored-by: Trey Pendragon <[email protected]>
Adds example function for resetting processor marker for an indexing stage and restarting the consumer.
refs #47