Commit Graph

56 Commits

Author SHA1 Message Date
Pekka Enberg
9655b455ed Clippy you are so smart 2025-09-10 13:54:42 +03:00
Pekka Enberg
0287512a47 stress: Disable database reopen and reconnect
Nikita noticed that database reopen and reconnet cause most database
operations to return "database locked", which means we're not getting
the coverage we need.
2025-09-10 11:50:22 +03:00
Pekka Enberg
f61e26eeb1 stress: Add --vfs <io-method> command line option
...unlocks io_uring stress runs.
2025-09-04 19:15:01 +03:00
Pekka Enberg
2fcb9dd76f stress: Use CREATE TABLE IF NOT EXISTS to create schema
Different threads might attempt to create the same tables so avoid
spurious errors printed out to the logs with `CREATE TABLE IF NOT
EXISTS`.
2025-09-04 18:56:05 +03:00
Pekka Enberg
adb538e61a stress: Don't die if database is locked during integrity check 2025-09-04 18:48:12 +03:00
Pekka Enberg
46eb3e2761 stress: Don't hang if table creation fails 2025-08-20 13:50:04 +03:00
Jussi Saurio
86b1232268 chore: enable indexes by default 2025-08-01 15:44:56 +03:00
Pekka Enberg
b1c0ba4da0 stress: Allow multi-threading but warn about it 2025-07-25 16:53:02 +03:00
Jussi Saurio
dce355d9b7 test/stress&sim: enable indexes by default 2025-07-21 11:49:30 +03:00
Jussi Saurio
a48b6d049a Another post-rebase clippy round with 1.88.0 2025-07-12 19:10:56 +03:00
Jussi Saurio
1bda8bb47a stress clippy 2025-07-09 10:41:18 +03:00
Pekka Enberg
a1ab0f12ea stress: Make error reporting less verbose by default 2025-07-09 10:18:23 +03:00
Jussi Saurio
0762c8f780 stress: add a way to run stress with indexes enabled 2025-07-07 13:04:52 +03:00
Pekka Enberg
b9bba101d4 Rename limbo_stress to turso_stress 2025-07-04 12:53:58 +03:00
Pere Diaz Bou
cde7202981 Revert "Merge 'core: Disable ROLLBACK statement' from Pekka Enberg"
This reverts commit 8a13e4b02f, reversing
changes made to cc935f97cc.
2025-07-03 12:36:48 +02:00
Pekka Enberg
ca990e8fd1 Revert "Merge 'Rust binding improvements' from Pedro Muniz"
This reverts commit bd60cd214c, reversing
changes made to 74e48a3a8f because it
makes limbo_stress hang.
2025-07-03 12:28:10 +03:00
pedrocarlo
78107935b5 clippy 2025-06-30 15:29:09 -03:00
Pekka Enberg
2542cb2d03 core: Disable ROLLBACK statement
There's bad interaction with schema changes and `ROLLBACK`:

https://github.com/tursodatabase/turso/issues/1890

Disable the statement for now to avoid people hitting the issue.
2025-06-30 17:30:01 +03:00
Pekka Enberg
592ad81c86 Rename limbo crate to turso 2025-06-29 13:07:57 +03:00
Pekka Enberg
645c0bd796 core: Add Antithesis-aware turso_assert
This adds a `turso_assert` macro that is Antithesis aware when
`antithesis` feature flag is enabled. I did not yet convert any
call-sites to use it.

Co-authored-by: Nikita Sivukhin <sivukhin@turso.tech>
2025-06-29 11:46:18 +03:00
Pekka Enberg
bcaff77287 stress: Log reopen and reconnect
Stress runs have bunch of errors like this caused by reconnect in the
middle of a transaction:

```
Error executing query: Transaction error: cannot rollback - no transaction is active
```

This is fine, but let's add some logging that it's obvious why this
happens.
2025-06-29 09:48:47 +03:00
Pekka Enberg
2fc5c0ce5c Switch to runtime flag for enabling indexes
Makes it easier to test the feature:

```
$ cargo run --  --experimental-indexes
Limbo v0.0.22
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database
limbo> CREATE TABLE t(x);
limbo> CREATE INDEX t_idx ON t(x);
limbo> DROP INDEX t_idx;
```
2025-06-26 10:07:28 +03:00
Pekka Enberg
7c6fdbdfad stress: Thank you Clippy
Thank you for spotting these terrible, terrible programming mistakes.
2025-06-26 09:06:01 +03:00
Pekka Enberg
5be52a5260 stress: Interactive transactions 2025-06-25 20:02:09 +03:00
Jussi Saurio
4999d0ed95 stress: reopen db / reconnect to db every now and then 2025-06-24 16:34:13 +03:00
Jussi Saurio
27b2c2530b test/stress: only do integrity_check every 100 queries 2025-06-24 13:13:31 +03:00
pedrocarlo
13a55948d5 bring back some merge conflicts code 2025-06-23 23:01:28 -03:00
Nils Koch
2827b86917 chore: fix clippy warnings 2025-06-23 19:52:13 +01:00
Pekka Enberg
963d7b7daf stress: Improve progress reporting
A stress run can take a long time. Improve progress reporting to improve
DX.
2025-06-23 17:25:38 +03:00
Pekka Enberg
ea2b15a4de stress: Disable multi-threaded testing
Depends on https://github.com/tursodatabase/limbo/issues/1552
2025-06-19 09:31:43 +03:00
Pere Diaz Bou
9aecc1c903 disable constraints on stress test
without indexes constraints are useless
2025-06-18 12:45:04 +02:00
Pekka Enberg
d148f66670 stress: Make sure we run integrity check after every step
Spotted by Jussi.
2025-06-16 16:18:52 +03:00
Pekka Enberg
08bb4665b6 stress: Run integrity check for every iteration 2025-06-16 15:08:49 +03:00
Jussi Saurio
062469936d test/stress: use tempfile unless opts.db_file given 2025-06-04 10:02:27 +03:00
Pere Diaz Bou
968eeea75d Merge 'add stress test with 1 thread 10k iterations to ci' from Pere Diaz Bou
Add simple stress test run with 10k iteration to test `Delete`, `Update`
and `Insert` together.

Reviewed-by: Jussi Saurio <jussi.saurio@gmail.com>

Closes #1585
2025-05-29 14:16:56 +02:00
krishna sindhur
4b66bcb2a7 fix: stress test will ignore unique constraint violation 2025-05-29 15:11:43 +05:30
Pere Diaz Bou
650a5b8b1a skip writing to log on CI 2025-05-27 11:31:51 +02:00
Pere Diaz Bou
f2bc84e4ca add stress test with 1 thread 10k iterations to ci 2025-05-27 11:31:51 +02:00
Pekka Enberg
bde2d4f0a3 Fix Antithesis docker-compose.yaml 2025-04-26 09:14:24 +03:00
Pekka Enberg
2a5eb8e5bc stress: Make Clippy happy 2025-04-24 20:46:26 +03:00
eric-dinh-antithesis
27e15364c4 stress: suppress logfile since it's too big 2025-04-24 12:27:58 -04:00
eric-dinh-antithesis
b8885777dc stress: move sdk setup_complete from limbo_stress to docker-entrypoint 2025-04-24 12:27:05 -04:00
eric-dinh-antithesis
75ae5dbd13 stress: update docker-compose 2025-04-24 12:26:00 -04:00
Pekka Enberg
1d748de273 Merge 'btree index selection on rightmost pointer in balance_non_root' from Pere Diaz Bou
Reviewed-by: Jussi Saurio <jussi.saurio@gmail.com>

Closes #1297
2025-04-10 18:39:51 +03:00
Pekka Enberg
712a4caa22 stress: Fix per-thread query generation 2025-04-10 18:39:20 +03:00
Pere Diaz Bou
62d0febdb6 panic on corruption 2025-04-10 16:01:24 +02:00
Pere Diaz Bou
4755acb571 init tracing in stress tool 2025-04-10 16:01:24 +02:00
Pere Diaz Bou
cdcbcafbdd clipppy 2025-04-10 13:46:40 +02:00
Pere Diaz Bou
f795a9e331 Add support to load log file with stress test 2025-04-10 13:41:10 +02:00
Pekka Enberg
441cd637b5 stress: Make database file configurable 2025-04-10 11:59:25 +03:00