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

Revert changes in AbstractPointGeometryFieldMapper #5249

Closed
wants to merge 653 commits into from

Conversation

heemin32
Copy link
Contributor

Description

The change made in AbstractPointGeometryFieldMapper class with commit heemin32@0503897 introduced a performace degradation during point data indexing. Reverting it therefore.

The change was about consolidating array format parsing code for point type in a single place to acheive following benefits.

  1. Allow plugins to override array parsing logic. Plugins can add its own parsing logic for point field by providing object parser. However, it cannot override array format. Therefore, plugin have to use whatever implemented in AbstractPointGeometryFieldMapper class.
  2. Enhanced code quality by removing duplicated code

There is no change in functionality because 1. There is no change in functionality in OpenSearch and 2. No plugins have its own parsing logic for point data in array format yet.

Issues Resolved

opensearch-project/opensearch-build#2888

Check List

  • New functionality includes testing.
    • All tests pass
  • New functionality has been documented.
    • New functionality has javadoc added
  • Commits are signed per the DCO using --signoff
  • Commit changes are listed out in CHANGELOG.md file (See: Changelog)

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.

nknize and others added 30 commits August 16, 2022 09:01
…#4226)

Prevents "search with uppercase regex" in 190_index_prefix_search.yml from
running in bwc testing until feature is backported.

Signed-off-by: Nicholas Walter Knize <[email protected]>
…ch-project#4172)

* Introduce TranslogFactory for Local/Remote Translog support

Signed-off-by: Bukhtawar Khan <[email protected]>
…ds (opensearch-project#4236)

* [Segment Replication] Add thread sleep to account for replica lag in delete operations test

Signed-off-by: Suraj Singh <[email protected]>

* Address review comments, assertBusy on doc count rather than sleep

Signed-off-by: Suraj Singh <[email protected]>

Signed-off-by: Suraj Singh <[email protected]>
…ps. (opensearch-project#4237)

* Segment Replication - Add additional unit tests for update & delete operations.

Signed-off-by: Marc Handalian <[email protected]>

* Fix spotless.

Signed-off-by: Marc Handalian <[email protected]>

Signed-off-by: Marc Handalian <[email protected]>
…#4135)

* Support shard promotion with Segment Replication.

This change adds basic failover support with segment replication.  Once selected, a replica will commit and reopen a writeable engine.

Signed-off-by: Marc Handalian <[email protected]>

* Add check to ensure a closed shard does not publish checkpoints.

Signed-off-by: Marc Handalian <[email protected]>

* Clean up in SegmentReplicationIT.

Signed-off-by: Marc Handalian <[email protected]>

* PR feedback.

Signed-off-by: Marc Handalian <[email protected]>

* Fix merge conflict.

Signed-off-by: Marc Handalian <[email protected]>

Signed-off-by: Marc Handalian <[email protected]>
…opensearch-project#4222)

* Added timing data and more granular stages to SegmentReplicationState

This change introduces instrumentation logging that measures the latency of the various stages of segment replication as seen by each replica. Logs have also been added to the source node for checkpoint publishing and checkpoint metadata responses. All logging is currently at the TRACE level.

Signed-off-by: Kartik Ganesh <[email protected]>

* Fixing SegmentReplicationTarget tests

Signed-off-by: Kartik Ganesh <[email protected]>

* Incorporated PR feedback

Signed-off-by: Kartik Ganesh <[email protected]>

* Fixing SegmentReplicationTargetService tests

Signed-off-by: Kartik Ganesh <[email protected]>

Signed-off-by: Kartik Ganesh <[email protected]>
* Return 400 status code for array out of bound

Signed-off-by: Owais Kazi <[email protected]>

* Spotless apply

Signed-off-by: Owais Kazi <[email protected]>

* PR comments

Signed-off-by: Owais Kazi <[email protected]>

Signed-off-by: Owais Kazi <[email protected]>
… with higher replication checkpoint (opensearch-project#4041)

* [Segment Replication] Update PrimaryShardAllocator to prefer replicas having higher replication checkpoint

Signed-off-by: Suraj Singh <[email protected]>

* Use empty replication checkpoint to avoid NPE

Signed-off-by: Suraj Singh <[email protected]>

* Update NodeGatewayStartedShards to optionally wire in/out ReplicationCheckpoint field

Signed-off-by: Suraj Singh <[email protected]>

* Use default replication checkpoint causing EOF errors on empty checkpoint

* Add indexSettings to GatewayAllocator to allow ReplicationCheckpoint comparator only for segrep enabled indices

* Add unit tests for primary term first replica promotion & comparator fix

* Fix NPE on empty IndexMetadata

* Remove settings from AllocationService and directly inject in GatewayAllocator

* Add more unit tests and minor code clean up

Signed-off-by: Suraj Singh <[email protected]>

* Address review comments & integration test

Signed-off-by: Suraj Singh <[email protected]>

* Fix comparator on null ReplicationCheckpoint

Signed-off-by: Suraj Singh <[email protected]>

Signed-off-by: Suraj Singh <[email protected]>
…wer bound (opensearch-project#4270)

Fixes tests to account for TotalHits uncertainty as of Lucene 9.

Signed-off-by: Daniel Widdis <[email protected]>
…4273)

Bumps com.gradle.enterprise from 3.10.3 to 3.11.1.

---
updated-dependencies:
- dependency-name: com.gradle.enterprise
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ns on GeoPoint from server folder to geo module.(opensearch-project#4071) (opensearch-project#4072) (opensearch-project#4180)

The changes also includes:
   * Updated Search plugin to provide the interface so that plugins can also register the composite aggregations
   * Added YAML test for the geo_grid, geo_tile and composite aggregation

Signed-off-by: Navneet Verma <[email protected]>
…roject#4105)

* pit segments service layer changes

Signed-off-by: Bharathwaj G <[email protected]>

* Addressing comment

Signed-off-by: Bharathwaj G <[email protected]>

* Addressing comment

Signed-off-by: Bharathwaj G <[email protected]>

* Addressing comment

Signed-off-by: Bharathwaj G <[email protected]>

* addressing review comments

Signed-off-by: Bharathwaj G <[email protected]>

* addressing comment

Signed-off-by: Bharathwaj G <[email protected]>

* Addressing comments

Signed-off-by: Bharathwaj G <[email protected]>

* addressing comments

Signed-off-by: Bharathwaj G <[email protected]>

* Addressing comments

Signed-off-by: Bharathwaj G <[email protected]>

* Adding '_all' as option to get all segments

Signed-off-by: Bharathwaj G <[email protected]>

Signed-off-by: Bharathwaj G <[email protected]>
* Add workflow for changelog verification

Signed-off-by: Kunal Kotwani <[email protected]>

* Update format for changelog, add developer documentation

Signed-off-by: Kunal Kotwani <[email protected]>

* Update link reference to be relative to project

Signed-off-by: Kunal Kotwani <[email protected]>

* Fix links for CHANGELOG versions

Signed-off-by: Kunal Kotwani <[email protected]>

* Update contribution guide

Signed-off-by: Kunal Kotwani <[email protected]>

Signed-off-by: Kunal Kotwani <[email protected]>
…bat manager" (opensearch-project#4289)

* [BUG] Update opensearch-service-x64.exe parameters to //ES for Execute Service. Update opensearch-service-mgr.exe parameters to //ES for Edit Service. Add code comments for the Apache Commons Daemon.

Signed-off-by: Alex Burck <[email protected]>

* update changelog with pull request link

Signed-off-by: Alex Burck <[email protected]>

Signed-off-by: Alex Burck <[email protected]>
* Removing dead code in RecoveryTarget.

This code in RecoveryTarget is not invoked, all of these methods are implemented by the parent ReplicationTarget with the same behavior.

Signed-off-by: Marc Handalian <[email protected]>

* PR Comments.

Signed-off-by: Marc Handalian <[email protected]>

Signed-off-by: Marc Handalian <[email protected]>
* Update changelog contribution guide

Signed-off-by: Kunal Kotwani <[email protected]>

* Fix reference to pull request

Signed-off-by: Kunal Kotwani <[email protected]>

Signed-off-by: Kunal Kotwani <[email protected]>
Signed-off-by: Kunal Kotwani <[email protected]>

Signed-off-by: Kunal Kotwani <[email protected]>
…4133)

This commit prevents a replica shard from being failed in the case that
a replication action to a replica is canceled due to the primary shard
being closed.

Signed-off-by: Andrew Ross <[email protected]>

Signed-off-by: Andrew Ross <[email protected]>
Signed-off-by: Andriy Redko <[email protected]>

Signed-off-by: Andriy Redko <[email protected]>
…der from package 'org.opensearch.action.support.master.info' for subclasses (opensearch-project#4307)

* Restore using the class ClusterInfoRequest and ClusterInfoRequestBuilder from package 'org.opensearch.action.support.master.info' for subclasses

Signed-off-by: Tianli Feng <[email protected]>

* Add changelog

Signed-off-by: Tianli Feng <[email protected]>

Signed-off-by: Tianli Feng <[email protected]>
Co-authored-by: Andrew Ross <[email protected]>
…nsearch-project#4305)

* [BUG] Create logs directory before running OpenSearch on Windows

Signed-off-by: Alex Burck <[email protected]>

* update changlog pr link

Signed-off-by: Alex Burck <[email protected]>

Signed-off-by: Alex Burck <[email protected]>
…h-project#4240)

* Use RemoteSegmentStoreDirectory instead of RemoteDirectory

Signed-off-by: Sachin Kale <[email protected]>
When publishing Zip POM the groupId value was hard-coded to `org.opensearch.plugin` value which worked fine for existing core plugins but is not convenient for other plugins (such as community plugins maintained in independent repositories).

This PR changes the sources of the ZIP publishing groupId value.

Specifically, there are two ways to set the value:
1) It is automatically inherited from the Gradle "project.group"
2) It can be manually specified in the ZIP publication POM object

This PR also brings a major rework of tests in PublishTests class. Individual testing scenarios are driven by "real" gradle building scripts (utilizing `java-gradle-plugin` gradle plugin).

Closes opensearch-project#3692

Signed-off-by: Lukáš Vlček <[email protected]>

Signed-off-by: Lukáš Vlček <[email protected]>
…ss in testReplicationOnDone test (opensearch-project#4314)

* [Segment Replication] testReplicationOnDone Add timeout to allow time for verify call

Signed-off-by: Suraj Singh <[email protected]>

* Update changelog

Signed-off-by: Suraj Singh <[email protected]>

* Add change log entry

Signed-off-by: Suraj Singh <[email protected]>

Signed-off-by: Suraj Singh <[email protected]>
The package `org.yaml:snakeyaml` before version 1.31 are vulnerable to Denial of Service (DoS) due missing to nested depth limitation for collections.

Details at https://nvd.nist.gov/vuln/detail/CVE-2022-25857

Signed-off-by: Rabi Panda <[email protected]>
* Fixed label for dependabot PR helper

Signed-off-by: Kunal Kotwani <[email protected]>

* Update autocommit workflow for dependabot changelog

Signed-off-by: Kunal Kotwani <[email protected]>

* Add version config for dependabot changelog helper

Signed-off-by: Kunal Kotwani <[email protected]>

Signed-off-by: Kunal Kotwani <[email protected]>
dependabot bot and others added 25 commits November 8, 2022 11:24
…project#4948)

* Bump gson from 2.9.0 to 2.10 in /plugins/repository-hdfs

Bumps [gson](https://github.com/google/gson) from 2.9.0 to 2.10.
- [Release notes](https://github.com/google/gson/releases)
- [Changelog](https://github.com/google/gson/blob/master/CHANGELOG.md)
- [Commits](google/gson@gson-parent-2.9.0...gson-parent-2.10)

---
updated-dependencies:
- dependency-name: com.google.code.gson:gson
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updating SHAs

Signed-off-by: dependabot[bot] <[email protected]>

* Update changelog

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
* Update to Gradle 7.6 and JDK-19

Signed-off-by: Andriy Redko <[email protected]>

* Address code review comments

Signed-off-by: Andriy Redko <[email protected]>

* Address code review comments

Signed-off-by: Andriy Redko <[email protected]>

* Update Gradle to 7.6-rc2

Signed-off-by: Andriy Redko <[email protected]>

* Removed unnecessary override

Signed-off-by: Andriy Redko <[email protected]>

Signed-off-by: Andriy Redko <[email protected]>
…re (opensearch-project#4996)

* Bump protobuf-java from 3.21.8 to 3.21.9 in /test/fixtures/hdfs-fixture

Bumps [protobuf-java](https://github.com/protocolbuffers/protobuf) from 3.21.8 to 3.21.9.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/generate_changelog.py)
- [Commits](protocolbuffers/protobuf@v3.21.8...v3.21.9)

---
updated-dependencies:
- dependency-name: com.google.protobuf:protobuf-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update changelog

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
…cli (opensearch-project#5102)

* Bump bcpg-fips from 1.0.5.1 to 1.0.7.1 in /distribution/tools/plugin-cli

Bumps bcpg-fips from 1.0.5.1 to 1.0.7.1.

---
updated-dependencies:
- dependency-name: org.bouncycastle:bcpg-fips
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updating SHAs

Signed-off-by: dependabot[bot] <[email protected]>

* Update changelog

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
This branch copies the release notes from 2.4 and removes all the
redundant entries from the changelog on main. All the remaining entries
in the changelog should reflect changes intended for 3.0.

This also adds an FAQ detailing how the changelog should work with our
branching strategy.

Signed-off-by: Andrew Ross <[email protected]>

Signed-off-by: Andrew Ross <[email protected]>
…search-project#5151)

* Allow mmap to use new preview JDK-19 APIs in Apache Lucene 9.4+

Signed-off-by: Andriy Redko <[email protected]>

* Align javadoc release with target compatibility settings

Signed-off-by: Andriy Redko <[email protected]>

Signed-off-by: Andriy Redko <[email protected]>
…t#5158)

The test used an absolute path which is incorrect as it made a platform dependent assumption. This change fixes that.

Signed-off-by: Rabi Panda <[email protected]>

Signed-off-by: Rabi Panda <[email protected]>
…y-azure (opensearch-project#4995)

* Bump azure-storage-blob in /plugins/repository-azure

Bumps [azure-storage-blob](https://github.com/Azure/azure-sdk-for-java) from 12.16.1 to 12.20.0.
- [Release notes](https://github.com/Azure/azure-sdk-for-java/releases)
- [Commits](Azure/azure-sdk-for-java@azure-storage-blob_12.16.1...azure-storage-blob_12.20.0)

---
updated-dependencies:
- dependency-name: com.azure:azure-storage-blob
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updating SHAs

Signed-off-by: dependabot[bot] <[email protected]>

* Update changelog

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
[QA: None]

Signed-off-by: Xiao Cui <[email protected]>

Signed-off-by: Xiao Cui <[email protected]>
…opensearch-project#5104)

* Bump commons-compress from 1.21 to 1.22 in /plugins/ingest-attachment

Bumps commons-compress from 1.21 to 1.22.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updating SHAs

Signed-off-by: dependabot[bot] <[email protected]>

* Update changelog

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
…epository-gcs (opensearch-project#3633)

* Bump opencensus-contrib-http-util in /plugins/repository-gcs

Bumps [opencensus-contrib-http-util](https://github.com/census-instrumentation/opencensus-java) from 0.18.0 to 0.31.1.
- [Release notes](https://github.com/census-instrumentation/opencensus-java/releases)
- [Changelog](https://github.com/census-instrumentation/opencensus-java/blob/master/CHANGELOG.md)
- [Commits](census-instrumentation/opencensus-java@v0.18.0...v0.31.1)

---
updated-dependencies:
- dependency-name: io.opencensus:opencensus-contrib-http-util
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updating SHAs

Signed-off-by: dependabot[bot] <[email protected]>

* Adding missing classes

Signed-off-by: Vacha Shah <[email protected]>

* changelog change

Signed-off-by: Poojita Raj <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Vacha Shah <[email protected]>
Signed-off-by: Poojita Raj <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Vacha Shah <[email protected]>
Co-authored-by: Poojita Raj <[email protected]>
…5168)

This updates the boundary condition in an assertion in two tests in
ShardIndexingPressureConcurrentExecutionTests. I could reliably
reproduce errors here by running:

```
./gradlew ':server:test' -Dtests.iters=10000 --tests "org.opensearch.index.ShardIndexingPressureConcurrentExecutionTests.testReplicaThreadedUpdateToShardLimits"
```

On every error the value that failed was exactly 0.95 and failed the
less than check. The change here is to accept 0.95, and also refactor
the test to give a better error message on failure.

Signed-off-by: Andrew Ross <[email protected]>

Signed-off-by: Andrew Ross <[email protected]>
This change explicitly sets JVM options to  allow security manager.

Signed-off-by: Rabi Panda <[email protected]>

Signed-off-by: Rabi Panda <[email protected]>
…project#5103)

* Bump geoip2 from 3.0.1 to 3.0.2 in /modules/ingest-geoip

Bumps [geoip2](https://github.com/maxmind/GeoIP2-java) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/maxmind/GeoIP2-java/releases)
- [Changelog](https://github.com/maxmind/GeoIP2-java/blob/main/CHANGELOG.md)
- [Commits](maxmind/GeoIP2-java@v3.0.1...v3.0.2)

---
updated-dependencies:
- dependency-name: com.maxmind.geoip2:geoip2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updating SHAs

Signed-off-by: dependabot[bot] <[email protected]>

* modify changelog

Signed-off-by: Poojita Raj <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: Poojita Raj <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Poojita Raj <[email protected]>
The updated changelog process is to include changes intended to be
backported into the `[Unreleased 2.x]` section of the changelog on main.
It should be backported to the 2.x branch so the CHANGELOG.md file
should not be skipped.

Signed-off-by: Andrew Ross <[email protected]>

Signed-off-by: Andrew Ross <[email protected]>
Remove Elasticsearch from HTTP header warning message. Remove unused variables, redundant method calls and simplify conditions.

Signed-off-by: Rabi Panda <[email protected]>

Signed-off-by: Rabi Panda <[email protected]>
Signed-off-by: Andriy Redko <[email protected]>

Signed-off-by: Andriy Redko <[email protected]>
…#5225)

The large data tables necessitating this exclusion were refactored away
a long time ago.

Signed-off-by: Andrew Ross <[email protected]>
)

This change removes code that was written to support rolling upgrade from Elasticsearch 7.10.2 to OpenSearch 1.x, as part of PR opensearch-project#865

Signed-off-by: Rabi Panda <[email protected]>

Signed-off-by: Rabi Panda <[email protected]>
The change made in AbstractPointGeometryFieldMapper class
with commit 0503897 introduced
a performace degradation during point data indexing. Reverting it therefore.

The change is about consolidating array format parsing code for point type in a single place to acheive following benefits.
1. Allow plugins to override array parsing logic. Plugins can add its own parsing logic for point field by providing object parser. However, it cannot override array format. Therefore, plugin have to use whatever implemented in AbstractPointGeometryFieldMapper class.
2. Enhanced code quality by removing duplicated code

There is no change in functionality because 1. There is no change in functionality in OpenSearch and 2. No plugins have its own parsing logic for point data in array format yet.

Signed-off-by: Heemin Kim <[email protected]>
@heemin32 heemin32 requested review from a team and reta as code owners November 15, 2022 03:38
@heemin32 heemin32 closed this Nov 15, 2022
@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

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.