Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[coverage] Conformance findings: SESSION-017

Open
#491 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Quiet
Tech stack
typescript
Domain
api, backend

Research direction

Start with the SESSION-017 xfail test in the coverage PR diff under tests/ and reproduce it with SELECT 1 AS test_value. Trace the TypeScript driver path for ConnectionOptions.customHeaders and compare the request assertions for OpenSession and ExecuteStatement. Done means the test passes with both configured headers sent on session-open and the expected header sent on statement requests.

Written by the indexing model from the issue text.

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

  • SESSION-017 [thrift]: ConnectionOptions.customHeaders is accepted but silently dropped: no configured custom header appears on the Thrift OpenSession or ExecuteStatement request on the wire
    • failing test: custom HTTP headers are sent on every request — session open and statement [thrift] [xfail: driver drops customHeaders] (see the coverage PR diff under tests/)

Reproduce & Expected

SESSION-017 — Validates that connection-configured custom HTTP headers are actually SENT on every request the driver makes to the workspace — both the session-open request and subsequent statement requests — and t…

Reproduce:

SELECT 1 AS test_value

Expected (per the shared spec):

  • completes without an exception
  • result has exactly 1 row(s)
  • full assertion contract:
result:
- no_exception: true
- row_count: 1
protocol:
  thrift:
  - request_header:
      method: OpenSession
      name: X-Databricks-Spec-Header-A
      equals: session-017-a
  - request_header:
      method: OpenSession
      name: X-Databricks-Spec-Header-B
      equals: session-017-b
  - request_header:
      method: ExecuteStatement
      name: X-Databricks-Spec-Header-A
      equals: session-017-a
  sea:
  - request_header:
      operation: CreateSession
      name: X-Databricks-Spec-Header-A
      equals: session-017-a
  - request_header:
      operation: CreateSession
      name: X-Databricks-Spec-Header-B
      equals: session-017-b
  - request_header:
      operation: ExecuteStatement
      name: X-Databricks-Spec-Header-A
      equals: session-017-a

Context

Dominant language
TypeScript
Stars
36
Forks
50
Avg merge
13h 46m
Merged PRs (30d)
9

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from databricks/databricks-sql-nodejs

All issues in databricks/databricks-sql-nodejs

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.