Skip to content

Demo Notebook Fails on main branch: Build-Artifact Mismatch & API Drift #727

@oringnam

Description

@oringnam

Search before asking

  • I had searched in the issues and found no similar issues.

Please describe the bug 🐞

Summary

The example notebook / script shipped with Apache Xtable no longer runs on the current main branch.
Execution fails for three independent reasons:

  1. an incorrect JAR coordinate,
  2. an outdated method invocation, and
  3. the removal of an internal configuration class.

Details

  1. Incorrect core-JAR coordinate
<artifactId>xtable-core_${scala.binary.version}</artifactId>

The demo expects a module called xtable-core, but the artifact actually published to Maven Central is xtable-core_${scala.binary.version}.
Because the script loads the wrong coordinate, it cannot find core classes at runtime.

  1. Extra argument in HudiConversionSourceProvider.init
hudiConversionSourceProvider.init(
    spark.sparkContext.hadoopConfiguration,
    Collections.emptyMap()   // <-- deprecated
)

init now accepts only a single Configuration parameter.
Passing the second argument produces:

cmd3.sc:19: too many arguments (2) for method init: (x$1: org.apache.hadoop.conf.Configuration)Unit
  1. PerTableConfigImpl removed (PR [297] Refactor config classes #480)
    The demo still references PerTableConfigImpl, which was deleted in PR [297] Refactor config classes #480.
cmd3.sc:10: not found: value PerTableConfigImpl

The recommended pattern is to build a ConversionConfig and a list of TargetTable instances instead.

Proposed Fix

  • Update the POM line to xtable-core_${scala.binary.version} or the demo scripts.
  • Remove the second argument from HudiConversionSourceProvider.init(...).
  • Replace PerTableConfigImpl with the new ConversionConfig + TargetTable builder API in the demo.

Are you willing to submit PR?

  • I am willing to submit a PR!
  • I am willing to submit a PR but need help getting started!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions