-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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 Redshift: deprecate old migration Java code #25698
Destination Redshift: deprecate old migration Java code #25698
Conversation
Before Merging a Connector Pull RequestWow! What a great pull request you have here! 🎉 To merge this PR, ensure the following has been done/considered for each connector added or updated:
If the checklist is complete, but the CI check is failing,
|
This comment was marked as outdated.
This comment was marked as outdated.
Affected Connector ReportNOTE
|
Connector | Version | Changelog | Publish |
---|
- See "Actionable Items" below for how to resolve warnings and errors.
❌ Destinations (23)
Connector | Version | Changelog | Publish |
---|---|---|---|
destination-azure-blob-storage |
0.2.0 |
✅ | ✅ |
destination-clickhouse |
0.2.3 |
✅ | ✅ |
destination-clickhouse-strict-encrypt |
0.2.3 |
🔵 (ignored) |
🔵 (ignored) |
destination-databricks |
1.0.2 |
✅ | ✅ |
destination-dynamodb |
0.1.7 |
✅ | ✅ |
destination-exasol |
0.1.1 |
✅ | ✅ |
destination-gcs |
0.2.17 |
❌ (changelog missing) |
✅ |
destination-mariadb-columnstore |
0.1.7 |
✅ | ✅ |
destination-mssql |
0.1.23 |
✅ | ✅ |
destination-mssql-strict-encrypt |
0.1.23 |
🔵 (ignored) |
🔵 (ignored) |
destination-mysql |
0.1.20 |
✅ | ✅ |
destination-mysql-strict-encrypt |
❌ 0.1.21 (mismatch: 0.1.20 ) |
🔵 (ignored) |
🔵 (ignored) |
destination-oracle |
0.1.19 |
✅ | ✅ |
destination-oracle-strict-encrypt |
0.1.19 |
🔵 (ignored) |
🔵 (ignored) |
destination-postgres |
0.3.27 |
✅ | ✅ |
destination-postgres-strict-encrypt |
0.3.27 |
🔵 (ignored) |
🔵 (ignored) |
destination-redshift |
0.4.7 |
✅ | ✅ |
destination-rockset |
0.1.4 |
✅ | ✅ |
destination-snowflake |
0.4.63 |
✅ | ✅ |
destination-starburst-galaxy |
0.0.1 |
✅ | ✅ |
destination-teradata |
0.1.1 |
✅ | ✅ |
destination-tidb |
0.1.1 |
✅ | ✅ |
destination-yugabytedb |
0.1.1 |
✅ | ✅ |
- See "Actionable Items" below for how to resolve warnings and errors.
👀 Other Modules (1)
- base-normalization
Actionable Items
(click to expand)
Category | Status | Actionable Item |
---|---|---|
Version | ❌ mismatch |
The version of the connector is different from its normal variant. Please bump the version of the connector. |
⚠ doc not found |
The connector does not seem to have a documentation file. This can be normal (e.g. basic connector like source-jdbc is not published or documented). Please double-check to make sure that it is not a bug. |
|
Changelog | ⚠ doc not found |
The connector does not seem to have a documentation file. This can be normal (e.g. basic connector like source-jdbc is not published or documented). Please double-check to make sure that it is not a bug. |
❌ changelog missing |
There is no chnagelog for the current version of the connector. If you are the author of the current version, please add a changelog. | |
Publish | ⚠ not in seed |
The connector is not in the seed file (e.g. source_definitions.yaml ), so its publication status cannot be checked. This can be normal (e.g. some connectors are cloud-specific, and only listed in the cloud seed file). Please double-check to make sure that it is not a bug. |
❌ diff seed version |
The connector exists in the seed file, but the latest version is not listed there. This usually means that the latest version is not published. Please use the /publish command to publish the latest version. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
072b38c
to
0547322
Compare
/test connector=connectors/destination-redshift
Build PassedTest summary info:
|
sqlOperations.onDestinationCloseOperations(database, writeConfigs); | ||
} | ||
}; | ||
private static OnCloseFunction onCloseFunction() { |
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.
This is not actually doing anything, but leaving it to not break any functionality that expects a non-null OnCloseFunction.
@@ -16,5 16,5 @@ ENV APPLICATION destination-redshift | |||
|
|||
COPY --from=build /airbyte /airbyte | |||
|
|||
LABEL io.airbyte.version=0.4.6 | |||
LABEL io.airbyte.version=0.4.7 |
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.
Not sure if this is right.
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.
This seems right since this is a bug fix but it's not a user-facing functionality in a backwards compatible manner
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.
Ah ok I wasn't sure if this actually fell under a major version change
data that was previously being synced will no longer be synced
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.
If anything the checkpointing changes for JDBC connectors should have been a major version bump 😰
import org.jooq.Record; | ||
import org.jooq.Result; | ||
import org.junit.jupiter.api.Disabled; | ||
import org.junit.jupiter.api.Test; | ||
|
||
/** | ||
* Integration test testing the {@link RedshiftInsertDestination}. As the Redshift test credentials | ||
* contain S3 credentials by default, we remove these credentials. | ||
*/ | ||
public class RedshiftInsertDestinationAcceptanceTest extends RedshiftStagingS3DestinationAcceptanceTest { |
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.
Do we still need this file and RedshiftS3StagingInsertDestinationAcceptanceTest.java
below? There are no tests inside anymore.
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.
Yes, because they will execute the tests using the config.json
tests for RedshiftInsertDestinationAcceptanceTest
, as for RedshiftS3StagingInsertDestinationAcceptanceTest
that doesn't seem necessary since the same config of config_staging.json
will be used within RedshiftStagingS3Destination
/rant RedshiftInsert
should not be extending from RedshiftStagingS3
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.
🤷♀️ ok I'll leave RedshiftS3StagingInsertDestinationAcceptanceTest
to mirror RedshiftInsertDestinationAcceptanceTest
to avoid confusion why there's one and not the other.
0547322
to
7929287
Compare
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
/publish connector=connectors/destination-redshift |
/publish connector=connectors/destination-redshift
if you have connectors that successfully published but failed definition generation, follow step 4 here |
) * first pass * update changelog * auto-bump connector version * bump metadata.yaml --------- Co-authored-by: Octavia Squidington III <[email protected]>
What
closes #25519
Functionality was added over a year ago (#12064) to migrate Redshift tables from
VARCHAR
type toSUPER
type. Tables have now beenSUPER
type by default for awhile, so we are removing this old migration code that is no longer needed.How
Delete migration-related Java code. Normalization code will be deleted in #25771.
Recommended reading order
x.java
🚨 User Impact 🚨
The set of impacted users is expected to be very small: anyone who has been running old versions of Redshift and Airbyte for over a year and is still using
VARCHAR
tables with likely stale data. Anyone who is impacted can manually migrate their Redshift tables if needed. The team voted to remove this functionality as it was implemented over a year ago.Pre-merge Actions
Expand the relevant checklist and delete the others.
Updating a connector
Community member or Airbyter
Airbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.