doc/development/search/advanced_search_migration_review.md
This page is specific to advanced search migration reviews. Refer to our code review guide for broader advice and best practices for code review in general.
An advanced search migration review is required for:
ee/elastic/migrate/Search::Elastic::References::<IndexedData> or
legacy Elastic::Latest::<IndexedData>InstanceProxy classesAuthors must provide the required artifacts before requesting review. Reviewers ensure artifacts are complete and perform a first-pass review. Maintainers perform the final review and merge when approved.
You must provide the following when requesting a review. If your merge request description does not include these items, the review is reassigned back to the author.
WorkItem, MergeRequest, Commit).completed? returns true after execution. For
batched migrations, verify batching works as expected.ee/elastic/docs/ with required fields:
description - what the migration doesintroduced_by_url - link to the merge request that introduced the migrationskippable: true and skip_conditionmarked_obsolete_by_url and marked_obsolete_in_milestoneschema_version is incremented appropriately for
document changes. The format is YYVV (two-digit year and rolling version counter within that
year, for example 24_46).Elastic::DataMigrationService.migration_has_finished?
to check if the migration is complete before using new fields or behavior.as_indexed_json method is updated to match.visibility_level, traversal_ids, etc.) are handled correctly.Elastic::ProcessBookkeepingService.10_000 documents.batched! with appropriate delays.preload_indexing_data method efficiently loads associated data before indexing.preload_search_data scope to preload associations when returning results.Search::Elastic::Types::<IndexedData> or legacy
Elastic::Latest::<IndexedData>Config.To apply, you should be familiar with:
You should also have prior experience authoring or reviewing advanced search migrations.
Team members are encouraged to self-identify as advanced search migration domain experts, by adding it to your profile YAML file:
Make a merge request following the
project maintainer process for gitlab-advanced-search-migration.
Add your advanced search migration expertise to your YAML file:
projects:
gitlab:
- reviewer advanced_search_migrations
Assign the merge request to an advanced search migration maintainer or the Global Search Engineering Manager.
After the team.yml update is merged, the Reviewer roulette
may recommend you as an advanced search migration reviewer.