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

AVRO-2307: [java] list of primitive #2389

Merged
merged 4 commits into from Aug 17, 2023

Conversation

clesaec
Copy link
Contributor

@clesaec clesaec commented Jul 24, 2023

What is the purpose of the change

AVRO-2307 : sub task 1.
As described in JIRA
Another challenge we’ve come across is that lists of primitive types (floats in our case) are always boxed into Object Floats by Avro. In our case, this resulted in millions of Objects / second getting allocated, causing pathological GC pressure.

So, this PR aims to introduce list of primitives classes that save memory consomption when Generic data with array of boolean, int, long, float or double.

Verifying this change

New unit test class PrimitivesArraysTest is implemented + rest of code use it via GenericData.newArray method.

Documentation

  • Does this pull request introduce a new feature? (no)
  • If yes, how is the feature documented? (not applicable)

@github-actions github-actions bot added the Java Pull Requests for Java binding label Jul 24, 2023
Copy link

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

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

CodeQL found more than 10 potential problems in the proposed changes. Check the Files changed tab for more details.

@clesaec clesaec merged commit 3735035 into apache:master Aug 17, 2023
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Java Pull Requests for Java binding
Projects
None yet
2 participants