Skip to content

Merge main#5

Merged
vishwasgarg18 merged 16 commits into
nishchay21:main-vishwas-copyfrom
opensearch-project:main
Apr 10, 2026
Merged

Merge main#5
vishwasgarg18 merged 16 commits into
nishchay21:main-vishwas-copyfrom
opensearch-project:main

Conversation

@vishwasgarg18
Copy link
Copy Markdown
Collaborator

Description

[Describe what this change achieves]

Related Issues

Resolves #[Issue number to be closed when this PR is merged]

Check List

  • Functionality includes testing.
  • API changes companion pull request created, if applicable.
  • Public documentation issue/PR created, if applicable.

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.

andrross and others added 16 commits April 8, 2026 09:33
Co-authored-by: Sandesh Kumar <sandeshkr419@gmail.com>
* Fix breaking changes check

Signed-off-by: Andriy Redko <drreta@gmail.com>

* Fix test cases

Signed-off-by: Andriy Redko <drreta@gmail.com>

---------

Signed-off-by: Andriy Redko <drreta@gmail.com>
…1086)

* Init marks for ISSUE-20612

Signed-off-by: Mikhail Urmich <m.urmich@jobware.de>

* simplification i

Signed-off-by: Mikhail Urmich <m.urmich@jobware.de>

* switch case in favour of if-else-if

Signed-off-by: Mikhail Urmich <m.urmich@jobware.de>

* minor refactor

extract array parsing as its own function

Signed-off-by: Mikhail Urmich <m.urmich@jobware.de>

* Refactor

parseSourceObject: split key-value process into different code-blocks

Signed-off-by: Mikhail Urmich <urmich.m@gmail.com>

* Refactoring only

Signed-off-by: Mikhail Urmich <m.urmich@jobware.de>

* changelog and spotless

Signed-off-by: Mikhail Urmich <urmich.m@gmail.com>

* error message revert to original

Signed-off-by: Mikhail Urmich <urmich.m@gmail.com>

* parsing array had no validation

Signed-off-by: Mikhail Urmich <urmich.m@gmail.com>

* minor revert, to simplify the PR

Signed-off-by: Mikhail Urmich <urmich.m@gmail.com>

* Rebase and remove changelog entry

Signed-off-by: Andrew Ross <andrross@amazon.com>

---------

Signed-off-by: Mikhail Urmich <m.urmich@jobware.de>
Signed-off-by: Mikhail Urmich <urmich.m@gmail.com>
Signed-off-by: Andrew Ross <andrross@amazon.com>
Co-authored-by: Andrew Ross <andrross@amazon.com>
Co-authored-by: Sandesh Kumar <sandeshkr419@gmail.com>
…1158)

Co-authored-by: Ankit Jain <jainankitk@apache.org>
Co-authored-by: Sandesh Kumar <sandeshkr419@gmail.com>
* Add dedicated CI check for sandbox running on Github

Signed-off-by: Craig Perkins <cwperx@amazon.com>

* part1 and part2

Signed-off-by: Craig Perkins <cwperx@amazon.com>

* Fix syntax

Signed-off-by: Craig Perkins <cwperx@amazon.com>

---------

Signed-off-by: Craig Perkins <cwperx@amazon.com>
* Read docker location from PATH env variable on unix based systems

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Create ExecutableUtils with logic for unix and windows systems

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Expose docker-compose path for TestFixturesPlugin

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Fixed issues and code cleanup

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Suggested docker check from review

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Apply spotless

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Prioritize known paths over PATH env

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

* Fix paths order

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>

---------

Signed-off-by: Wojciech Krakowiak <wojciech.krakowiak@ibm.com>
Co-authored-by: Andriy Redko <drreta@gmail.com>
…stances (#20921)

* Use caching to avoid excessive creation of NonClosingReaderWrapper instances

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* fix by github-actions

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* fix spotlessApply

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* little fix

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* move the caching logic inside the private method

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* litle change

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* litle change

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

* little change

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>

---------

Signed-off-by: kkewwei <kewei.11@bytedance.com>
Signed-off-by: kkewwei <kkewwei@163.com>
….enabled=true (#21125)

* Disable sandbox by default for publication, require passing -Dsandbox.enabled=true

Signed-off-by: Craig Perkins <craig5008@gmail.com>
* Following changes are part of this PR:
1. Introducing FeatureFlag and Index Setting for pluggable dataformat feature.
2. Updating the FieldMappers to insert fields in DocumentInput for Multi Format Engine

Signed-off-by: Sagar Darji <darsaga@amazon.com>

# Conflicts:
#	CHANGELOG.md

* Addressing comment for moving the pluggable dataformat check to FieldMapper class

Signed-off-by: Sagar Darji <darsaga@amazon.com>

* Addressing comments for test cases and making parseCreateFieldForPluggableFormat as default rather than abstract

Signed-off-by: Sagar Darji <darsaga@amazon.com>

---------

Signed-off-by: Sagar Darji <darsaga@amazon.com>
Co-authored-by: Sagar Darji <darsaga@amazon.com>
…ue (#21187)

* Include sandbox only when explicitly enabled via -Dsandbox.enabled=true

Signed-off-by: Bukhtawar Khan <bukhtawa@amazon.com>
…#21159)

The verifyPrimaryBalance method used assertBusy with a 60-second
timeout to poll an immutable ClusterState object. Since ClusterState
is immutable, the assertion either passes immediately or never passes,
making the polling pointless.

This was particularly expensive in
testPrimaryBalanceNotSolvedForNodeDropWithPreferPrimaryBalanceSetting
which expects the balance check to fail in at least 4 out of 5 runs.
Each failure waited the full 60-second timeout, causing the test to
take ~328 seconds in CI. With direct assertions it completes in under
1 second.

Signed-off-by: Andrew Ross <andrross@amazon.com>
#21168)

* Initial changes to move to FFM and have single rust workspace for rust native libraries

Signed-off-by: bharath-techie <bharath78910@gmail.com>
Co-authored-by: Bukhtawar Khan <bukhtawa@amazon.com>
* Make BulkItemRequest immutable

I was talking with @itschrispeck about some JIT optimization issues in
BulkItemRequest's serialization. While looking at the code, the
`volatile` keyword on the `primaryResponse` field made me cringe. Why
is a `BulkItemRequest` mutable at all?

It turns out that we modify the existing `BulkItemRequest` instances
on the primary shard. These modified requests are send to the replicas.

This change makes `BulkItemRequest` immutable. The primary execution
context collects all of the primary responses, then produces a new
`BulkShardRequest` that gets forwarded to replicas.

Signed-off-by: Michael Froh <msfroh@apache.org>

* Fix TransportShardBulkActionTests

These tests relied on the assumption that the BulkShardRequest would be
mutated on the primary.

In particular, there were some ridiculous tests that were verifying
that the output was unchanged from the input, when the output was the
same object as the input, which had been changed in place.

Signed-off-by: Michael Froh <msfroh@apache.org>

* Make BulkItemRequest a record and fix BulkShardRequest clone

Follow @andrross's suggestion of converting BulkItemRequest to a record,
since it's immutable now.

Also, we were seeing test failures because the cloned BulkShardRequest
(that is propagated to replicas) did not copy the primary request's
parent TaskId. Along with that, I made sure it copied all other
properties from the primary shard request.

Signed-off-by: Michael Froh <msfroh@apache.org>

* Address PR bot comments

1. Add null-check (assert) on primary responses when running on replica.
2. Move BulkShardRequest cloning logic from BulkPrimaryExecutionContext
   to BulkShardRequest and ReplicationRequest. Add a dedicated unit test
   for it.

Signed-off-by: Michael Froh <msfroh@apache.org>

* Fix (and use) broken branch in assertInvariants

Signed-off-by: Michael Froh <msfroh@apache.org>

* Remove assertion on requestToExecute

We previously weren't checking invariants for COMPLETED operations,
so the assertions never ran. As called out by @andrross, there are
two possible code paths that mark an operation as completed without
setting requestToExecute.

Signed-off-by: Michael Froh <msfroh@apache.org>

* Remove reference copy of primaryReponse

Signed-off-by: Michael Froh <msfroh@apache.org>

---------

Signed-off-by: Michael Froh <msfroh@apache.org>
* fix threadcontext been clear when using streaming for transport
---------

Signed-off-by: Hailong Cui <ihailong@amazon.com>
Signed-off-by: Varun Bharadwaj <varunbharadwaj1995@gmail.com>
@vishwasgarg18 vishwasgarg18 merged commit 6c4f8b8 into nishchay21:main-vishwas-copy Apr 10, 2026
32 checks passed
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.