Skip to content

Record the RavenDB index search engine and rebuild decision - #6043

Open
mauroservienti wants to merge 1 commit into
masterfrom
ravendb-index-search-engine-adr
Open

mauroservienti wants to merge 1 commit into
masterfrom
ravendb-index-search-engine-adr

Conversation

@mauroservienti

Copy link
Copy Markdown
Member

Adds an ADR for how ServiceControl picks the RavenDB search engine of its indexes and how developers and operators learn about an index rebuild. Each pull request in the stack records its own change. This ADR covers the reasoning that spans all of them and should outlive them: why the database setting is left to the operator, the four rules for an index's engine, and how a definition change is caught before and during an upgrade.

The ADR's status is Proposed. Merge it after the stack, and set it to Accepted then, or update the rules first if review changes them.

Consequences lists three items that the upgrade guide of the release has to cover:

  • A pending Corax replacement started by 6.20.0 to 6.21.2 is expected to be replaced by a Lucene one, losing its progress. Use Lucene for new and rebuilt indexes #6035 does not discuss this case and no test covers it.
  • A LockedError index with a changed definition makes start-up fail.
  • Database settings are no longer pinned to Corax, and a rebuilt index changes engine without operator action.

docs/README.md links the ADR under Decisions and rationale. The Platform engineering context index for ServiceControl is updated in Particular/Platform#1676 and will link this ADR once it is merged.

Add an ADR for the decisions in #6034, #6035, #6036 and #6013: ServiceControl
no longer writes search engine settings to existing databases, picks the
engine of each new or rebuilt index, and reports and approves index
definition changes. Link it from the engineering context index.
@mauroservienti
mauroservienti force-pushed the ravendb-index-search-engine-adr branch from 9861ff2 to a2954f4 Compare October 21, 2026 14:01
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