[coverage] Conformance findings: CUSTOMHDR-002
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
調査の方向性
Goクライアントで、ExecuteStatement / Statement Execution APIリクエストに対する Accept-Encoding やgzipトランスポートの設定箇所を検索し(Accept-Encoding、gzip、identity でgrep)、HTTPクライアントの圧縮設定がどのように構成されているかを確認してください。修正は、仕様の要求通りExecuteStatementで identity を送信することです。完了の条件は、カバレッジPR(databricks/databricks-driver-test#1765)の TestSEARequestsDeclineResponseCompressionByDefault がこのドライバーに対してパスすることです。参照PR databricks/databricks-jdbc#1723 が別の言語での期待される動作を示しています。
索引モデルが issue の本文から書いたものです。
説明
Summary
Surfaced by the multi-language coverage fan-out while conformance-testing these SPEC-IDs against databricks/databricks-sql-go. Each finding is committed as an expected-failure (xfail) test in the coverage PR — the test asserts the CORRECT (post-fix) behavior and stays red until THIS driver (databricks/databricks-sql-go) is fixed, then flips green as a tripwire.
Findings
- CUSTOMHDR-002 [sea]: SEA statements client sends
Accept-Encoding: gzipon ExecuteStatement instead of the explicitidentitydefault, gzipping already-compressed base64-of-LZ4-Arrow inline results (wasted CPU on both ends; the gzipped JSON envelope can be larger on the wire than the raw bytes)- failing test:
TestSEARequestsDeclineResponseCompressionByDefault(see the coverage PR diff undertests/)
- failing test:
Reproduce & Expected
CUSTOMHDR-002 — SEA (Statement Execution API) inline results are LZ4-compressed Arrow, base64-encoded and wrapped in a JSON envelope.
Reproduce:
SELECT 1 AS value
Expected (per the shared spec):
- result has exactly 1 row(s)
- col 0, row 0 == 1 (type Int32)
- full assertion contract:
result:
- row_count: 1
- column:
index: 0
row: 0
type: Int32
equals: 1
protocol:
sea:
- request_header:
operation: ExecuteStatement
name: Accept-Encoding
equals: identity
Context
- The behavior was first fixed in a DIFFERENT driver — reference PR: https://github.com/databricks/databricks-jdbc/pull/1723 — which seeded the shared language-neutral spec. This issue tracks the same conformance gap in databricks/databricks-sql-go; the reference PR is for cross-referencing the intended behavior, NOT a change to this repo.
- Coverage PR carrying the reproducing xfail test(s): https://github.com/databricks/databricks-driver-test/pull/1765
- 主要言語
- Go
- スター
- 53
- フォーク
- 67
- 平均マージ
- 1日 2時間
- マージ済み PR(30日)
- 8
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
databricks/databricks-sql-go のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 64/100
databricks/databricks-sql-go#490 ·
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
databricks/databricks-sql-go#481 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
databricks/databricks-sql-go#480 ·
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
databricks/databricks-sql-go#475 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 65/100
databricks/databricks-sql-go#474 ·
メンテナーはふだん 1 日以内に返信
databricks/databricks-sql-go の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
SocialGouv/iterion#2369 ·
メンテナーはふだん 1 日以内に返信
-
area/ci bug priority/p3
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
documentation help wanted needs-triage
難易度 1/5 1〜3時間 初心者へのやさしさ 75/100
hivecommons/hive#11606 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
documentation
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
gravitational/teleport#69869 ·
-
category:agent
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
LanternOps/breeze#8493 ·
メンテナーはふだん 1 日以内に返信