tursodatabase/libsql

Recover client from server restarts when handling batons?

Open

#1,856 opened on 2024年11月29日

GitHub で見る
 (2 comments) (0 reactions) (0 assignees)C (490 forks)batch import
enhancementhelp wantedquestionremote protocol

Repository metrics

Stars
 (16,744 stars)
PR merge metrics
 (平均マージ 23h 19m) (30d で 1 merged PR)

説明

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

コントリビューターガイド