Skip to content
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

Bulk spec fixes #843

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from
Draft

Conversation

karenyrx
Copy link

@karenyrx karenyrx commented Mar 16, 2025

Description

While working on GRPC Bulk endpoint, discovered a few discrepancies in the Bulk protos with the source code

  1. routing field is a String, not array of String
  2. CreateOperation does not support version_type, and versioning-related fields. makes sense as CreateOperation is for creating a document for the very first time.
  3. UpdateOperation does not support version_types and will always use VersionType.INTERNAL
  4. dynamic_templates is not supported for IndexOperation and CreateOperation

Issues Resolved

List any issues this PR will resolve, e.g. Closes [...].

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.

@dblock
Copy link
Member

dblock commented Mar 20, 2025

Looks like a good start. Sign DCO (git commit -s --amend), get it to green. Thanks!

Copy link
Contributor

Changes Analysis

Commit SHA: 74cde8d
Comparing To SHA: 5d1077e

API Changes

Summary

├─┬Paths
│ ├─┬/{index}/_bulk
│ │ ├─┬PUT
│ │ │ └─┬Parameters
│ │ │   └─┬Schema
│ │ │     └──[🔀] $ref (36116:13)❌ 
│ │ └─┬POST
│ │   └─┬Parameters
│ │     └─┬Schema
│ │       └──[🔀] $ref (36116:13)❌ 
│ └─┬/_bulk
│   ├─┬PUT
│   │ └─┬Parameters
│   │   └─┬Schema
│   │     └──[🔀] $ref (36116:13)❌ 
│   └─┬POST
│     └─┬Parameters
│       └─┬Schema
│         └──[🔀] $ref (36116:13)❌ 
└─┬Components
  ├─┬_common___WaitForActiveShardOptions
  │ └──[➖] enum (36877:11)❌ 
  ├─┬_core.bulk___UpdateOperation
  │ └─┬ALLOF
  │   ├──[➕] properties (46064:13)
  │   ├──[➕] properties (46067:13)
  │   ├─┬require_alias
  │   │ ├──[🔀] type (46065:21)❌ 
  │   │ ├──[➕] format (46066:23)❌ 
  │   │ └──[➖] description (46049:28)
  │   └─┬retry_on_conflict
  │     └──[🔀] $ref (36464:13)❌ 
  ├─┬_core.bulk___IndexOperation
  │ └──[🔀] $ref (45951:7)❌ 
  ├─┬_core.bulk___WriteOperation
  │ └─┬ALLOF
  │   └──[➖] properties (46059:13)❌ 
  ├─┬_core.bulk___DeleteOperation
  │ └──[🔀] $ref (45937:7)❌ 
  ├─┬_common___ScriptBase
  │ └─┬params
  │   └──[🔀] description (36145:24)
  └─┬_core.bulk___OperationBase
    ├──[➖] properties (45950:9)❌ 
    ├──[➖] properties (45953:9)❌ 
    ├──[➖] properties (45955:9)❌ 
    └──[➖] properties (45957:9)❌ 

Document Element Total Changes Breaking Changes
paths 4 4
components 15 15
  • BREAKING Changes: 19 out of 19
  • Modifications: 9
  • Removals: 7
  • Additions: 3
  • Breaking Removals: 6
  • Breaking Modifications: 8
  • Breaking Additions: 1

Report

The full API changes report is available at: https://github.com/opensearch-project/opensearch-api-specification/actions/runs/13938166691/artifacts/2796725738

API Coverage

Before After Δ
Covered (%) 663 (64.94 %) 663 (64.94 %) 0 (0 %)
Uncovered (%) 358 (35.06 %) 358 (35.06 %) 0 (0 %)
Unknown 49 49 0

Copy link
Contributor

Spec Test Coverage Analysis

Total Tested
599 597 (99.67 %)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants