Skip to content

allow pilot to add reindex indexes#1194

Open
bgentry wants to merge 1 commit intomasterfrom
bg/reindexer-pro-extension
Open

allow pilot to add reindex indexes#1194
bgentry wants to merge 1 commit intomasterfrom
bg/reindexer-pro-extension

Conversation

@bgentry
Copy link
Copy Markdown
Contributor

@bgentry bgentry commented Apr 4, 2026

The reindexer operates on a fixed list of indexes. I'm not certain if we have a compelling use case to expose a generalized config for this, but in the meantime, we have pro features which would benefit from periodic re-indexing.

Add a pilot hook that allows for extra reindex targets while preserving the existing schedule and timeout behavior. The reindexer also filters configured targets through IndexesExist so missing optional indexes are skipped cleanly, and tests pin the default and merged target lists.

The reindexer operates on a fixed list of indexes. I'm not certain if we
have a compelling use case to expose a generalized config for this, but
in the meantime, we have pro features which would benefit from periodic
re-indexing.

Add a pilot hook that allows for extra reindex targets while preserving
the existing schedule and timeout behavior. The reindexer also filters
configured targets through `IndexesExist` so missing optional indexes are
skipped cleanly, and tests pin the default, merged, and deduplicated
target lists.
@bgentry bgentry requested a review from brandur April 4, 2026 00:45
Copy link
Copy Markdown
Contributor

@brandur brandur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool.

@bgentry
Copy link
Copy Markdown
Contributor Author

bgentry commented Apr 6, 2026

@brandur actually what's your thought on whether this should just be part of river.Config? It'd be simpler to expose in that fashion, and even though people are unlikely to want to use it maybe it'd be good to just make it available directly (vs semi-private mechanisms) for those who find it useful? The Pro init can just append its own indexes as desired.

@brandur
Copy link
Copy Markdown
Contributor

brandur commented Apr 6, 2026

@brandur actually what's your thought on whether this should just be part of river.Config? It'd be simpler to expose in that fashion, and even though people are unlikely to want to use it maybe it'd be good to just make it available directly (vs semi-private mechanisms) for those who find it useful? The Pro init can just append its own indexes as desired.

So if the user specifies their own set of indexes to reindex and then uses Pro, Pro would append one list to the other?

I guess this should be fine. The only the downside I can imagine is if you people end up coming to rely on it too much, they may request additional customization like number of concurrent reindexes, etc., and before you know it you could a more expansive set of options needed (we already have two on there just for the reindexer and hopefully it wouldn't expand anymore than that). I suppose that's not the end of the world though.

It'd be sort of nice to have a way of marking a property as "contemplative, but not totally stable" in Go to give us a little leeway to change this sort of thing, but I don't think it's possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants