Skip to content

Clean-up API for usage of diffX methods in code #216

@idreeskhan

Description

@idreeskhan

Over time we've had some things leak into the diff methods that make it more cumbersome to use BigDiffy via code instead of CLI.

For example diffAvro here https://github.com/spotify/ratatool/blob/master/ratatool-diffy/src/main/scala/com/spotify/ratatool/diffy/BigDiffy.scala#L284

User has to manually pass in schema otherwise we they receive a non-informative error regarding null schema, additionally user has to construct MultiKey manually even if still using a single key. We should probably automatically retrieve the schema and pass in a keys string instead which will better match other parameters such as those passed into AvroDiffy.

Trying to run the diff also has an unclear two step process (First create the diff, then call saveStats). We should document this properly or simplify the process.

Also, passing in some SpecificRecord T results in a strange casting error, and instead the user needs to pass a GenericRecord.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions