[coverage] Conformance findings: STATEMENT-025
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 48/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- sql, typescript
調査の方向性
tests/ 配下の coverage PR diff にある STATEMENT-025 xfail テストから始め、ドライバーの操作ごとの CloseOperation teardown パスを追跡します。2 クエリのケースを再現し、その後、close の失敗が teardown の外に伝播せず、接続の再利用も妨げないことを確認します。同時に、期待される行数とプロトコル呼び出しが引き続き成立することも確認します。
索引モデルが issue の本文から書いたものです。
説明
Summary
Surfaced by the multi-language coverage fan-out while conformance-testing these SPEC-IDs against databricks/databricks-sql-nodejs. 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-nodejs) is fixed, then flips green as a tripwire.
Findings
- STATEMENT-025 [thrift]: Thrift: a failed per-operation teardown close (CloseOperation forced to 404) is not best-effort — the 404 propagates out of teardown as a raw THTTPException instead of being swallowed, so cleanup becomes a caller-visible error
- failing test:
STATEMENT-025 — failed teardown CloseOperation is swallowed and teardown continues [thrift](see the coverage PR diff undertests/)
- failing test:
Reproduce & Expected
STATEMENT-025 — Validates that a FAILING per-operation close RPC issued during teardown is BEST EFFORT: the failure must not propagate out of close/dispose, and must not abort the rest of teardown.
Reproduce:
SELECT id FROM range(1000)
SELECT 1
Expected (per the shared spec):
- result has exactly 1000 row(s)
- completes without an exception
- completes without an exception
- result has exactly 1 row(s)
- full assertion contract:
result:
- label: consumed
row_count: 1000
- label: teardown
no_exception: true
- label: reused_connection
no_exception: true
- label: reused_connection
row_count: 1
protocol:
thrift:
- call_min:
method: CloseOperation
min: 1
sea:
- call_min:
operation: CloseStatement
min: 1
Context
- The behavior was first fixed in a DIFFERENT driver — reference PR: https://github.com/adbc-drivers/databricks/pull/618 — which seeded the shared language-neutral spec. This issue tracks the same conformance gap in databricks/databricks-sql-nodejs; 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/1225
- 主要言語
- TypeScript
- スター
- 36
- フォーク
- 50
- 平均マージ
- 13時間 46分
- マージ済み PR(30日)
- 9
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
databricks/databricks-sql-nodejs のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
engineer-bot
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
databricks/databricks-sql-nodejs#274 · コメント 1 件 · リアクション 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
databricks/databricks-sql-nodejs の issue をすべて見る
似ている issue
-
VerificationGate: ATTRIBUTION quote guard never matches a normal quotation (\b around the quote) オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
danielmiessler/LifeOS#2234 ·
-
T: Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
-
Mend: dependency security vulnerability untriaged
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100