Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[coverage] Conformance findings: STATEMENT-025

Aberta
#495 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
48/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
sql, typescript
Domínio
backend, database

Direção de pesquisa

Comece pelo teste xfail STATEMENT-025 no diff da PR de coverage em tests/ e rastreie o caminho de teardown de CloseOperation por operação do driver. Reproduza o caso de duas consultas e, em seguida, verifique se um close com falha não escapa do teardown nem impede a reutilização da conexão, enquanto as contagens de linhas esperadas e as chamadas de protocolo continuam sendo mantidas.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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 under tests/)

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

Linguagem predominante
TypeScript
Estrelas
37
Forks
51
Merge médio
5h 56min
PRs com merge (30d)
9

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de databricks/databricks-sql-nodejs

Todas as issues de databricks/databricks-sql-nodejs

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.