Coder Social home page Coder Social logo

opensearch-project / opensearch Goto Github PK

View Code? Open in Web Editor NEW
8.7K 141.0 1.6K 557.42 MB

๐Ÿ”Ž Open source distributed and RESTful search engine.

Home Page: https://opensearch.org/docs/latest/opensearch/index/

License: Apache License 2.0

Shell 0.05% Emacs Lisp 0.01% Java 99.56% Groovy 0.33% FreeMarker 0.01% Python 0.01% Dockerfile 0.01% Batchfile 0.02% ANTLR 0.01% HTML 0.01% Standard ML 0.01%
search search-engine analytics java foss apache2 hacktoberfest

opensearch's Introduction

Chat Documentation Code Coverage Untriaged Issues Security Vulnerabilities Open Issues Open Pull Requests 2.14.0 Open Issues 3.0.0 Open Issues GHA gradle check GHA validate pull request GHA precommit Jenkins gradle check job

Welcome!

OpenSearch is a community-driven, open source fork of Elasticsearch and Kibana following the license change in early 2021. We're looking to sustain (and evolve!) a search and analytics suite for the multitude of businesses who are dependent on the rights granted by the original, Apache v2.0 License.

Project Resources

Code of Conduct

This project has adopted the Amazon Open Source Code of Conduct. For more information see the Code of Conduct FAQ, or contact [email protected] with any additional questions or comments.

Security

If you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via our vulnerability reporting page or directly via email to [email protected]. Please do not create a public GitHub issue.

License

This project is licensed under the Apache v2.0 License.

Copyright

Copyright OpenSearch Contributors. See NOTICE for details.

Trademark

OpenSearch is a registered trademark of Amazon Web Services.

OpenSearch includes certain Apache-licensed Elasticsearch code from Elasticsearch B.V. and other source code. Elasticsearch B.V. is not the source of that other source code. ELASTICSEARCH is a registered trademark of Elasticsearch B.V.

opensearch's People

Contributors

bleskes avatar cbuescher avatar clintongormley avatar colings86 avatar dadoonet avatar dakrone avatar davecturner avatar dimitris-athanasiou avatar dnhatn avatar droberts195 avatar imotov avatar jasontedor avatar javanna avatar jaymode avatar jimczi avatar jpountz avatar jrodewig avatar kimchy avatar lcawl avatar martijnvg avatar nik9000 avatar nknize avatar original-brownbear avatar rjernst avatar rmuir avatar s1monw avatar spinscale avatar talevy avatar tlrx avatar ywelsch avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

opensearch's Issues

Fork or replace elasticsearch dependencies

The elasticsearch build relies on the following libraries independently built by elastic.co:

This issue is to track the tasks needed to fork into the following repos:

  • Mirror fork JNA
  • Mirror fork Secure Mock
  • Mirror fork MockSocket

Update the OpenSearch build files for these dependencies

  • server/build.gradle
  • client/rest/build.gradle
  • client/sniffer/build.gradle
  • gradle/local-distribution.gradle
  • test/framework/build.gradle

Remove the exclusions for thirdPartyAudit task

[TEST] Failure in DeleteDataStreamRequestTests.testDeleteSnapshottingDataStream

REPRODUCE WITH: ./gradlew ':server:test' --tests "org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamRequestTests.testDeleteSnapshottingDataStream" -Dtests.seed=65BD490888695D90 -Dtests.security.manager=true -Dtests.locale=fi-FI -Dtests.timezone=ECT -Druntime.java=15
org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamRequestTests > testDeleteSnapshottingDataStream FAILED
    java.lang.AssertionError: Completed state must imply all shards completed but saw state [STARTED] and shards []
        at __randomizedtesting.SeedInfo.seed([65BD490888695D90:D53C2793DCBE4BFB]:0)
        at org.elasticsearch.cluster.SnapshotsInProgress$Entry.assertShardsConsistent(SnapshotsInProgress.java:252)
        at org.elasticsearch.cluster.SnapshotsInProgress$Entry.<init>(SnapshotsInProgress.java:191)
        at org.elasticsearch.cluster.SnapshotsInProgress$Entry.<init>(SnapshotsInProgress.java:163)
        at org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamRequestTests.createEntry(DeleteDataStreamRequestTests.java:140)
        at org.elasticsearch.action.admin.indices.datastream.DeleteDataStreamRequestTests.testDeleteSnapshottingDataStream(DeleteDataStreamRequestTests.java:125)

Release Process and Versioning

What is our release cadence

Going forward, we will try encouraging a time based โ€œrelease trainโ€ model with a process that is similar to, but slightly modified, the Apache way of releasing (e.g., Luceneโ€™s release process). This means we strive to have regularly scheduled and loosely planned releases which provides a sense of โ€œpredictabilityโ€ for our customer base. To minimize merge conflicts, and to keep the team in sync, this approach requires โ€œfeature freezesโ€ selected by a volunteer Release Manager (RM) indicating the cut-off time a feature Pull Request (PR) is opened and ready to go for review and inclusion in the release. If the feature is not ready, then the train leaves without you and youโ€™ll have to catch the next one. Here is a general outline of the process for a major / minor release:

  1. A committer volunteers to be a release manager (or an email is sent requesting a volunteer) and initiates the process by sending an email to the committer list of intent to release the next version (to facilitate discussion and feedback)
  2. The RM then proposes a โ€œfeature freezeโ€ date (and intent to cut the branch).
    1. initial email also requests all committers begin marking โ€œblockerโ€ issues preventing a successful release
  3. 24 hours prior to feature freeze (cutting the branch):
    1. RM sends a โ€œfinal noticeโ€œ email and request to ensure all blockers are identified (some may be fixed by then).
  4. On day of feature freeze:
    1. RM sends a โ€œfeature freezeโ€ notice email that the branching is underway and no more PRs should be merged.
    2. RM branches from the .x branch into a new .m+1 branch. (.x is now the next minor)
    3. RM sends a โ€œbranching completeโ€ email that the branch has been cut and a reminder of the release date requesting all blockers be cleared in time of the release
  5. 24 Hours prior to release:
    1. RM sends a โ€œfinal noticeโ€ for blockers email; also requesting a โ€œspeak now or forever hold your peaceโ€ on critical blockers. If something is holding up the release a postponed release may occur.
  6. On Day of Release:
    1. RM tags the branch with the release version
    2. RM begins building and signing artifacts
    3. RM stages artifacts to maven repo
    4. an email is sent once artifacts are published requesting a quorum vote which includes committers run smoke tests on the staged artifacts;
    5. RM sums votes
    6. RM publishes tested artifacts

What model of versioning will be used?

Starting with our new Forks, we will start using semantic versioning based on Apacheโ€™s model.

From Apacheโ€™s versioning doc :

A release number is comprised of 3 components: the major release number, the minor release number, and an optional point release number. Here is a sample release number:
2.0.4
and it can be broken into three parts:

* major release: 2
* minor release: 0
* point release: 4

The next release of this component would increment the appropriate part of the release number, depending on the type of release (major, minor, or point). For example, a subsequent minor release would be version 2.1, or a subsequent major release would be 3.0.
Note that release numbers are composed of three integers, not three digits. Hence if the current release is 3.9.4, the next minor release is 3.10.0.

How will OpenSearch and OpenSearch-Dashboards versions be related to each other?

NotKibana and NotElasticsearch will release major version together. They will NOT synchronize minor release โ€” whenever the team feels theyโ€™re ready to release a minor version or patch (modulo the schedule above), they should release.

What we guarantee is that any major release of NotKibana is compatible with the same major release of NotElasticserach. For example: 3.2.1 of NotKibana will work with 3.0.4 of NotElasticsearch, but 2.3.1 of NotKibana is not guaranteed to work with 3.0.4 of NotElasticsearch

Breaking Changes and Backwards Compatibility

We will not release any breaking changes except in major releases.

How will plug-in versioning work?

All Plug-ins for NotKibana and NotElasticsearch should use the same style of Apache versioning. However, going forward we should plan for plug-ins to be truly standalone pieces of software that can be released separately from notKibana or NotElasticsearch within a major version. We will therefore not enforce the same semantic versioning of guaranteed compatibility within major versions as we do with NotKibana and NotElasticsearch. Each plug-in team is free to create / maintain a compatibility matrix if it makes sense for that plug-in team.

However, practically for the plug-ins that ODFE owns, we may choose to release on the same cadence as notKibana until we are at a state that they can practically release on their own.

We will also consider making the plugin incubation process as easy as possible for the community. For example, we will explore ways of adding gradle or npm tasks that automatically generate a boilerplate plugin project (e.g., ./gradlew newPlugin myNotESPlugin) that set the default starting version as 0.0.0 and uses the same compatibility version of NotES or NotKibana as the one being used to generate the plugin.

[TEST] Packaging Test Failures

The qa directory contains tests which run against several operating systems. This Issue lists the current test failures.

Task: ./gradlew packagingTest

  • org.elasticsearch.packaging.test.CronEvalCliTests > test10Install FAILED

[PURIFY] Remove `Default` distribution and only create OSS distribution.

The Default distribution is governed by Elastic license and hence needs to be removed and only create OSS distribution.

Clean up distribution (@setiah)

PR: #102 #103 #110

Test with failures

  • DistributionDownloadPluginFuncTest. bwc version can be resolved
  • DistributionDownloadPluginFuncTest. current version can be resolved
  • DistributionDownloadPluginFuncTest. released version can be resolved
  • DistributionDownloadPluginFuncTest. transformed versions are kept across builds
  • DistributionDownloadPluginFuncTest. transforms are reused across projects
  • TestClustersPluginFuncTest. custom distro folder created for tweaked cluster distribution
  • TestClustersPluginFuncTest. test cluster distribution is configured and started
  • InternalDistributionBwcSetupPluginFuncTest. builds distribution from branches via archives assemble
  • InternalDistributionBwcSetupPluginFuncTest. bwc distribution archives can be resolved as bwc project artifact
  • InternalDistributionBwcSetupPluginFuncTest. bwc expanded distribution folder can be resolved as bwc project artifact
  • InternalDistributionDownloadPluginFuncTest. resolves current version from local build
  • InternalDistributionDownloadPluginFuncTest. resolves expanded bwc versions from source

Remove Flavor Enums (@adnapibar)

  • remove the Flavor support
  • remove -oss flag dependencies in package and build tests

PR: #104

Test with failures

./gradlew ':qa:rolling-upgrade:v6.8.15#oneThirdUpgradedTest'

  • org.elasticsearch.upgrades.IndexingIT.testIndexing
  • org.elasticsearch.upgrades.RecoveryIT.testUpdateDoc
  • org.elasticsearch.upgrades.RecoveryIT.testSoftDeletesDisabledWarning
  • org.elasticsearch.upgrades.RecoveryIT.testRelocationWithConcurrentIndexing
  • org.elasticsearch.upgrades.RecoveryIT.testAutoExpandIndicesDuringRollingUpgrade
  • org.elasticsearch.upgrades.RecoveryIT.testRetentionLeasesEstablishedWhenPromotingPrimary
  • org.elasticsearch.upgrades.RecoveryIT.testRecoveryWithConcurrentIndexing
  • org.elasticsearch.upgrades.RecoveryIT.testCloseIndexDuringRollingUpgrade

./gradlew ':qa:mixed-cluster:v6.8.15#mixedClusterTest'

  • org.elasticsearch.backwards.IndexingIT.testUpdateSnapshotStatus
  • org.elasticsearch.backwards.IndexingIT.testIndexVersionPropagation
  • org.elasticsearch.backwards.MixedClusterClientYamlTestSuiteIT

Clean up buildSrc (@setiah)

  • Remove logic to check the distribution flavor and make the OSS as the only option.

IT Failure "testSearchWithBasicLicensedQuery"

2> REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.SearchIT.testSearchWithBasicLicensedQuery" -Dtests.seed=F3C6E01D8FF57C4A -Dtests.security.manager=true -Dtests.locale=is-IS -Dtests.timezone=America/Paramaribo -Druntime.java=15
2> java.lang.AssertionError:
Expected: searchHit id should be "2"
but: was "1"
at __randomizedtesting.SeedInfo.seed([F3C6E01D8FF57C4A:73E39BD27A759E44]:0)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:18)
at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:6)
at org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertSearchHit(ElasticsearchAssertions.java:303)
at org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertFirstHit(ElasticsearchAssertions.java:284)
at org.elasticsearch.client.SearchIT.testSearchWithBasicLicensedQuery(SearchIT.java:1389)
1> [2021-02-08T17:40:34,366][INFO ][o.e.c.SearchIT ] [testSearchWithRangeAgg] before test
2> feb. 08, 2021 5:40:36 PM org.elasticsearch.client.RestClient logResponse

[DOCS] Test failure in DocsClientYamlTestSuiteIT

Introduction to the test

Code snippets in the documents (especially in docs/reference) are tested by this class.
Can be excuted by Gradle task ./gradlew :docs:integTest

The work is being done in oss-docs branch

To skip a code snippets being tested, we can exclude the file here:
https://github.com/opendistro-for-elasticsearch/search/blob/ab65227510d51cdefd68988b296325f92dad71a3/docs/build.gradle#L85

Test failures

Step to reproduce:
All tests: Running ./gradlew check or ./gradlew :docs:integTest
Specific test: such as running ./gradlew ':docs:integTest' --tests "org.elasticsearch.smoketest.DocsClientYamlTestSuiteIT.test {yaml=reference/release-notes/highlights/line_162}"

Update:
[02/17/2021] There are solutions for all the tests, but to be reviewed.

Reason for the failure

  • Related to "Data Streams" feature
  1. API usage of "ILM":
    Can be fixed by removing _ilm API uses in the code snippets.
    The fix in "oss-docs" branch: 8ae568c
DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/ ...}
DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/set-up-a-data-stream/ ...}
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/get-data-stream/ ...}
Caused by: java.lang.AssertionError: expected [2xx] status code but api [raw[method=PUT path=_ilm/policy/my-data-stream-policy]] returned [400 Bad Request] [{"error":{"root_cause":[{"type":"invalid_index_name_exception","reason":"Invalid index name [_ilm], must not start with '_', '-', or '+'","index_uuid":"_na_","index":"_ilm","stack_trace":"[_ilm] InvalidIndexNameException[Invalid index name [_ilm], must not start with '_', '-', or '+']\n ...
  1. "no _data_stream meta field mapper"
    Can be solved by partially reverting elastic/elasticsearch@40b9fd4 :
    Adding DataStreamTimestampFieldMapper.java back.
    Adding builtInMetadataMappers.put(DataStreamTimestampFieldMapper.NAME, DataStreamTimestampFieldMapper.PARSER); back to IndicesModule.java
    The experimental fix in "oss-docs" branch: 49ad8de
    (the following commits are used to fix the tests outside docs directory by keep reverting codes from above Elastic's commit: 0efae0a b863060 87b1932 6046a41 )
    [update on 03/11/2021 - the final solution is to remove Data Stream from the documents, related PRs: #150 #226 #287]
DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/ ...} 
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/create-data-stream/line_14} 
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/data-stream-stats/ ...}
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/delete-data-stream/line_25} 
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/put-index-template/line_301} 
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/rollover-index/line_231} 
Caused by: java.lang.AssertionError: expected [2xx] status code but api [raw[method=PUT path=_index_template/my-data-stream-template]] returned [400 Bad Request] [{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"composable template [my-data-stream-template] template after composition is invalid","stack_trace":"[composable template [my-data-stream-template] template after composition is invalid]; nested: IllegalArgumentException[composable template [my-data-stream-template] template after composition is invalid]; nested: XContentParseException[[index_template] unknown field [data_stream]];

https://github.com/opendistro-for-elasticsearch/search/blob/7114dd3d8c1e20c44358e03a78d9170578711eb4/server/src/main/java/org/elasticsearch/cluster/metadata/MetadataIndexTemplateService.java#L1125

  • "x-pack" contents to be removed
  1. index.routing.allocation.include._tier_preference
    Can be fixed by reverting the docs updates in the commit elastic/elasticsearch@1bfebd5
    The fix in "oss-docs" branch: 52d87eb 5b8c6c2
DocsClientYamlTestSuiteIT. test {yaml=reference/api-conventions/line_404}
DocsClientYamlTestSuiteIT. test {yaml=reference/api-conventions/line_435} 
DocsClientYamlTestSuiteIT. test {yaml=reference/migration/migrate_7_0/api/line_41} 
Caused by: java.lang.AssertionError: $body didn't match expected value:
                         $body: 
                 my-index-000001: 
                          settings: 
                 index.creation_date: same [1613368525450]
            index.number_of_replicas: same [1]
              index.number_of_shards: same [1]
                 index.provided_name: same [my-index-000001]
      index.routing.allocation.include._tier_preference: expected [data_content] but not found
                          index.uuid: same [ac0pdW0ATsqIGy7wgzSu8A]
               index.version.created: same [7100399]
  1. Freeze index
    Can be fixed by removing the use of freeze index API
    The fix in "oss-docs" branch: 32b8f37
DocsClientYamlTestSuiteIT. test {yaml=reference/indices/resolve/line_50} 
Caused by: java.lang.AssertionError: expected [2xx] status code but api [raw[method=POST path=freeze-index/_freeze]] returned [400 Bad Request] [{"error":{"root_cause":[{"type":"parse_exception","reason":"request body is required","stack_trace":"ElasticsearchParseException[request body is required] ...
  1. Point in time API
DocsClientYamlTestSuiteIT. test {yaml=reference/release-notes/highlights/line_129} 
DocsClientYamlTestSuiteIT. test {yaml=reference/release-notes/highlights/line_162} 
DocsClientYamlTestSuiteIT. test {yaml=reference/search/search-your-data/paginate-search-results/line_178}
DocsClientYamlTestSuiteIT. test {yaml=reference/search/search-your-data/paginate-search-results/line_55} 

For the first two, can be fixed by removing the description of PIT from release highlights for ES 7.10.
For the last two, can be fixed by reverting the docs before PIT is introduced (elastic/elasticsearch@1b51acb).
The fix in "oss-docs" branch: 79fdaaf 025219f

Caused by: java.lang.AssertionError: expected [2xx] status code but api [raw[method=POST path=my-index-000001/_pit]] returned [400 Bad Request] [{"error":{"root_cause":[{"type":"parse_exception","reason":"request body is required","stack_trace":"ElasticsearchParseException[request body is required] ...
  1. EQL
    Can be fixed by removing the description of EQL from release highlights for ES 7.10.
    The fix in "oss-docs" branch: 79fdaaf
DocsClientYamlTestSuiteIT. test {yaml=reference/release-notes/highlights/line_203} 
Caused by: java.lang.AssertionError: expected [2xx] status code but api [raw[method=GET path=my-index-000001/_eql/search]] returned [404 Not Found] [{"_index":"my-index-000001","_type":"_eql","_id":"search","found":false}]
  1. "Constant Keyword" field
    Can be fixed by removing the paragraphs by reverting the changes in elastic/elasticsearch@cb868d2
    The fix in "oss-docs" branch: 76008d5
DocsClientYamlTestSuiteIT. test {yaml=reference/how-to/search-speed/line_447} 
Caused by: java.lang.AssertionError: expected [2xx] status code but api [raw[method=PUT path=bicycles]] returned [400 Bad Request] [{"error":{"root_cause":[{"type":"mapper_parsing_exception","reason":"No handler for type [constant_keyword] declared on field [cycle_type]","stack_trace":"MapperParsingException[No handler for type [constant_keyword] declared on field [cycle_type]]\n\tat org.elasticsearch.index.mapper.ObjectMapper$TypeParser.parseProperties(ObjectMapper.java:314) ...
  • Keystore password unset for oss distribution
    Can be fixed by setting keystorepassword in build script even for "oss" distribution, which is only set for "default" distribution.
    The fix in "oss-docs" branch: 57a9992 (only the first line of code change in the commit)
DocsClientYamlTestSuiteIT. test {yaml=reference/cluster/nodes-reload-secure-settings/line_63} 
Caused by: java.lang.AssertionError: $body didn't match expected value:
                         $body: 
                          _nodes: 
                            failed: same [0]
                        successful: same [1]
                             total: same [1]
                    cluster_name: same [integTest]
                           nodes: 
            5FH51NZASVuQstuRK3I-FA: 
                                name: same [node-0]
                    reload_exception: unexpected but found [{type=security_exception, reason=Provided keystore password was incorrect, caused_by={type=i_o_exception, reason=javax.crypto.AEADBadTagException: Tag mismatch!, caused_by={type=a_e_a_d_bad_tag_exception, reason=Tag mismatch!}}}]

Appendix: all failures in the generated test report

    DocsClientYamlTestSuiteIT. test {yaml=reference/api-conventions/line_404}
    DocsClientYamlTestSuiteIT. test {yaml=reference/api-conventions/line_435}
    DocsClientYamlTestSuiteIT. test {yaml=reference/cluster/nodes-reload-secure-settings/line_63}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_128}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_149}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_182}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_217}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_243}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_287}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_312}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_341}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_396}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_443}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_495}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_516}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_544}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_592}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_616}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_647}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_669}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/change-mappings-and-settings/line_99}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/set-up-a-data-stream/line_31}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_110}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_122}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_138}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_146}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_162}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_206}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_231}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_257}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_321}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_335}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_345}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_60}
    DocsClientYamlTestSuiteIT. test {yaml=reference/data-streams/use-a-data-stream/line_80}
    DocsClientYamlTestSuiteIT. test {yaml=reference/how-to/search-speed/line_447}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/create-data-stream/line_14}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/data-stream-stats/line_173}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/data-stream-stats/line_51}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/delete-data-stream/line_25}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/get-data-stream/line_190}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/get-data-stream/line_65}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/put-index-template/line_301}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/resolve/line_50}
    DocsClientYamlTestSuiteIT. test {yaml=reference/indices/rollover-index/line_231}
    DocsClientYamlTestSuiteIT. test {yaml=reference/migration/migrate_7_0/api/line_41}
    DocsClientYamlTestSuiteIT. test {yaml=reference/release-notes/highlights/line_129}
    DocsClientYamlTestSuiteIT. test {yaml=reference/release-notes/highlights/line_162}
    DocsClientYamlTestSuiteIT. test {yaml=reference/release-notes/highlights/line_203}
    DocsClientYamlTestSuiteIT. test {yaml=reference/search/search-your-data/paginate-search-results/line_178}
    DocsClientYamlTestSuiteIT. test {yaml=reference/search/search-your-data/paginate-search-results/line_55}

Remove ReloadSearchAnalyzers

ReloadSearchAnalyzers code is removed as part of x-pack removal but some code outside of x-pack still lingers and causes test failures. relates to #23

[DOCS] Fix failures in :docs:integTest

Issues

  • unknown setting [script.painless.regex.enabled]
  • unknown setting [reindex.remote.whitelist]

More details

> Task :docs:integTest FAILED

=== Standard output of node `node{:docs:integTest-0}` ===

ยป    โ†“ errors and warnings from /home/ubuntu/search/docs/build/testclusters/integTest-0/logs/es.stdout.log โ†“
ยป ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-0] uncaught exception in thread [main]
ยป  org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException: unknown setting [script.painless.regex.enabled] please check that any required plugins are installed, or check the breaking changes documentation for removed settings
ยป       at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:173) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:160) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:127) ~[elasticsearch-cli-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:126) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป  Caused by: java.lang.IllegalArgumentException: unknown setting [script.painless.regex.enabled] please check that any required plugins are installed, or check the breaking changes documentation for removed settings
ยป       at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:544) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:489) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:460) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:431) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.common.settings.SettingsModule.<init>(SettingsModule.java:149) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.node.Node.<init>(Node.java:405) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.node.Node.<init>(Node.java:289) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:227) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:227) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:393) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:169) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป       ... 6 more
ยป       Suppressed: java.lang.IllegalArgumentException: unknown setting [reindex.remote.whitelist] please check that any required plugins are installed, or check the breaking changes documentation for removed settings
ยป               at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:544) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:489) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:460) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.common.settings.AbstractScopedSettings.validate(AbstractScopedSettings.java:431) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.common.settings.SettingsModule.<init>(SettingsModule.java:149) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.node.Node.<init>(Node.java:405) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.node.Node.<init>(Node.java:289) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:227) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:227) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:393) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:169) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:160) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:127) ~[elasticsearch-cli-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:126) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป               at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-7.10.3-SNAPSHOT.jar:7.10.3-SNAPSHOT]
ยป   โ†“ last 40 non error or warning messages from /home/ubuntu/search/docs/build/testclusters/integTest-0/logs/es.stdout.log โ†“

[TEST] AnalyticsAggsIT

The Analytics plugin is licensed XPack. The transport layer still exists in the High Level Rest Client and will need to be removed. Below are the current failures:

REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsDateMetric" -Dtests.seed=FBFA40BE0110C5D2 -Dtests.security.manager=true -Dtests.locale=pl -Dtests.timezone=Etc/GMT-10 -Druntime.java=15
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.analytics.AnalyticsAggsIT.testStringStats" -Dtests.seed=FBFA40BE0110C5D2 -Dtests.security.manager=true -Dtests.locale=pl -Dtests.timezone=Etc/GMT-10 -Druntime.java=15
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsManyMetrics" -Dtests.seed=FBFA40BE0110C5D2 -Dtests.security.manager=true -Dtests.locale=pl -Dtests.timezone=Etc/GMT-10 -Druntime.java=15
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsLongMetric" -Dtests.seed=FBFA40BE0110C5D2 -Dtests.security.manager=true -Dtests.locale=pl -Dtests.timezone=Etc/GMT-10 -Druntime.java=15
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsDoubleMetric" -Dtests.seed=FBFA40BE0110C5D2 -Dtests.security.manager=true -Dtests.locale=pl -Dtests.timezone=Etc/GMT-10 -Druntime.java=15
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsSizeTwo" -Dtests.seed=FBFA40BE0110C5D2 -Dtests.security.manager=true -Dtests.locale=pl -Dtests.timezone=Etc/GMT-10 -Druntime.java=15

Four 'rest-api-spec:yamlRestTest' failures

Below are 4 failed rest-api-spec:yamlRestTest and can be reproduced with below commands:

./gradlew ':rest-api-spec:yamlRestTest' --tests "org.elasticsearch.test.rest.ClientYamlTestSuiteIT.test {p0=mget/71_source_filtering_with_types/Source filtering - exclude field}" -Dtests.seed=359B040C58EE47C -Dtests.security.manager=true -Dtests.locale=es-MX -Dtests.timezone=SystemV/PST8PDT -Druntime.java=15
./gradlew ':rest-api-spec:yamlRestTest' --tests "org.elasticsearch.test.rest.ClientYamlTestSuiteIT" -Dtests.seed=359B040C58EE47C -Dtests.security.manager=true -Dtests.locale=en-US -Dtests.timezone=America/Los_Angeles -Druntime.java=15
./gradlew ':rest-api-spec:yamlRestTest' --tests "org.elasticsearch.test.rest.ClientYamlTestSuiteIT.test {p0=index/40_routing/Routing}" -Dtests.seed=AF83954A00A80DCB -Dtests.security.manager=true -Dtests.locale=ro -Dtests.timezone=Etc/GMT-3 -Druntime.java=15
./gradlew ':rest-api-spec:yamlRestTest' --tests "org.elasticsearch.test.rest.ClientYamlTestSuiteIT.test {p0=search/160_exists_query/Test exists query on _index field}" -Dtests.seed=AF83954A00A80DCB -Dtests.security.manager=true -Dtests.locale=ro -Dtests.timezone=Etc/GMT-3 -Druntime.java=15

[TEST FAILURE] 3 Bwc test failures in IntegTests

Failures

InternalDistributionBwcSetupPluginFuncTest. builds distribution from branches via archives assemble
InternalDistributionBwcSetupPluginFuncTest. bwc distribution archives can be resolved as bwc project artifact
InternalDistributionBwcSetupPluginFuncTest. bwc expanded distribution folder can be resolved as bwc project artifact

Reproduce by ./gradlew check

Platform

------------------------------------------------------------
Gradle 6.6.1
------------------------------------------------------------

Build time:   2020-08-25 16:29:12 UTC
Revision:     f2d1fb54a951d8b11d25748e4711bec8d128d7e3

Kotlin:       1.3.72
Groovy:       2.5.12
Ant:          Apache Ant(TM) version 1.10.8 compiled on May 10 2020
JVM:          14 (Oracle Corporation 14+36-1461)
OS:           Mac OS X 10.14.6 x86_64

Remove UnusedImports after x-pack feature flag removed from yaml test

Some unused imports need to be removed after the commit a40924f which removed x-pack feature flag from yaml test

* What went wrong:
Execution failed for task ':test:framework:checkstyleMain'.
> Checkstyle rule violations were found.
  Checkstyle files with violations: 2
  Checkstyle violations by severity: [error:5]
> Task :test:framework:checkstyleMain FAILED
[ant:checkstyle] [ERROR] /home/ftianli/github/search/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java:25:8: Unused import - org.apache.http.client.methods.HttpGet. [UnusedImports]
[ant:checkstyle] [ERROR] /home/ftianli/github/search/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java:32:8: Unused import - org.apache.logging.log4j.message.ParameterizedMessage. [UnusedImports]
[ant:checkstyle] [ERROR] /home/ftianli/github/search/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java:105:15: Unused import - org.hamcrest.Matchers.containsString. [UnusedImports]
[ant:checkstyle] [ERROR] /home/ftianli/github/search/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java:109:15: Unused import - org.hamcrest.Matchers.notNullValue. [UnusedImports]
[ant:checkstyle] [ERROR] /home/ftianli/github/search/test/framework/src/main/java/org/elasticsearch/test/rest/yaml/Features.java:23:8: Unused import - org.elasticsearch.test.rest.ESRestTestCase. [UnusedImports]

Remove Elastic repo urls from DistributionDownloadPlugin

These URLs are used for setting up download service.

    private static void setupDownloadServiceRepo(Project project) {
        if (project.getRepositories().findByName(DOWNLOAD_REPO_NAME) != null) {
            return;
        }

        //TODO: remove
        addIvyRepo(project, DOWNLOAD_REPO_NAME, "https://artifacts-no-kpi.elastic.co", FAKE_IVY_GROUP);
        addIvyRepo(project, SNAPSHOT_REPO_NAME, "https://snapshots-no-kpi.elastic.co", FAKE_SNAPSHOT_IVY_GROUP);
    }
  • Ivy repository for releases
  • Ivy repository for snapshots

client:rest-high-level:checkstyleTest FAILED

Task :client:rest-high-level:checkstyleTest FAILED
[ant:checkstyle] [ERROR] /home/ubuntu/search/client/rest-high-level/src/test/java/org/elasticsearch/client/SearchIT.java:98:15: Unused import - org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertFirstHit. [UnusedImports]
[ant:checkstyle] [ERROR] /home/ubuntu/search/client/rest-high-level/src/test/java/org/elasticsearch/client/SearchIT.java:99:15: Unused import - org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertSecondHit. [UnusedImports]
[ant:checkstyle] [ERROR] /home/ubuntu/search/client/rest-high-level/src/test/java/org/elasticsearch/client/SearchIT.java:101:15: Unused import - org.elasticsearch.test.hamcrest.ElasticsearchAssertions.hasId. [UnusedImports]

[PURIFY] Remove all trace of XPack code from High Level Rest Client

This meta issue tracks removal of references of Elastic licensed classes from the client/high-level-rest module.

ClientYamlTestSuiteIT test case failure

Task :rest-api-spec:yamlRestTest

REPRODUCE WITH: ./gradlew ':rest-api-spec:yamlRestTest' --tests "org.elasticsearch.test.rest.ClientYamlTestSuiteIT" -Dtests.method="test {p0=cat.templates/10_basic/Sort templates}" -Dtests.seed=923C938CF01174A6 -Dtests.security.manager=true -Dtests.locale=tr-TR -Dtests.timezone=Asia/Bahrain -Druntime.java=15

org.elasticsearch.test.rest.ClientYamlTestSuiteIT > test {p0=cat.templates/10_basic/Sort templates} FAILED
java.lang.AssertionError: Failure at [cat.templates/10_basic:230]: field [$body] was expected to match the provided regex but didn't
Expected: ^
test \s+ [t*] \s+ \n \n
test_1 \s+ [te*] \s+ 1 \n \n
$
but: was "test [t*] \ntest_1 [te*] 1\n"
at __randomizedtesting.SeedInfo.seed([923C938CF01174A6:1A68AC565EED195E]:0)
at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:414)
at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.test(ESClientYamlSuiteTestCase.java:391)
at jdk.internal.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1750)
at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:938)
at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:974)
at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:988)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:49)
at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:817)
at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:468)
at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:947)
at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:832)
at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:883)
at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:894)
at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:41)
at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)
at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:54)
at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
at java.base/java.lang.Thread.run(Thread.java:832)

    Caused by:
    java.lang.AssertionError: field [$body] was expected to match the provided regex but didn't
    Expected: ^
        test   \s+ \[t\*\]  \s+   \n \n
        test_1 \s+ \[te\*\] \s+ 1 \n \n
    $
         but: was "test   [t*]  \ntest_1 [te*] 1\n"
        at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:18)
        at org.junit.Assert.assertThat(Assert.java:956)
        at org.elasticsearch.test.rest.yaml.section.MatchAssertion.doAssert(MatchAssertion.java:68)
        at org.elasticsearch.test.rest.yaml.section.Assertion.execute(Assertion.java:76)
        at org.elasticsearch.test.rest.yaml.ESClientYamlSuiteTestCase.executeSection(ESClientYamlSuiteTestCase.java:407)
        ... 36 more

Search Benchmark testing

Here is some information collected for search benchmark test:
1> macrobenchmarking framework
https://github.com/elastic/rally

2> Elasticsearch Microbenchmark Suite
https://github.com/opendistro-for-elasticsearch/search/tree/main/benchmarks

3> Mensor
https://prod.mensor.searchservices.aws.dev/

4> benchmarks from elastic co
https://elasticsearch-benchmarks.elastic.co/#tracks/pmc/nightly/default
./gradlew -p benchmarks run --args ' MemoryStatsBenchmark'
./gradlew -p benchmarks run --args ' AvailableIndexFoldersBenchmark'
./gradlew -p benchmarks run --args ' AllocationBenchmark'
./gradlew -p benchmarks run --args ' DateFormatterBenchmark'
./gradlew -p benchmarks run --args ' DateFormatterFromBenchmark'
./gradlew -p benchmarks run --args ' LongKeyedBucketOrdsBenchmark'
./gradlew -p benchmarks run --args ' StringTermsSerializationBenchmark'
./gradlew -p benchmarks run --args ' TermsReduceBenchmark'
./gradlew -p benchmarks run --args ' RoundingBenchmark'
Run above 9 benchmark test, did not see obvious performance issue vs search with x-pact so far.
It takes much longer time to run benchmark performance test with x-pact.
5>Benchmark with Erally
https://dzone.com/articles/benchmarking-elasticsearch-with-rally

REST API x_pack user name and password update

public class DockerYmlTestSuiteIT extends ESClientYamlSuiteTestCase {

private static final String USER = "x_pack_rest_user";
private static final String PASS = "x-pack-test-password";

Above x_pact prefix should be removed.

Remove elastic.co related link docs

Remove elastic.co related link docs in RestHighLevelClient.java and others.

/**
* Asynchronously deletes a document by id using the Delete API.
* See Delete API on elastic.co
* @param deleteRequest the request
* @param options the request options (e.g. headers), use {@link RequestOptions#DEFAULT} if nothing needs to be customized
* @param listener the listener to be notified upon request completion
* @return cancellable that may be used to cancel the request
*/
public final Cancellable deleteAsync(DeleteRequest deleteRequest, RequestOptions options, ActionListener listener) {
return performRequestAsyncAndParseEntity(deleteRequest, RequestConverters::delete, options, DeleteResponse::fromXContent, listener,
Collections.singleton(404));
}

Update version info in vesion.properties

These information needs update in
build-boolstrap/version.properties
buildSrc/version.properties
main/version.properties

elasticsearch=7.10.3-SNAPSHOT
elasticsearch = 7.10.3

Otherwise it will shows up in logs.

Marking files with licensing information

To make sure we're being fully transparent about the licensing, we want to mark all the files in repo with the correct licensing attribution.

To do this, we want to go through the code base and ensure that each source code file is clearly marked with the licensing (and copyright attribution) in comment headers at the top using SPDX (https://spdx.github.io/spdx-spec/appendix-V-using-SPDX-short-identifiers-in-source-files/)

Any file that does not already have an attribution, add:

SPDX-License-Identifier: Apache-2.0

If you find any files that have attribution other than apache-2.0, please flag them.

CI for search

  • Add a CI workflow to run for every commit on search #35
  • Run unit tests and integration tests in CI
  • Remove github actions CI
  • Remove Elastic CI references (running on elastic jenkins)

Add rest-api-specs for data stream APIs

The test org.elasticsearch.client.RestHighLevelClientTests.testApiNamingConventions fails as it is not able to find the rest api specs for the data stream hlrc APIs. The specs were part of x-pack and have been removed.

We need to add specs for these APIs by reverting the changes in fe12217

Separate backwards compatibility testing in CI workflow

In the ./gradlew check process the build tasks for backwards compatibility of the previous version of elasticsearch are run. During CI runs it would be better to block this part of the workflow until after the more basic tests are run.

[QUESTION] Consider reverting RefreshPolicy to HLRC

All the usage of withRefresh() has been removed in the commit 4d4f198 (remove all trace of x-pack security), and the code used for parsing the refresh parameter in High Level Rest Client. Probably we could bring it back.

Reason
Also written in my comment 4d4f198#r46835616.

  1. "refresh" parameter is used in Get and Get Source API, etc.

  2. The related code RefreshPolicy exists outside "x-pack" folder. Although Elasticsearch added a client side version of enum RefreshPolicy in Hight-Level-Rest-Client under x-pack "security" package (by commit elastic/elasticsearch@f063587 ), it is nearly a copy of the original server side enum WriteRequest.RefreshPolicy. The server side RefreshPolicy still valid.

Affected test:

  1. 4 test cases in RequestConvertersTests in PR #42
  2. UpdateByQueryIT.testUpdateByQuery
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.UpdateByQueryIT.testUpdateByQuery" -Dtests.seed=7C260435FE74FF9A -Dtests.security.manager=true -Dtests.locale=sk-SK -Dtests.timezone=America/Kentucky/Monticello -Druntime.java=15

org.elasticsearch.client.UpdateByQueryIT > testUpdateByQuery FAILED
    java.lang.AssertionError: expected:<2> but was:<1>
        at __randomizedtesting.SeedInfo.seed([7C260435FE74FF9A:867672C55A50F0DC]:0)
        at org.junit.Assert.fail(Assert.java:88)
        at org.junit.Assert.failNotEquals(Assert.java:834)
        at org.junit.Assert.assertEquals(Assert.java:645)
        at org.junit.Assert.assertEquals(Assert.java:631)
        at org.elasticsearch.client.UpdateByQueryIT.testUpdateByQuery(UpdateByQueryIT.java:105)
  1. ReindexIT.testDeleteByQuery
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.ReindexIT.testDeleteByQuery" -Dtests.seed=7C260435FE74FF9A -Dtests.security.manager=true -Dtests.locale=no -Dtests.timezone=MST7MDT -Druntime.java=15

org.elasticsearch.client.ReindexIT > testDeleteByQuery FAILED
    java.lang.AssertionError: expected:<2> but was:<3>
        at __randomizedtesting.SeedInfo.seed([7C260435FE74FF9A:72E9011EA7BB800C]:0)
        at org.junit.Assert.fail(Assert.java:88)
        at org.junit.Assert.failNotEquals(Assert.java:834)
        at org.junit.Assert.assertEquals(Assert.java:645)
        at org.junit.Assert.assertEquals(Assert.java:631)
        at org.elasticsearch.client.ReindexIT.testDeleteByQuery(ReindexIT.java:225)
  1. CRUDDocumentationIT.testGetSource
REPRODUCE WITH: ./gradlew ':client:rest-high-level:asyncIntegTest' --tests "org.elasticsearch.client.documentation.CRUDDocumentationIT.testGetSource" -Dtests.seed=6920D29241A2C6F7 -Dtests.security.manager=true -Dtests.locale=mt-MT -Dtests.timezone=Pacific/Norfolk -Druntime.java=15

org.elasticsearch.client.documentation.CRUDDocumentationIT > testGetSource FAILED
    ElasticsearchStatusException[Elasticsearch exception [type=resource_not_found_exception, reason=Document not found [posts]/[_doc]/[1]]]
        at __randomizedtesting.SeedInfo.seed([6920D29241A2C6F7:F329DA9BCC2B1A30]:0)
        at org.elasticsearch.rest.BytesRestResponse.errorFromXContent(BytesRestResponse.java:187)SearchDocumentationIT
        at org.elasticsearch.client.RestHighLevelClient.parseEntity(RestHighLevelClient.java:1735)
        at org.elasticsearch.client.RestHighLevelClient.parseResponseException(RestHighLevelClient.java:1712)
        at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1469)
        at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1441)
        at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1408)
        at org.elasticsearch.client.RestHighLevelClient.getSource(RestHighLevelClient.java:786)
        at org.elasticsearch.client.documentation.CRUDDocumentationIT.testGetSource(CRUDDocumentationIT.java:1458)

[TEST] Build backward Compatibility failing (buildBwcOssZip)

Gradle task :distribution:bwc:maintenance:buildBwcOssZip is failing for specific version (6.8.14).

* What went wrong:
Execution failed for task ':distribution:bwc:maintenance:buildBwcOssZip'.
> Building 6.8.14 didn't generate expected file /home/ubuntu/search/distribution/bwc/maintenance/build/bwc/checkout-6.8/distribution/archives/oss-zip/build/distributions/elasticsearch-oss-6.8.14-SNAPSHOT.zip

Can be reproduced by:
./gradlew :distribution:bwc:maintenance:buildBwcOssZip

[TEST] Failures in IndexingMemoryControllerTests

Couple of tests failing in IndexingMemoryControllerTests.

  • org.elasticsearch.indices.IndexingMemoryControllerTests.testSkipRefreshIfShardIsRefreshingAlready
  • org.elasticsearch.indices.IndexingMemoryControllerTests.testTranslogRecoveryWorksWithIMC

Reproduced by ./gradlew ':server:test'

[TEST] Fix Unit and Integration Tests as part of Removal of XPack code

This meta issue tracks fixing all the tests which are failing as part of the removal of references of Elastic licensed code (CR #2)

  • @adnapibar Compile Issues (#29)
  • Build Tools Integration Tests (Gradle Task :build-tools:integTest)

REST High Level Client Tests (Gradle Task :client:rest-high-level:test)
Tests with failures:

  • org.elasticsearch.client.RequestConvertersTests.testExists (#55)
  • org.elasticsearch.client.RequestConvertersTests.testGetSource (#55)
  • org.elasticsearch.client.RequestConvertersTests.testMultiGet (#55)
  • org.elasticsearch.client.RequestConvertersTests.testSourceExistsWithType (#55)
  • org.elasticsearch.client.indices.GetDataStreamResponseTests.testFromXContent

REST High Level Client Integ Tests (Gradle Task :client:rest-high-level:asyncIntegTest)
Tests with failures:

  • org.elasticsearch.client.IndicesClientIT.testFreezeAndUnfreeze(#85)
  • org.elasticsearch.client.IndicesClientIT.testReloadAnalyzer(#48)
  • org.elasticsearch.client.ReindexIT.testDeleteByQuery
  • org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsDoubleMetric(#59)
  • org.elasticsearch.client.analytics.AnalyticsAggsIT.testStringStats (#59)
  • org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsSizeTwo (#59)
  • org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsLongMetric (#59)
  • org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsDateMetric (#59)
  • org.elasticsearch.client.analytics.AnalyticsAggsIT.testTopMetricsManyMetrics (#59)
  • org.elasticsearch.client.UpdateByQueryIT.testUpdateByQuery
  • org.elasticsearch.client.documentation.IndicesClientDocumentationIT.testFreezeIndex(#85)
  • org.elasticsearch.client.documentation.IndicesClientDocumentationIT.testUnfreezeIndex(#85)
  • org.elasticsearch.client.documentation.IndicesClientDocumentationIT.testReloadSearchAnalyzers(#48)
  • org.elasticsearch.client.documentation.CRUDDocumentationIT.testGetSource
  • org.elasticsearch.client.SearchIT.testSearchWithBasicLicensedQuery (#60)

Update CONTRIBUTING.md to remove license statatement

Update CONTRIBUTING.md to remove license and elastic.co related statement

Contributing to elasticsearch

Elasticsearch is an open source project and we love to receive contributions from our community โ€”ย you! There are many ways to contribute, from writing tutorials or blog posts, improving the documentation, submitting bug reports and feature requests or writing code which can be incorporated into Elasticsearch itself.

If you want to be rewarded for your contributions, sign up for the Elastic Contributor Program. Each time you
make a valid contribution, youโ€™ll earn points that increase your chances of winning prizes and being recognized as a top contributor.

  1. Sign the Contributor License Agreement

    Please make sure you have signed our Contributor License Agreement. We are not asking you to assign copyright to us, but to give us the right to distribute your code without restriction. We ask this of all contributors in order to assure our users of the origin and continuing existence of the code. You only need to sign the CLA once.

Change elastic.co from http netty4 test

Update the elastic.co in all the document in the same folder.
// Test pre-flight request
try (Netty4HttpClient client = new Netty4HttpClient()) {
final FullHttpRequest request = new DefaultFullHttpRequest(HttpVersion.HTTP_1_1, HttpMethod.OPTIONS, "/");
request.headers().add(CorsHandler.ORIGIN, "elastic.co");
request.headers().add(CorsHandler.ACCESS_CONTROL_REQUEST_METHOD, "POST");

[TEST] FreezeUnfreezeIT

Below 3 tests are failing with Freeze/Unfreeze x-pack code. We need to remove the corresponding x-pack remnants of the freeze index feature

  • org.elasticsearch.client.IndicesClientIT.testFreezeAndUnfreeze
  • org.elasticsearch.client.documentation.IndicesClientDocumentationIT.testFreezeIndex
  • org.elasticsearch.client.documentation.IndicesClientDocumentationIT.testUnfreezeIndex

Parent issue #23

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.