Open penberg opened 10 months ago
Any update on this?
Hey there! I am using Turso with Drizzle on my backend, and have been running into this error quite frequently today...
This happened with my server, but also during migrations, where the connection is very short-lived. It seems that this is an issue specifically with transactions - I suspect Drizzle's migrations use transactions, and so do some parts of my backend. I haven't been having any issues with operations outside of a transaction.
Is there any plan to address this?
updates here? it seems to only happen sometimes
We are seeing this error in production about every 2 days. We don't have long lived clients as each GCP Cloud Function creates it's own client. We are using a transaction in the section of code that throws LibsqlError: SERVER_ERROR: Server returned HTTP status 400: Received an invalid baton
.
@libsql/client
version 0.5.6
const transaction = await client.transaction('write');
await transaction.execute({
sql: 'INSERT INTO secret(key, value) VALUES(?,?) ON CONFLICT(key) DO UPDATE SET value=? WHERE key=?',
args: [key, value, value, key]
});
await transaction.commit();
Hey all. It is still happening on version 0.6.2. Did someone figure out a workaround? Not using transactions is not a real solution
Happens for every transaction from Vercel in our case
Running on Laravel with Turso
php artisan migrate:fresh --seed
causes this error to happen after a while. Any solutions?
HTTP request returned status code 400:
Received an invalid baton
(Connection: turso, SQL: insert into "human_names" ("name", "type", "gender", "updated_at", "created_at") values (Grant, last_name, male, 2024-07-04 19:37:16, 2024-07-04 19:37:16))
Happens for many transaction when using libsql_experimental
If you have a long-lived client object, the server can start complaining about the baton: