Skip to content
Permalink
Browse files
feat: Added schema compatibility check functionality (SchemaCompact.j…
…ava) (#339)

* Protobuf and annotations working; first test that chekcs if user schema types are supported by BQ.

* Halfway through basic type checking of nonsupported types; wrote tests on scalar types and oneof types

* Almost finished detecting cycles in protos.

* Finished checking for nonsupported types, added zetasql package as dependency in pom.

* Reformatted to pass checkstyle.

* Added all BQ compatibility checks and started working on main checking method

* Removed all exact match code; realized parameter exact match is a backend object.

* Added field mode checks

* Refactored field option checking code.

* All current tests work.

* Finished BQInteger testing; need to add testing for all types and annotations.

* Removing zetasql related code

* Removed all zetasql related code

* Finished basic type checking and added tests, need to add more in-depth tests to account for BQRecord

* feat: Added SchemaCompact class that checks compatibility between proto schemas and BQ schemas.

* Changed some files to make compilation/testing work

* Added to clirr-ignored-differences to ignore differences in check method signature

* Changed clirr ignored method to be the original method signature

* Fixed code for pull request

* Fixed linting errors

* Fixed all PR suggestions

* Merged isSupported and isCompatible, fixed minor issues according to PR suggestions.

* Removed duplicate commits

* Fix linting

* Added a testcase for field name casing.

* Added Integration tests, also added a field mode for footype in tableInfo as SchemaCheck does not allow BQ fields with no field mode.

* Fixed linting

* Fixed testing errors

* Fixing test pt 2

* Reverted clirr-ignored-differences.ml
  • Loading branch information
allenc3 committed Jun 18, 2020
1 parent 8d42ecd commit bc2d8cc82adeeddb21aeb9845e0883d369101513

0 comments on commit bc2d8cc

Please sign in to comment.