Skip to content

Conversation

@nsivabalan
Copy link
Contributor

@nsivabalan nsivabalan commented Aug 16, 2025

Change Logs

Migrating MySqlDebeziumPayload to merge mode.

Pending work:
Adding tests to TestPayloadDeprecationFlow for MySqlDebeziumPayload

Impact

MySqlDebeziumPayload in V9 will be using merge modes w/ multiple ordering fields.

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

medium

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:L PR with lines of changes in (300, 1000] label Aug 16, 2025
@nsivabalan nsivabalan force-pushed the HUDI-8401-followups-myssql-debeziumpayload branch from 80fa4f1 to 3a7726d Compare August 16, 2025 05:11
@github-actions github-actions bot added size:M PR with lines of changes in (100, 300] and removed size:L PR with lines of changes in (300, 1000] labels Aug 16, 2025
Comment on lines -1034 to -1036
if (!params.contains(HoodieWriteConfig.PRECOMBINE_FIELD_NAME.key()) && tableConfig.getPreCombineFieldsStr.isPresent) {
missingWriteConfigs ++= Map(HoodieWriteConfig.PRECOMBINE_FIELD_NAME.key -> tableConfig.getPreCombineFieldsStr.orElse(null))
}
Copy link
Collaborator

Choose a reason for hiding this comment

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

There was one issue which I was facing. Basically when precombine config is not configured, we add it using table config.
Write config is therefore pointing to older table config but the table config is updated to newer config after upgrade. In order to avoid such a scenario removed addition of write config here.

Copy link
Collaborator

Choose a reason for hiding this comment

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

With the deprecation of write config in #13718, this should be further streamlined

Copy link
Contributor

@yihua yihua left a comment

Choose a reason for hiding this comment

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

LGTM overall, made a few minor revisions. Let's fix test failures.

@apache apache deleted a comment from hudi-bot Aug 19, 2025
@hudi-bot
Copy link
Collaborator

CI report:

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

Copy link
Contributor

@yihua yihua left a comment

Choose a reason for hiding this comment

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

LGTM

}

@Test
def testUpgradeDowngradeMySqlDebeziumPayload(): Unit = {
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: we might want to decouple the upgrade and downgrade tests from RecordLevelIndexTestBase, which can be done separately. @lokeshj1703 could you file a JIRA to track this?

Copy link
Collaborator

Choose a reason for hiding this comment

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

@yihua yihua merged commit 30eca34 into apache:master Aug 20, 2025
61 checks passed
alexr17 pushed a commit to alexr17/hudi that referenced this pull request Aug 25, 2025
Co-authored-by: Lokesh Jain <ljain@192.168.1.21>
Co-authored-by: Lokesh Jain <ljain@192.168.0.234>
Co-authored-by: Y Ethan Guo <ethan.guoyihua@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M PR with lines of changes in (100, 300]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants