Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

[coverage] Conformance findings: TRANSACTION-021

Offen
#488 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
48/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Bereich
databases

Rechercherichtung

Beginne mit dem xfail-Test namens „TRANSACTION-021 — driver bug: isolation metadata advertises no supported level“ im Coverage-PR unter tests und verfolge dann die Node.js-Session-getInfo-Behandlung für thrift und SEA. Erledigt ist die Aufgabe, wenn die Codes 26 und 72 wahrheitsgemäße Isolationsmetadaten zurückgeben, die mit der unterstützten Transaktionsebene übereinstimmen, sodass der xfail-Test grün wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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

  • TRANSACTION-021 [thrift]: getInfo(CLI_DEFAULT_TXN_ISOLATION=26) and getInfo(SQL_TXN_ISOLATION_OPTION=72) both error on thrift: the driver keeps no capability info table and forwards isolation info codes to the server, which does not answer them, so it advertises no transaction-isolation support while Delta runs serializable-class transactions (same under-reporting class as databricks-odbc#137)
    • failing test: TRANSACTION-021 — driver bug: isolation metadata advertises no supported level [xfail] (see the coverage PR diff under tests/)
  • TRANSACTION-021 [sea]: getInfo(CLI_DEFAULT_TXN_ISOLATION=26) and getInfo(SQL_TXN_ISOLATION_OPTION=72) both error on the SEA kernel path too: no driver-side capability info table, so the isolation codes are forwarded to a server that answers only CLI_SERVER_NAME/CLI_DBMS_NAME/CLI_DBMS_VER, leaving isolation capability unadvertised
    • failing test: TRANSACTION-021 — driver bug: isolation metadata advertises no supported level [xfail] (see the coverage PR diff under tests/)
  • TRANSACTION-021: getInfo(CLI_DEFAULT_TXN_ISOLATION=26) and getInfo(SQL_TXN_ISOLATION_OPTION=72) both error on thrift and sea: the driver keeps no capability info table and forwards isolation info codes to the server, which does not answer them, so it advertises no transaction-isolation support while Delta runs serializable-class transactions (same under-reporting class as databricks-odbc#137)

Reproduce & Expected

TRANSACTION-021 — Verify the driver's ISOLATION METADATA truthfully advertises the level it actually supports, and agrees with the connection attribute asserted by TRANSACTION-013/014.

Reproduce:

  • Read the driver's DEFAULT isolation level from its metadata surface (ODBC:
    SQLGetInfo(SQL_DEFAULT_TXN_ISOLATION); JDBC:
    DatabaseMetaData.getDefaultTransactionIsolation(); Node.js:
    session.getInfo(CLI_DEFAULT_TXN_ISOLATION)).
  • Read the SUPPORTED-levels capability (ODBC: SQLGetInfo(SQL_TXN_ISOLATION_OPTION) mask;
    JDBC: supportsTransactionIsolationLevel(level) probed per level).

Context

Vorherrschende Sprache
TypeScript
Sterne
36
Forks
50
Ø Merge
10 Std. 59 Min.
Gemergte PRs (30 T.)
11

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus databricks/databricks-sql-nodejs

Alle Issues in databricks/databricks-sql-nodejs

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.