-
Notifications
You must be signed in to change notification settings - Fork 33
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
Improve pre-validation for Flint index refresh options #297
Merged
dai-chen
merged 12 commits into
opensearch-project:main
from
dai-chen:improve-index-validation
Apr 17, 2024
Merged
Improve pre-validation for Flint index refresh options #297
dai-chen
merged 12 commits into
opensearch-project:main
from
dai-chen:improve-index-validation
Apr 17, 2024
Conversation
This file contains 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
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
Signed-off-by: Chen Dai <[email protected]>
dai-chen
changed the title
Improve Flint index validation
Improve pre-validation for Flint index refresh options
Apr 5, 2024
dai-chen
requested review from
rupal-bq,
vmmusings,
penghuo,
seankao-az,
anirudha,
kaituo and
YANG-DB
as code owners
April 5, 2024 21:52
seankao-az
reviewed
Apr 10, 2024
...spark-integration/src/main/scala/org/opensearch/flint/spark/FlintSparkValidationHelper.scala
Outdated
Show resolved
Hide resolved
...t-spark-integration/src/main/scala/org/opensearch/flint/spark/refresh/AutoIndexRefresh.scala
Outdated
Show resolved
Hide resolved
...t-spark-integration/src/main/scala/org/opensearch/flint/spark/refresh/AutoIndexRefresh.scala
Show resolved
Hide resolved
Signed-off-by: Chen Dai <[email protected]>
seankao-az
approved these changes
Apr 17, 2024
This was referenced May 23, 2024
Closed
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.
Description
This PR introduces a pre-validation mechanism for Flint index operations. The primary goal here is to:
Detailed Design
The following design decisions were made to achieve these objectives:
Scope of Pre-validation: Pre-validation is selectively applied to operations that modify Flint index metadata, such as the creation or update of an index. This approach is taken to avoid unnecessary overhead and potential backward compatibility issues.
Location of Pre-validation Logic: After careful consideration, I decided to integrate the pre-validation process within the
FlintSparkIndexBuilder
class. This class serves as the entry point for both index creation and update workflows, making it an ideal place for implementing the validation logic.Implementation of Pre-validation: The pre-validation consists of two major aspects:
validate()
API method inFlintSparkIndexRefresh
.validateIndex()
method inFlintSparkIndexBuilder
.TODO
This PR is focused on improving pre-validation mechanisms specifically for Flint index refresh. A separate PR will be raised for introducing additional Flint index specific validations.
Examples
Example 1: Hive table validation
Example 2: Checkpoint location validation
Issues Resolved
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.