tursodatabase/libsql

Recover client from server restarts when handling batons?

Open

#1.856 aberto em 29 de nov. de 2024

Ver no GitHub
 (2 comments) (0 reactions) (0 assignees)C (490 forks)batch import
enhancementhelp wantedquestionremote protocol

Métricas do repositório

Stars
 (16.744 stars)
Métricas de merge de PR
 (Mesclagem média 23h 19m) (1 fundiu PR em 30d)

Description

Currently, I think that when a client holds a server-issued baton and attempts to send it back after a server restart, the request fails with a BatonInvalid error. This error breaks the client's workflow and requires manual intervention.

If this turns out to be the case, let's fix that so thatif a BatonInvalid error occurs and no transaction is in progress, the client should:

  • Automatically restart the stream
  • Obtain a new baton from the server
  • Continue normal operation

Guia do colaborador