Fix: Revert unintended bulk sink changes that broke test case search indexing#27202
Merged
mohityadav766 merged 1 commit into1.12.5from Apr 9, 2026
Merged
Conversation
mohityadav766
approved these changes
Apr 9, 2026
…e test case search indexing Commit 2839bc2 cherry-picked PR #27153 ("Improve memory usage for reindex") to 1.12.5, bundled with the revert of PR #27103. PR #27153 is still open/unmerged on main and introduced extra file changes that were never meant for 1.12.5. The bulk sink change from toJsonData(json_string) to toJsonData(map_object) bypassed Jackson's WRITE_DATES_AS_TIMESTAMPS=false setting. During reindex, java.util.Date fields (like tags.appliedAt) were sent as raw epoch Longs instead of ISO strings. OpenSearch dynamically mapped tags.appliedAt as "long". Later, real-time indexing (test case creation via API) sent appliedAt as ISO string — OpenSearch rejected it with mapper_parsing_exception. Test cases with tags were created in DB but silently never indexed in search. Changes: - ElasticSearchBulkSink/OpenSearchBulkSink: reverted serialization back to pojoToJson → string → toJsonData(string), kept Thread.MIN_PRIORITY - EsUtils/OsUtils: removed toJsonData(Object) overload - SearchIndexExecutor: removed contextDataCache, kept Thread.MIN_PRIORITY - ReindexingMetrics: removed counter caching Requires reindex after deployment.
8fdeaae to
bce38b9
Compare
Code Review ✅ ApprovedReverts unintended bulk sink changes that were breaking test case search indexing. No issues found. OptionsDisplay: compact → Showing less information. Comment with these commands to change:
Was this helpful? React with 👍 / 👎 | Gitar |
mohityadav766
approved these changes
Apr 9, 2026
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.
Summary
2839bc259fstate, removing unintended changes from PR #27153 that were cherry-picked to 1.12.5 alongside the revert of PR #27103Problem
Commit
2839bc259fchanged the bulk sink serialization path from:to:
This caused
java.util.Datefields (liketags.appliedAt) to be sent as raw epochLongduring reindex. OpenSearch dynamically mappedtags.appliedAtaslong. Later, real-time indexing sentappliedAtas ISO string →mapper_parsing_exception:Test cases with tags were created in DB but silently never indexed in search, causing
DataQuality.spec.ts > TestCase filtersto fail.Files restored
ElasticSearchBulkSink.javapojoToJson→ string →toJsonData(string)OpenSearchBulkSink.javaEsUtils.javatoJsonData(Object)overloadOsUtils.javaSearchIndexExecutor.javacontextDataCache,Thread.MIN_PRIORITYReindexingMetrics.javaTest plan
DataQuality.spec.ts>TestCase filters— should passmapper_parsing_exceptionerrors in server logs fortags.appliedAt