airbytehq / airbytehq/airbyte-api-python-sdk

Add SDK support for bounded Snowflake destination queries

Đang mở
#212 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Python
Star
61
Fork
27
Merge trung bình
4 phút
Pull request đã merge (30 ngày)
2

Mô tả

Track Python SDK propagation of `POST /v1/destinations/{destinationId}/query` from [Platform #19472](https://github.com/airbytehq/airbyte-platform-internal/pull/19472), paired with [Sonar #6544](https://github.com/airbytehq/sonar/pull/6544). This operation is separate from workspace skill documentation tracked in #211.

Regenerate from the updated public API definition and expose the operation in Destinations (`publicQueryDestination`, SDK alias `queryDestination`). Requests contain exactly one `statement` string, limited to 32 KiB UTF-8 within a 64 KiB JSON body.

The response contains ordered columns (`index`, `name`, `type`, `nullable`), positional rows of string-or-null cells, and a page with `returnedRows`, fixed `rowLimit: 1000`, fixed `byteLimit: 1048576`, `truncated`, an array of `row_limit`/`byte_limit`/`provider_partition` reasons, and required `nextCursor: null`. Preserve empty arrays, duplicate column labels, null cells and provider text without automatic native-value coercion. The full response is at most 1 MiB with at most 256 columns. There is no resumable cursor or total-row count.

Acceptance:

- Generate the operation and request/response models, and add serialization tests for positional null cells, duplicate labels, empty rows/reasons and the required null cursor.
- Verify all documented 401/403/404/413/422/501/502/503/504 problem responses.
- Ensure this query operation does not automatically retry an uncertain POST submission, including timeout, disconnect or retryable HTTP status; preserve other operations' existing retry behavior.
- Document workspace reader access, controlled availability, key-pair Snowflake destinations and separately approved query-role configuration. Other warehouse/auth variants are unsupported; availability is disabled by default.
- Release SDK support after the paired server change is ready, then link the released version here and in the Platform PR. SDK release and production activation are separate.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Start with the updated public API definition and trace POST /v1/destinations/{destinationId}/query through Destinations, publicQueryDestination, and the SDK alias queryDestination. Verify the generated models and serialization tests cover the listed null, duplicate-label, empty-array, cursor, size, and error cases, then check the no-retry behavior, documentation, and release-link requirements are complete.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
api, backend, documentation, testing
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
42/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.