Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

[coverage] Conformance findings: STATEMENT-025

Ouverte
#495 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
sql, typescript
Domaine
backend, database

Piste de recherche

Commencez par le test xfail STATEMENT-025 dans le diff du PR de coverage sous tests/ et suivez le chemin de teardown de CloseOperation pour chaque opération du driver. Reproduisez le cas à deux requêtes, puis vérifiez qu’un close ayant échoué ne s’échappe pas du teardown et n’empêche pas la réutilisation de la connexion, tandis que les nombres de lignes attendus et les appels de protocole restent respectés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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

Langage dominant
TypeScript
Étoiles
37
Forks
51
Merge moyen
5 h 56 min
PR mergées (30 j)
9

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de databricks/databricks-sql-nodejs

Toutes les issues de databricks/databricks-sql-nodejs

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.