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

(BUG): (building in java for testing purposes takes too much time) #2951

Open
Maayanshani25 opened this issue Jan 15, 2025 · 4 comments
Open
Assignees
Labels
bug Something isn't working CI/CD CI/CD related

Comments

@Maayanshani25
Copy link
Collaborator

Maayanshani25 commented Jan 15, 2025

Describe the bug

The recent changes introduced in PR #2879 modified the Java build process, making it only possible to build with the --release option. This build process now takes 3-4 minutes, which is unnecessary for testing purposes.

Suggested Fix
Reintroduce two separate build options:

  • all - for testing purposes.
  • allRelease - for optimized builds.

Expected Behavior

The build time should be reduced by at least half or more, especially for testing purposes, to improve efficiency and productivity.

Current Behavior

The build process takes excessive time and always runs in release mode, which is unnecessary for testing purposes.

Possible Solution

  1. Review the changes introduced in PR #2879 to understand the build process modification.
  2. Extract the two build options (All and AllRelease) from the original implementation to allow faster builds for testing purposes.
  3. Update the developer.md file with clear instructions on how to use the two build options:
    • all: For testing purposes (faster builds).
    • allRelease: For optimized builds.

Client version used

java current

Engine type and version

Valkey 8.0

OS

ubuntu

Language

Java

Language Version

openjdk 11.0.25

@Maayanshani25 Maayanshani25 added the bug Something isn't working label Jan 15, 2025
@ikolomi
Copy link
Collaborator

ikolomi commented Jan 15, 2025

LGTM, short build times are important. Please drive it to completion

@Yury-Fridlyand
Copy link
Collaborator

95% of time of java client compilation = rust code compilation
Debug configuration isn't significantly faster than release. The delta is lower than measurement precision.
If you want to get builds faster in CI - use caches (#771)

@Yury-Fridlyand Yury-Fridlyand added the CI/CD CI/CD related label Jan 15, 2025
@avifenesh
Copy link
Collaborator

@Yury-Fridlyand I agree, as you know, what blocked us from caching until now?
I see a challenge with cases where we need to rebuild on rust changes of proto. But I'm sure we can easily solve that.
Something else?
Why didn't it enter into 1.3 CD improvements? Let at least push it into 1.4.

@Yury-Fridlyand
Copy link
Collaborator

what blocked us from caching until now?

Nothing. I afraid such task doesn't fit our scope and release deadlines.
I'm happy to do that once I have time. Wanted to do that > year ago

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working CI/CD CI/CD related
Projects
Status: No status
Development

No branches or pull requests

4 participants