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

Ordered-replay oracle: terminal error after a failed settle following truncate markers

Aberta
#2,224 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

@KyleAMathews já está trabalhando nisso.

Desde 22/10/2026.

  • #2231 de @KyleAMathews — aberto

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
typescript
Domínio
database, testing

Direção de pesquisa

Start by replaying the supplied seed and path with the given Vitest command, then read packages/db/tests/query/load-subset-replay-refinement-oracle.test.ts around checkOrderedReplay and fatalLoadFailed(). Compare the oracle model with the shown counterexample after truncateMarkers and a failed settle. Done means the production behavior and model agree on whether this history should produce a terminal error, and the deterministic replay passes.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Summary

The random campaign of packages/db/tests/query/load-subset-replay-refinement-oracle.test.ts › "Ordered windows across truncate replays › keeps the ordered window under load and release faults" found a counterexample on main at 30175be48 (#2194). The failure is deterministic when the seed is replayed.

Replay

cd packages/db
TANSTACK_DB_ORACLE_SEED=1817832416 \
TANSTACK_DB_ORACLE_PATH=115:1:2:2:2 \
TANSTACK_DB_ORACLE_PROPERTY=replay.ordered-window-faults \
pnpm vitest run tests/query/load-subset-replay-refinement-oracle.test.ts -t "release faults"

Counterexample (shrunk)

[
  [{ "type": "hold" }, { "type": "truncateMarkers" }, { "type": "settle", "ok": false }],
  { "direction": "asc", "offset": 0, "limit": 1, "ties": false, "peer": false,
    "joined": "none", "markerMode": "on-demand", "includes": true }
]
AssertionError: convergence: terminal error: expected false to be true
  at checkOrderedReplay (tests/query/load-subset-replay-refinement-oracle.test.ts:1875)

The shown window is in an error state, but the oracle's model has no failed load that explains it (fatalLoadFailed() is false). Either production shows a terminal error that the history does not justify, or the model is missing a case where a failed settle after truncate markers is fatal.

Where it was seen

CI for #2219 (job Test (db-1), run 39726325795). #2219 does not change @tanstack/db; CI tests that PR merged with main. The replay above fails with main's packages/db.

This issue was written by Isaac.

Linguagem predominante
TypeScript
Estrelas
3.9k
Forks
277
Merge médio
18h 7min
PRs com merge (30d)
228

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 TanStack/db

Todas as issues de TanStack/db

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.