Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[coverage] Conformance findings: CUSTOMHDR-002

Aperta Adatta ai principianti
#541 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
74/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
api

Direzione di ricerca

Individua in src/ dove vengono assemblate le intestazioni delle richieste HTTP ExecuteStatement di SEA (cerca dove vengono impostati Accept-Encoding o le intestazioni predefinite di fetch/axios) e osserva come viene allegato Accept-Encoding: gzip. Usa il PR di riferimento databricks/databricks-jdbc#1723 per il comportamento previsto e il test xfail SEA requests decline response compression by default in databricks/databricks-driver-test#1765 come contratto di accettazione. Si considera completato quando le richieste ExecuteStatement inviano Accept-Encoding: identity mentre le altre operazioni restano invariate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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

  • CUSTOMHDR-002 [sea]: SEA statements client sends Accept-Encoding: gzip instead of the required explicit identity on ExecuteStatement, negotiating HTTP response compression over base64-of-LZ4-Arrow inline results
    • failing test: SEA requests decline response compression by default (see the coverage PR diff under tests/)
  • CUSTOMHDR-002: SEA statements client sends Accept-Encoding: gzip instead of the required explicit identity on ExecuteStatement, so it negotiates HTTP response compression on top of base64-encoded LZ4-compressed Arrow inline results (gzipping already-compressed bytes: wasted server and client CPU, and a gzipped JSON envelope that can be larger on the wire than the raw binary)

Reproduce & Expected

CUSTOMHDR-002 — SEA (Statement Execution API) inline results are LZ4-compressed Arrow, base64-encoded and wrapped in a JSON envelope.

Reproduce:

SELECT 1 AS value

Expected (per the shared spec):

  • result has exactly 1 row(s)
  • col 0, row 0 == 1 (type Int32)
  • full assertion contract:
result:
- row_count: 1
- column:
    index: 0
    row: 0
    type: Int32
    equals: 1
protocol:
  sea:
  - request_header:
      operation: ExecuteStatement
      name: Accept-Encoding
      equals: identity

Context

Lingua principale
TypeScript
Stelle
37
Fork
52
Merge medio
1g 47m
PR unite (30g)
10

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di databricks/databricks-sql-nodejs

Tutte le issue di databricks/databricks-sql-nodejs

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.