Skip to content

Downgrade qat-java version to 1.2.0. #254

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

Merged
merged 2 commits into from
Jun 17, 2025

Conversation

mulugetam
Copy link
Contributor

Description

Downgrades QAT-Java to version 1.2.0 due to customer readiness constraints, as version 2.2.1 depends on a QATzip release that has not yet been adopted in their environments.

Signed-off-by: Mulugeta Mammo <mulugeta.mammo@intel.com>
@@ -72,7 +72,7 @@ opensearchplugin {

dependencies {
api "com.github.luben:zstd-jni:1.5.5-5"
api "com.intel.qat:qat-java:2.2.1"
api "com.intel.qat:qat-java:1.2.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you update the licenses as well?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated.

@@ -72,7 +72,7 @@ opensearchplugin {

dependencies {
api "com.github.luben:zstd-jni:1.5.5-5"
api "com.intel.qat:qat-java:2.2.1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was the unavailability of dependency not caught in tests?

Copy link
Contributor Author

@mulugetam mulugetam Jun 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mgodwan All versions of QAT-Java require the underlying system to have QAT hardware and that it is properly configured. If not, it will either fall back to software execution (for auto mode) or throw an exception (or hardware only). The downgrade was requested solely because customers are not yet ready to upgrade their drivers and/or the QATzip library to make use of the latest features and improvements.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would this downgrade take away the support for LZ4/Defalte as well?
I'm coming from release notes captured here: https://github.com/intel/qat-java/releases

Copy link
Contributor Author

@mulugetam mulugetam Jun 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it does not. I understand this might be somewhat confusing, but the mention of DEFLATE and LZ4 in the 2.2.1 release notes was intended to clarify that it supports only DEFLATE and LZ4—unlike other 2.x versions, which support DEFLATE, LZ4, and ZSTD.

Signed-off-by: Mulugeta Mammo <mulugeta.mammo@intel.com>
@hector-cao
Copy link

@mgodwan Hello, thanks for the review. Do you think that we are good to go for this to be approved ? We are blocked by this to be able to enable QAT foe Canonical opensearch product

@andrross
Copy link
Member

The downgrade was requested solely because customers are not yet ready to upgrade their drivers and/or the QATzip library to make use of the latest features and improvements.

@mulugetam But what about the customers that want the upgraded version with the latest features and improvements? I'm fine with merging this PR for now because we haven't yet released a version with the newer qat-java, but it seems like we might need a more flexible strategy as it is unlikely we'll be able to make everyone happy.

@andrross andrross merged commit 6245b46 into opensearch-project:2.19 Jun 17, 2025
14 checks passed
@opensearch-trigger-bot
Copy link
Contributor

The backport to 3.1 failed:

The process '/usr/bin/git' failed with exit code 128

To backport manually, run these commands in your terminal:

# Navigate to the root of your repository
cd $(git rev-parse --show-toplevel)
# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/custom-codecs/backport-3.1 3.1
# Navigate to the new working tree
pushd ../.worktrees/custom-codecs/backport-3.1
# Create a new branch
git switch --create backport/backport-254-to-3.1
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 6245b46f6a6a7964b0764a54781fd52fe709cfbf
# Push it to GitHub
git push --set-upstream origin backport/backport-254-to-3.1
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/custom-codecs/backport-3.1

Then, create a pull request where the base branch is 3.1 and the compare/head branch is backport/backport-254-to-3.1.

@andrross
Copy link
Member

@mulugetam I'm just now noticing this merged to the 2.19 branch. Do you want to keep the newer version for the 3.1 and later releases?

@mulugetam
Copy link
Contributor Author

@andrross Yes, I want to keep the latest qat-java version, 2.3.2, for 3.1 and later releases. Thanks!

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

Successfully merging this pull request may close these issues.

4 participants