-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
🐛 Destination S3: fixed s3 destination field naming for Parquet and Avro formats #5729
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, but please make sure all check\tests passed before moving forward
/test connector=connectors/destination-s3
|
…5149-destination-s3-fix
/test connector=connectors/destination-s3
|
/test connector=connectors/destination-s3
|
/test connector=connectors/destination-s3
|
…5149-destination-s3-fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding the underscore to every identifier seems unnecessary. Can we do this just for names with invalid characters? I don't want all of our users to have to deal with this extra underscore just because facebook has an API that behaves weirdly. Facebook does not deserve this treatment.
@tuliren I can make the changes you mentioned above. I corrected this in the way the @sherifnada talked about in task #5149. Sherif, could you tell me whether to leave the underscore for all identifiers or do it the way Liren suggested? |
Liren is correct here IMO we should only do it for streams which start with invalid chars |
… in the same raw table fix
…5149-destination-s3-fix
…5149-destination-s3-fix
…5664-snowflake-s3-copy-fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - could you also add a note in the docs about this behavior, and add a unit test for S3NameTransformer?
We might also need to update/publish the GCS destination since it relies on the same S3 utilities
...s/destination-s3/src/main/java/io/airbyte/integrations/destination/s3/S3NameTransformer.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Thank you.
Maybe add a unit test?
…5664-snowflake-s3-copy-fix
…5149-destination-s3-fix
@sherifnada, I fixed all the remarks, updated the documentation and added tests. the problem is that not all jobs are successful. can i merge this pull request without it? |
@andriikorotkov yup |
…5664-snowflake-s3-copy-fix
…bytehq/airbyte into akorotkov/5149-destination-s3-fix
…5149-destination-s3-fix
/test connector=connectors/destination-s3
|
/publish connector=connectors/destination-s3
|
/test connector=connectors/destination-s3
|
/publish connector=connectors/destination-s3
|
What
The bug is described in detail in task #5149. Issue seems to be that some fields in the source start with a numeric character.
How
To avoid an invalid character bug when writing to avro/parquet, the "_" prefix has been added.
Pre-merge Checklist
Expand the relevant checklist and delete the others.
New Connector
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
docs/SUMMARY.md
docs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampledocs/integrations/README.md
airbyte-integrations/builds.md
Airbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing./publish
command described hereUpdating a connector
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
docs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampleAirbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing./publish
command described hereConnector Generator
-scaffold
in their name) have been updated with the latest scaffold by running./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates
then checking in your changes