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

Source Mailchimp: Add undeclared columns to spec #24559

Closed
erohmensing opened this issue Mar 27, 2023 · 1 comment · Fixed by #32836
Closed

Source Mailchimp: Add undeclared columns to spec #24559

erohmensing opened this issue Mar 27, 2023 · 1 comment · Fixed by #32836

Comments

@erohmensing
Copy link
Contributor

What

In this PR, BasicReadTest.test_read test in the Connector Acceptance Tests was updated to fail if the connector produces
stream records which contain columns that haven't been declared in the spec.

Mailchimp currently fails the updated test. Its acceptance-test-config.yml was edited with the
fail_on_extra_columns: false parameter in this PR in order to avoid this change from making the connector fail CAT.

We want to add the undeclared columns to the spec.

How this will help:

  • Column selection is currently blocked for connectors that don't declare all columns that they pass. This
    is because turning on column selection will stop these undeclared columns from being sent, when they were
    previously being sent. Doing this allows us to enable column selection for Mailchimp!
  • Users will better understand the shape of the data they'll receive, since the columns will match the spec.

How

The following descriptions of streams that pass undeclared columns come from results of the failed connector acceptance test:

columns.txt:./source-mailchimp-2137-2023-03-26T03:18:19.9668958Z The lists stream has the following schema errors:
columns.txt:./source-mailchimp:2138:2023-03-26T03:18:19.9669501Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-2940-2023-03-26T03:18:20.0407144Z The campaigns stream has the following schema errors:
columns.txt:./source-mailchimp:2941:2023-03-26T03:18:20.0407831Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-7531-2023-03-26T03:18:20.2181045Z The email_activity stream has the following schema errors:
columns.txt:./source-mailchimp:7532:2023-03-26T03:18:20.2181337Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-7617-2023-03-26T03:18:20.2202964Z The reports stream has the following schema errors:
columns.txt:./source-mailchimp:7618:2023-03-26T03:18:20.2203250Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-8825-2023-03-26T03:18:20.3571177Z The lists stream has the following schema errors:
columns.txt:./source-mailchimp:8826:2023-03-26T03:18:20.3571475Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-9628-2023-03-26T03:18:20.3891627Z The campaigns stream has the following schema errors:
columns.txt:./source-mailchimp:9629:2023-03-26T03:18:20.3892156Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-14219-2023-03-26T03:18:20.5646132Z The email_activity stream has the following schema errors:
columns.txt:./source-mailchimp:14220:2023-03-26T03:18:20.5646559Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-14305-2023-03-26T03:18:20.5676807Z The reports stream has the following schema errors:
columns.txt:./source-mailchimp:14306:2023-03-26T03:18:20.5677316Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-15859-2023-03-26T03:19:58.3210335Z The lists stream has the following schema errors:
columns.txt:./source-mailchimp:15860:2023-03-26T03:19:58.3211325Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-16662-2023-03-26T03:19:58.3758088Z The campaigns stream has the following schema errors:
columns.txt:./source-mailchimp:16663:2023-03-26T03:19:58.3758610Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-21253-2023-03-26T03:19:58.6847157Z The email_activity stream has the following schema errors:
columns.txt:./source-mailchimp:21254:2023-03-26T03:19:58.6847597Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-21339-2023-03-26T03:19:58.6868845Z The reports stream has the following schema errors:
columns.txt:./source-mailchimp:21340:2023-03-26T03:19:58.6869129Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-22561-2023-03-26T03:19:58.9006934Z The lists stream has the following schema errors:
columns.txt:./source-mailchimp:22562:2023-03-26T03:19:58.9007481Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-23364-2023-03-26T03:19:58.9354196Z The campaigns stream has the following schema errors:
columns.txt:./source-mailchimp:23365:2023-03-26T03:19:58.9354479Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-27955-2023-03-26T03:19:59.1086346Z The email_activity stream has the following schema errors:
columns.txt:./source-mailchimp:27956:2023-03-26T03:19:59.1086632Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-28041-2023-03-26T03:19:59.1110597Z The reports stream has the following schema errors:
columns.txt:./source-mailchimp:28042:2023-03-26T03:19:59.1110891Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-29580-2023-03-26T03:21:37.1635687Z The lists stream has the following schema errors:
columns.txt:./source-mailchimp:29581:2023-03-26T03:21:37.1636603Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-30383-2023-03-26T03:21:37.2725956Z The campaigns stream has the following schema errors:
columns.txt:./source-mailchimp:30384:2023-03-26T03:21:37.2727058Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-34974-2023-03-26T03:21:37.5012198Z The email_activity stream has the following schema errors:
columns.txt:./source-mailchimp:34975:2023-03-26T03:21:37.5012702Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-35060-2023-03-26T03:21:37.5050203Z The reports stream has the following schema errors:
columns.txt:./source-mailchimp:35061:2023-03-26T03:21:37.5050852Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-36268-2023-03-26T03:21:37.6955188Z The lists stream has the following schema errors:
columns.txt:./source-mailchimp:36269:2023-03-26T03:21:37.6955713Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-37071-2023-03-26T03:21:37.7187633Z The campaigns stream has the following schema errors:
columns.txt:./source-mailchimp:37072:2023-03-26T03:21:37.7187920Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-41662-2023-03-26T03:21:37.8770454Z The email_activity stream has the following schema errors:
columns.txt:./source-mailchimp:41663:2023-03-26T03:21:37.8770744Z Additional properties are not allowed ('_links' was unexpected)
columns.txt:./source-mailchimp-41748-2023-03-26T03:21:37.8792207Z The reports stream has the following schema errors:
columns.txt:./source-mailchimp:41749:2023-03-26T03:21:37.8792497Z Additional properties are not allowed ('_links' was unexpected)

  1. Add the missing properties indicated by the Additional properties are not allowed ('<column>', 'column' were unexpected) logs to the connector's spec.
  2. Remove fail_on_extra_columns: false from the acceptance-test-config.yml file.
  3. Commit changes to spec and acceptance-test-config.yml and open a PR.
  4. Run tests on the connector, either automatically via CI or manually via the /test command
  5. Profit!

Definition of done: Mailchimp passes CAT without declaring fail_on_extra_columns: false. If the
API starts sending over extra columns in the future, we will catch and fix them as part of the #connector-health
movement.

@evantahler
Copy link
Contributor

When this issue is picked up, please also consult our DataDog Dashboard for Record Unexpected Fields for this connector. The API might be returning even more record properties that need to be added to the catalog.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants