-
Notifications
You must be signed in to change notification settings - Fork 14
[v17] Store field-level indexing options in zap segments #345
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
Conversation
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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.
Pull Request Overview
This PR introduces field-level indexing options storage in zap segments (version 17), decoupling indexing configuration from Bleve's index mapping and enabling the merger to independently understand field indexing requirements.
Key Changes:
- Adds
fieldsOptionsmap to storeFieldIndexingOptionsfor each field in segment metadata - Extends file format to persist and load field indexing options alongside field definitions
- Updates merge logic to collect and filter field options across segments
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| write.go | Extended persistFieldsSection to write field indexing options as uvarints |
| segment.go | Added fieldsOptions map to SegmentBase and implemented loading logic in loadField |
| new.go | Added FieldsOptions to interim struct and populated it during field processing |
| merge.go | Extended mergeFields to return field options and added filterFieldOptions to clean up deleted fields |
| build.go | Initialized fieldsOptions map in InitSegmentBase |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
237d71f to
b1a32aa
Compare
The base branch was changed.
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.
Pull Request Overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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.
Pull Request Overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- Introduces fieldsOptions in the zap file segment to store indexing options for every field. - Decouples indexing logic from Bleve, allowing zapx to independently understand each field’s indexing configuration. - Enables the merger to identify which options were used to index a field without consulting the index mapping. - Adds metadata to the zap file format, making it a breaking change for version 17. - Requires blevesearch/bleve_index_api#76 --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.