Slackbot
02/06/2025, 9:05 PMkapa.ai
02/06/2025, 9:05 PMprimary_key: None
is shown, which indicates that no primary key is detected in your source data. However, PyAirbyte still seems to be attempting to create an index for it. 5. The Convex destination connector code you shared shows that indexes are only added for streams with DestinationSyncMode.append_dedup
and when a primary key is present. However, it's possible that PyAirbyte is not correctly interpreting or passing this information. To troubleshoot this issue, you could try the following: 1. Ensure that your PyAirbyte version is up to date, as there might have been fixes for this issue in newer versions. 2. Try explicitly setting a primary key in your source data or configuration, if possible. This might help PyAirbyte correctly identify and handle the primary key. 3. If you have control over the PyAirbyte code or can modify the Convex destination connector, you could add a check to prevent index creation when the primary key is None: python if configured_stream.destination_sync_mode == DestinationSyncMode.append_dedup and configured_stream.primary_key and len(configured_stream.primary_key) > 0: indexes_to_add[configured_stream.stream.name] = configured_stream.primary_key
4. You could also try to modify the index naming convention in the Convex destination connector to avoid using underscores at the beginning of index names. 5. If possible, compare the exact configuration and data flow between your working Airbyte OSS setup and the PyAirbyte setup to identify any differences in how the primary key and sync modes are being handled. If these suggestions don't resolve the issue, it might be worth raising this as a potential bug with the PyAirbyte maintainers, as it seems to be a discrepancy between the PyAirbyte and Airbyte OSS implementations.