Skip to content

AVRO-4249: [java] provide a cache of schema to avoid building#3746

Open
mkeskells wants to merge 1 commit intoapache:mainfrom
mkeskells:AVRO-4249-schema-cache
Open

AVRO-4249: [java] provide a cache of schema to avoid building#3746
mkeskells wants to merge 1 commit intoapache:mainfrom
mkeskells:AVRO-4249-schema-cache

Conversation

@mkeskells
Copy link
Copy Markdown
Contributor

What is the purpose of the change

To improve the performance of parsing files.
In an environment where we parse 10k to 100K (generally very small) files that are small, and use the same schema, or a handful of schemas we see many Tb of garbage generation with duplicate schemas being parsed

this PR is a simple fix to enable a cache to be inserted in the reader, so that the cache lookup can replace the parse where there is an exact match already

The shape of the API changes - I leave this to the reviewers to comment, and I am happy to work to their steer, and will generate tests when I have agreement of the approach to this

Verifying this change

(Please pick one of the following options)

I will add tests once the chnages to the API have been agreed. There are many ways that this chnage could be implemented so I dont want to spend th time until the shape can be agreed

Documentation

  • Does this pull request introduce a new feature? yes - i presume there would be some pluggable system setting, and an API chnage
  • If yes, how is the feature documented? not documented as yet

@github-actions github-actions Bot added the Java Pull Requests for Java binding label Apr 29, 2026
@mkeskells mkeskells force-pushed the AVRO-4249-schema-cache branch from 65f4513 to 34e6910 Compare April 29, 2026 22:30
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

Development

Successfully merging this pull request may close these issues.

1 participant