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

[coverage] Conformance findings: CUSTOMHDR-002

Aberta Para iniciantes
#541 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
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
74/100
Tipo de issue
Bug
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
typescript
Domínio
api

Direção de pesquisa

Localize em src/ onde os cabeçalhos das requisições HTTP ExecuteStatement do SEA são montados (procure onde Accept-Encoding ou os cabeçalhos padrão de fetch/axios são definidos) e veja como Accept-Encoding: gzip é anexado. Use o PR de referência databricks/databricks-jdbc#1723 para o comportamento pretendido e o teste xfail SEA requests decline response compression by default em databricks/databricks-driver-test#1765 como contrato de aceitação. Considera-se concluído quando as requisições ExecuteStatement enviam Accept-Encoding: identity enquanto as demais operações permanecem inalteradas.

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

  • 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

Linguagem predominante
TypeScript
Estrelas
37
Forks
52
Merge médio
1d 47min
PRs com merge (30d)
10

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.