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

Run CI on JDK 8 #302

Merged
merged 125 commits into from
Mar 7, 2022
Merged

Conversation

martin-gaievski
Copy link
Member

@martin-gaievski martin-gaievski commented Mar 2, 2022

Description

Adding JDK8 to CI matrix

Issues Resolved

100

Check List

  • Commits are signed as per the DCO using --signoff

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.

@martin-gaievski martin-gaievski changed the title Adding JDK8 to CI matrix Run CI on JDK 8 Mar 2, 2022
@martin-gaievski
Copy link
Member Author

Build for JDK8 is failing both locally and in CI with following problem:

  • Where:
    Build file '/Users/gaievski/dev/opensearch/k-NN/build.gradle' line: 51

  • What went wrong:
    A problem occurred evaluating root project 'opensearch-knn'.

Failed to apply plugin 'opensearch.opensearchplugin'.
Could not create plugin of type 'PluginBuildPlugin'.
> Could not generate a decorated class for type PluginBuildPlugin.
> org/opensearch/gradle/plugin/PluginPropertiesExtension has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0

this is true for opensearch 1.2.0 and 1.30 SNAPSHOT versions.

@martin-gaievski
Copy link
Member Author

Seems this issue is blocked unless we'll be able to define dependency on opensearch artifact that has been built with JDK8. I've created a new issue for OpenSearch - opensearch-project/OpenSearch#2319

@dblock
Copy link
Member

dblock commented Mar 7, 2022

@martin-gaievski This should work now, rebase and try again? Also fix DCO.

@vamshin vamshin added the v1.3.0 Issues and PRs related to version 1.3.0 label Mar 7, 2022
@codecov-commenter
Copy link

codecov-commenter commented Mar 7, 2022

Codecov Report

Merging #302 (45003c2) into 1.x (fe22b85) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff            @@
##                1.x     #302   +/-   ##
=========================================
  Coverage     83.38%   83.38%           
  Complexity      885      885           
=========================================
  Files           127      127           
  Lines          3834     3834           
  Branches        361      361           
=========================================
  Hits           3197     3197           
  Misses          475      475           
  Partials        162      162           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update fe22b85...45003c2. Read the comment docs.

VijayanB and others added 22 commits March 7, 2022 11:43
Include code coverage as badge.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Include release notes.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
remove rc1 qualifier.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Including rc1 release notes and features that are merged after latest odfe release
to 1.0.0.0

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Include release notes.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Including rc1 release notes and features that are merged after latest odfe release
to 1.0.0.0

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
* Add integtest automation

Signed-off-by: Peter Zhu <[email protected]>

* correct the credential option param here

Signed-off-by: Peter Zhu <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
update ci to build against 1.x branch and use snapshot.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Use 1.1.0.0 as default value instead of local.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: dblock <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
main tracks 1.x and builds on 1.x from upstream.
Update version to 1.2.0-SNAPSHOT since next 1.x release is 1.2.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Fetch dependencies from published locations in the following order
maven local, aws sonatype, central.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Include workflow to check whether commits are signed.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Since feature branch will have "feature/" as prefix,
updated branch pattern to include feature branch as well.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: Naveen Tatikonda <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: Jack Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
mend-for-github.aaakk.us.kg bot and others added 21 commits March 7, 2022 11:43
Co-authored-by: whitesource-for-github.aaakk.us.kg[bot] <50673670+whitesource-for-github.aaakk.us.kg[bot]@users.noreply.github.com>
Signed-off-by: Martin Gaievski <[email protected]>
…lection of floats (opensearch-project#253)

* Changing serialization for knn vector from single array object to collection of floats

rev2:
* Addressing PR comments:
- added getDefaultSerializer to Factory
- moved SerializationMode enum to a separate file
- added javadocs and comments
- adjust format, added missing endline characters
rev3:
* Addressing multiple review comments:
- replace Vector by KNNVector in class names and variables
- fixed method names in Serializer interface
- replace number of bytes in float from number to constant
rev4:
* Moving new classes under index.codec.util
rev5:
* Addressing multiple review comments:
- rework factory method getSerializerByStreamContent
- added test case for stream of unsupported content
- removed exceptions from Serializer interface method's signatures, changed it to unchecked runtime exception
- simplify license header in new classes

Signed-off-by: Martin Gaievski <[email protected]>
* Add Recall Tests

Signed-off-by: Naveen Tatikonda <[email protected]>

* Calculate Recall using document ids and other minor changes

Signed-off-by: Naveen Tatikonda <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
…rch-project#266)

* Adding gradle task for running integ tests in remote cluster

Signed-off-by: Martin Gaievski <[email protected]>
This change adds L2 space type fall back during query.
This prevents backwards compatibility issues for clusters
upgrading from ES 7.1 and 7.4. In those versions, space
type was not introduced as a field attribute yet.

Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
…#268)

Measuring total took time will give a better picture of how long it
will take to make a particular set of documents searchable.

Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
…t#270)

Makes the document and query count configurable in the benchmarking
tool. With this functionality, users can now specify to only index or
search a subset of the vectors in the data set. This is useful for
indices that require training that may only need a subset of the data set
for training.

Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
Adding JDK 11 to CI matrix of java versions, replacing as minimum prerequisite in Dev readme guide. Main reason for change - JDK 11 is the latest supported LTS.

Signed-off-by: Martin Gaievski <[email protected]>
Removes collecting ingest results from the benchmarking tool. On big
data sets, this will prevent the process from going out of memory.

Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
…pensearch-project#279)

Sets the default value of space type to L2 in KNNIndexShard.
KNNIndexShard is used during warmup to load segments into memory. For
indices created in ES 7.1 and 7.4, they will not have this value set
because the only space we supported was l2. So, we need to hardcode the
defaults here.

For nmslib, the ef_search parameter is configurable at load time. So, it
needs to be passed as a parameter in both the search load phase as well
as warmup. This commit adds it to the warmup phase and abstracts load
parameters to a helper function so that it can be consistent for both
search and warmup.

Signed-off-by: John Mazanec <[email protected]>
(cherry picked from commit 2fb2ad1)
Signed-off-by: Martin Gaievski <[email protected]>
… (opensearch-project#286)

Closes resource monitor at the end of the Codec tests so that there are no
unparked threads.

Signed-off-by: John Mazanec <[email protected]>
(cherry picked from commit 18e6e35)
Signed-off-by: Martin Gaievski <[email protected]>
Github doesn't support non-standard like @daily, we have to use
standard cron syntax.

Signed-off-by: Vijayan Balasubramanian <[email protected]>
(cherry picked from commit 9c64451)
Signed-off-by: Martin Gaievski <[email protected]>
…#289) (opensearch-project#291)

Signed-off-by: Vacha Shah <[email protected]>
(cherry picked from commit cb1a7d8)
Signed-off-by: Martin Gaievski <[email protected]>
…earch-project#295)

Updates direct Guava dependency to 30.0. Also, updates check style to
9.3 to inherent Guava fix. Remove deprecated features from check style
  xml config file.

Signed-off-by: John Mazanec <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
…-project#298)

Switches checkstyle functionality to spotless. Sets ratchetFrom to
origin/1.x. This will mean it will only fail on files recently changed.
Pull formatting from OpenSearch.

Signed-off-by: John Mazanec <[email protected]>
(cherry picked from commit 0db9b2e)
Signed-off-by: Martin Gaievski <[email protected]>
Signed-off-by: Martin Gaievski <[email protected]>
@martin-gaievski martin-gaievski marked this pull request as ready for review March 7, 2022 20:06
@martin-gaievski martin-gaievski requested a review from a team March 7, 2022 20:06
@martin-gaievski martin-gaievski merged commit 60766a4 into opensearch-project:1.x Mar 7, 2022
martin-gaievski added a commit to martin-gaievski/k-NN that referenced this pull request Mar 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
v1.3.0 Issues and PRs related to version 1.3.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.