-
Notifications
You must be signed in to change notification settings - Fork 468
Description
Current project I'm working on tries to do index work as background jobs. Where index worker method is like this:
def perform(model)
callback = ThinkingSphinx::RealTime.callback_for(model.class.name.underscore)
callback&.after_commit model
end
This mostly works but not for models using STI (single-table inheritance). For models where index is defined on the base_class
, then one has to use model.class.base_class
and for models where index is on descendant, then #base_class
shouldn't be used. So it is an error prone and ugly business.
Would be useful to be able to add callbacks like:
ThinkingSphinx::Callbacks.append(self, {behaviours: [:real_time], background: true})
Or some other way to allow that easily.
It also applies to ts:index
. It would be useful to queue indexing in background job batches. Presently we use the above indexation worker and can't benefit from the new clean-up functionality.
== thinking-sphinx 5.4 on rails 5 (in process of upgrading).
/related to #1038/