Skip to main content

Chift Migration Guide

Upgrading to 0.1.0

note

This change only alters the data you receive if your destination is S3 or GCS in Avro or Parquet format and you read fields inside connections.data or syncs.mappings[].sub_mappings[].target_field.display_condition. Destinations that store objects as JSON, VARIANT, or JSONB columns (BigQuery, Snowflake, Postgres, Iceberg-based destinations such as S3 Data Lake) keep the same column contents. For them, refreshing the source schema is the only step.

This release adds the executions stream and changes how two objects in the connections and syncs streams are declared. That second part is breaking for anyone reading those objects as nested columns.

If you don't upgrade by 2026-10-31, Airbyte disables connections that still use 0.0.x until you upgrade them manually.

What changed

Two objects carry keys defined by the third-party integration rather than by Chift's API contract, but the schema enumerated a fixed subset of them:

ObjectWas declared asIs now
connections.dataan object with a single folder_id propertya schemaless object
syncs.mappings[].sub_mappings[].target_field.display_conditionan object enumerating the ! and in operators and one nesting shapea schemaless object

Chift's OpenAPI contract declares both objects free-form (additionalProperties: true, no fixed properties). On destinations that build typed records from the declared schema (S3 and GCS in Avro or Parquet format), the object column contained only the enumerated keys. Every other key was dropped silently, and the loss wasn't recorded in _airbyte_meta.changes[]. display_condition is a condition expression tree whose operator set is open-ended, so it could never be enumerated correctly.

A schemaless object is serialized to a JSON string on those destinations, which preserves every key. No data is lost: the full object is kept. On Avro and Parquet, the nested data.folder_id record field is replaced by the data string. Streams other than connections and syncs are unaffected.

What you need to do

Which steps apply depends on your destination.

S3 or GCS in Avro or Parquet format. The connections.data and syncs.mappings[].sub_mappings[].target_field.display_condition columns change from a record with a fixed set of fields to a string containing the full JSON object.

  1. Refresh the source schema for the connection.
  2. If the connection replicates connections or syncs in Full refresh | Append mode, clear both streams so the prefix does not mix record-typed and string-typed files. Both streams are full refresh, so the next sync re-supplies every record. Full refresh | Overwrite connections are rebuilt on the next sync and need no clear.
  3. Update any reader that accessed data.folder_id or the display_condition sub-fields as nested record fields to parse the JSON string instead. For example, in Athena or Trino, json_extract_scalar(data, '$.folder_id'); in Spark, get_json_object(data, '$.folder_id'). For display_condition, use the JSON path of the operator you care about, such as $."in" or $."!".

BigQuery, Snowflake, Postgres, and Iceberg-based destinations (including S3 Data Lake). These destinations already store the whole object in a JSON, VARIANT, or JSONB column, so the column contents don't change. Refresh the source schema so the connection's catalog matches the new declared shape. You don't need to clear the streams or change your queries; JSON extraction such as JSON_VALUE(data, '$.folder_id') (BigQuery), data:folder_id::string (Snowflake), or data ->> 'folder_id' (Postgres) keeps working as before.

Connector upgrade guide

Review the following information to prepare for and execute your upgrade.

Review the changelog

Before updating a connector, review the changelog to understand the changes and their potential impact on your existing connections. Find the changelog for any connector by navigating to the bottom of the documentation for that connector. Major version releases also include a migration guide.

Plan for major updates

Major updates may require you to adjust connection settings or even make changes to your data pipelines. Allocate enough time and resources for this. Use the migration guide to ensure your transition process goes smoothly.

Airbyte provides tooling that guarantees safe connector version bumps and enforces automated version bumps for minor and patch updates. You always need to manually update for major version bumps.

Self-managed plans: pin a specific version if you can't update

If you're unable to upgrade to the new version of a connector, you can pin that connector to a specific version.

  1. In the navigation bar:

    • If you're on the Self-Managed Enterprise plan, click Organization settings > Sources/Destinations.

    • If you're on any other plan, click Workspace settings > Sources/Destinations.

  2. Edit the entry for the connector you want to pin.

  3. Set the Default Version to the version you want to use.

Self-managed plans: update the local connector image

If you self-manage Airbyte, you must manually update the connector image in your local registry before proceeding with the migration. Follow the steps below.

  1. In the navigation bar:

    • If you're on the Self-Managed Enterprise plan, click Organization settings > Sources/Destinations.

    • If you're on any other plan, click Workspace settings > Sources/Destinations.

  2. Find the connector you want to update in the list of connectors.

    note

    Airbyte lists two versions, the current in-use version and the latest version available.

  3. Click Change to update your OSS version to the latest available version.

Update the connector version

Update each instance of the connector separately. If you have multiple instances of a connector, updating one doesn't affect the others.

  1. In the navigation bar:

    • If you're on the Self-Managed Enterprise plan, click Organization settings > Sources/Destinations.

    • If you're on any other plan, click Workspace settings > Sources/Destinations.

  2. Select the instance of the connector you wish to upgrade.

  3. Select Upgrade.

  4. Follow the prompt to confirm you are ready to upgrade to the new version.

Clear data from affected streams

After upgrading a connector with a breaking change, you must refresh affected schemas and clear your data.

  1. In the nav bar, click Connections.

  2. Find the connection affected by the upgrade.

  3. Click the Schema tab.

  4. Click Refresh source schema (looks like ). When Airbyte finishes, it shows you any detected schema changes.

  5. Click OK.

  6. Click Save changes

  7. Clear the data for the streams affected by this upgrade.

Once the clear is complete, you can begin syncing your data again as usual.