OAK-12125: gracefully handle property index missing propertyNames (#2924)#2926
Open
thomasmueller wants to merge 1 commit into
Open
OAK-12125: gracefully handle property index missing propertyNames (#2924)#2926thomasmueller wants to merge 1 commit into
thomasmueller wants to merge 1 commit into
Conversation
) A missing 'propertyNames' caused an NPE that escaped IndexUpdate's IllegalStateException catch and broke the async indexing cycle. Add an opt-in fallback gated by FT_GRANITE-63829 (registered in @activate, driven by LaunchDarkly in production): when on, the editor logs one WARN per misconfigured index path and uses a sentinel property name so the cycle continues. Default off preserves the pre-PR behavior. Co-authored-by: Theia Vlad <tvlad@Theias-MacBook-Pro.local>
reschke
requested changes
Jun 3, 2026
| @Activate | ||
| private void activate(BundleContext bundleContext) { | ||
| Whiteboard whiteboard = new OsgiWhiteboard(bundleContext); | ||
| this.feature = newFeature(FT_GRANITE_63829, whiteboard); |
There was a problem hiding this comment.
I've seen a similar naming scheme used in other parts of the codebase and went along with it. Thanks for the catch, I'll revise it.
reschke
reviewed
Jun 3, 2026
| } | ||
|
|
||
| private EditorHook hookWithFeatureEnabled(boolean enabled) { | ||
| PropertyIndexEditorProvider provider = new PropertyIndexEditorProvider(); |
Contributor
There was a problem hiding this comment.
Apparently this works but why is the name of the toggle not needed here? (just asking)
There was a problem hiding this comment.
The provider class doesn't get the toggle from the constructor (only the editor does). It has the toggle name hardcoded in the activate method, where only the osgiContext is needed, for the creating the whiteboard with the shared state.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A missing 'propertyNames' caused an NPE that escaped IndexUpdate's IllegalStateException catch and broke the async indexing cycle. Add an opt-in fallback gated by FT_GRANITE-63829 (registered in @activate, driven by LaunchDarkly in production): when on, the editor logs one WARN per misconfigured index path and uses a sentinel property name so the cycle continues. Default off preserves the pre-PR behavior.