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

Java 21 pipeline #11672

Merged
merged 18 commits into from Oct 19, 2023
Merged

Java 21 pipeline #11672

merged 18 commits into from Oct 19, 2023

Conversation

gortiz
Copy link
Contributor

@gortiz gortiz commented Sep 25, 2023

The reason to be of this PR is to be able to progress on #11656.

Specifically it:

@codecov-commenter
Copy link

codecov-commenter commented Sep 25, 2023

Codecov Report

Merging #11672 (6b3b853) into master (9378b06) will decrease coverage by 0.02%.
The diff coverage is 70.00%.

@@             Coverage Diff              @@
##             master   #11672      +/-   ##
============================================
- Coverage     66.48%   66.47%   -0.02%     
  Complexity      207      207              
============================================
  Files          2343     2343              
  Lines        126418   126422       +4     
  Branches      19440    19443       +3     
============================================
- Hits          84054    84035      -19     
- Misses        36499    36519      +20     
- Partials       5865     5868       +3     
Flag Coverage Δ
custom-integration1 <0.01% <0.00%> (ø)
integration <0.01% <0.00%> (ø)
integration1 <0.01% <0.00%> (ø)
integration2 0.00% <0.00%> (ø)
java-11 50.21% <50.00%> (-16.22%) ⬇️
java-17 ?
java-20 ?
java-21 66.35% <50.00%> (?)
skip-bytebuffers-false 66.45% <70.00%> (?)
skip-bytebuffers-true 66.31% <50.00%> (?)
temurin 66.47% <70.00%> (-0.02%) ⬇️
unittests 66.47% <70.00%> (-0.02%) ⬇️
unittests1 67.33% <70.00%> (-0.02%) ⬇️
unittests2 17.70% <0.00%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
...ache/pinot/segment/spi/memory/PinotDataBuffer.java 78.89% <70.00%> (-0.55%) ⬇️

... and 24 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@@ -36,9 +36,7 @@
<properties>
<pinot.root>${basedir}/../../..</pinot.root>
<phase.prop>package</phase.prop>
<scala.major.version>2.12</scala.major.version>
Copy link
Contributor

@xiangfu0 xiangfu0 Oct 4, 2023

Choose a reason for hiding this comment

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

This module is still called spark pinot-batch-ingestion-spark-3.2 :p
I think we can either change it to pinot-batch-ingestion-spark-3?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yep. I discussed about that in #11701 and its related issue. I'm ok with changing that name

@xiangfu0
Copy link
Contributor

xiangfu0 commented Oct 4, 2023

here are too many CI checks, can we try to reduce the number of tests?

@gortiz
Copy link
Contributor Author

gortiz commented Oct 4, 2023

here are too many CI checks, can we try to reduce the number of tests?

Sure, we need to discuss which ones we want to have.

My recommendation right now is:

  1. Java 11, skip bytebuffers false
  2. Java 17, skip bytebuffers false
  3. Java 21, skip bytebuffers false
  4. Java 21, skip bytebuffers true

Java 11 with skipbuffers true should also be enable, but given it doesn't pass the tests right now, we need to skip it. What do you think?

@xiangfu0
Copy link
Contributor

xiangfu0 commented Oct 4, 2023

here are too many CI checks, can we try to reduce the number of tests?

Sure, we need to discuss which ones we want to have.

My recommendation right now is:

  1. Java 11, skip bytebuffers false
  2. Java 17, skip bytebuffers false
  3. Java 21, skip bytebuffers false
  4. Java 21, skip bytebuffers true

Java 11 with skipbuffers true should also be enable, but given it doesn't pass the tests right now, we need to skip it. What do you think?

I think we can just test the default byteBuffer usage.
For the others, if you have good tests, we can just write a test suite for testing different behaviors to ensure the coverage.

@gortiz
Copy link
Contributor Author

gortiz commented Oct 4, 2023

I think we can just test the default byteBuffer usage.
For the others, if you have good tests, we can just write a test suite for testing different behaviors to ensure the coverage.

PinotDataBufferTest already does that... but as is proven by this PR, it is not enough. There are some particularities in LArray that are not tested there. Given the importance of the buffer library (it may imply incorrect results or data corruption), I think it is worth it to have at least one execution where the unsafe buffer is tested.

But we can skip it if you think it is not necessary

@gortiz
Copy link
Contributor Author

gortiz commented Oct 4, 2023

I've changed the pipeline to run with:

  • Java 11, with byte buffers
  • Java 21, with byte buffers
  • Java 21, without byte buffers

So we have the same number of executions as before, but Java 17 and 20 have been replaced with Java 21 with and without bytebuffers. What do you think?

@xiangfu0
Copy link
Contributor

xiangfu0 commented Oct 8, 2023

I think we can just test the default byteBuffer usage.
For the others, if you have good tests, we can just write a test suite for testing different behaviors to ensure the coverage.

PinotDataBufferTest already does that... but as is proven by this PR, it is not enough. There are some particularities in LArray that are not tested there. Given the importance of the buffer library (it may imply incorrect results or data corruption), I think it is worth it to have at least one execution where the unsafe buffer is tested.

But we can skip it if you think it is not necessary

Make sense, let's enable this for now and we can disable the tests once we have enough confidence.

@xiangfu0
Copy link
Contributor

Seems there is a missing rebase for: #11804
I separated PR tests files.

@xiangfu0
Copy link
Contributor

Also one thing missing there is to add more codecov flags for skip buffer

@xiangfu0 xiangfu0 self-requested a review October 18, 2023 00:26
@xiangfu0 xiangfu0 merged commit 26224cf into apache:master Oct 19, 2023
21 checks passed
@Jackie-Jiang Jackie-Jiang added the release-notes Referenced by PRs that need attention when compiling the next release notes label Oct 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release-notes Referenced by PRs that need attention when compiling the next release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants