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

[MINOR] Register more classes with Kryo #12268

Merged
merged 3 commits into from
Feb 13, 2025

Conversation

the-other-tim-brown
Copy link
Contributor

Change Logs

  • Register classes used in bloom index lookup

Impact

  • Reduces serialized size which in turn reduces shuffle overhead

Risk level (write none, low medium or high below)

None

Documentation Update

Describe any necessary documentation update if there is any new feature, config, or user-facing change. If not, put "none".

  • The config description must be updated if new configs are added or the default value of the configs are changed
  • Any new feature or user-facing change requires updating the Hudi website. Please create a Jira ticket, attach the
    ticket number here and follow the instruction to make
    changes to the website.

Contributor's checklist

  • Read through contributor's guide
  • Change Logs and Impact were stated clearly
  • Adequate tests were added if applicable
  • CI passed

@github-actions github-actions bot added the size:XS PR with lines of changes in <= 10 label Nov 16, 2024
Copy link
Contributor

@nsivabalan nsivabalan left a comment

Choose a reason for hiding this comment

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

cool
Is there a way we can search through entire code base and ensure we have all of them tracked here that needs kryo serialization?

@the-other-tim-brown
Copy link
Contributor Author

cool Is there a way we can search through entire code base and ensure we have all of them tracked here that needs kryo serialization?

@nsivabalan there is a way to configure Kryo to fail if you encounter an unregistered class. We could do that to flush out the remaining classes

@hudi-bot
Copy link

CI report:

Bot commands @hudi-bot supports the following commands:
  • @hudi-bot run azure re-run the last Azure build

@@ -61,6 +62,7 @@ class HoodieSparkKryoRegistrar extends HoodieCommonKryoRegistrar with KryoRegist
kryo.register(classOf[HoodieInternalRow])
kryo.register(classOf[HoodieSparkCopyOnWriteTable[_]])
kryo.register(classOf[HoodieSparkMergeOnReadTable[_]])
kryo.register(classOf[HoodieKeyLookupResult])
Copy link
Contributor

Choose a reason for hiding this comment

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

Previously the new classes are added at the end but I think this is OK since the Kryo serde is only used in memory, not for any storage bytes any more.

@yihua yihua merged commit 7a83af9 into apache:master Feb 13, 2025
43 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size:XS PR with lines of changes in <= 10
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants