Commit Graph

5351 Commits

Author SHA1 Message Date
eric-dinh-antithesis
dbdea044c2 copy instrumented image and symbols in Dockerfile.antithesis 2025-06-19 17:08:25 -04:00
Pekka Enberg
74fc789719 antithesis: Add integritycheck parallel driver 2025-06-19 14:40:38 +03:00
Pekka Enberg
7684dc98d0 Merge ' op_transaction end_read_tx in case of begin_write_tx is busy ' from Pere Diaz Bou
In case of starting a write txn, we always start by starting a read txn.
If we don't end_read_tx then it will never release locks.
Furthermore, we add some concurrent tests that catched this issue.
The idea is quite simple: write with 4 concurrent writers and once all
are finsihed, check the count of rows written is correct.

Closes #1777
2025-06-19 14:27:59 +03:00
Pekka Enberg
b2ee030846 github: Antithesis workflow fixes 2025-06-19 14:25:17 +03:00
Pekka Enberg
032a523d1d github: Add nightly Antithesis run 2025-06-19 14:22:24 +03:00
Pekka Enberg
b33b4edc5f scripts: Use ANTITHESIS_REGISTRY_KEY for Antithesis login
We can now use that as Github actions secret too.
2025-06-19 14:22:24 +03:00
Pekka Enberg
68d4389ee9 antithesis: Remove PRIMARY KEY and UNIQUE constraints
...we don't have indexing enabled by default so drop them.
2025-06-19 13:48:12 +03:00
Pekka Enberg
e28b58bb6a Merge 'antithesis-tests: Make test drivers robust when database is locked' from Pekka Enberg
If multiple processes access the same database file concurrently, Limbo
fails with:
```
LockingError("Failed locking file. File is locked by another process
```
Make test driver robust against that.

Closes #1769
2025-06-19 13:13:01 +03:00
Pere Diaz Bou
e681e32198 fix test_limbo_open_read_only 2025-06-19 10:56:01 +02:00
Pekka Enberg
e59c5185dd Limbo 0.0.22 2025-06-19 10:40:29 +03:00
Pekka Enberg
782ee09279 Update CHANGELOG.md 2025-06-19 10:39:01 +03:00
Pekka Enberg
419ddf0cfa antithesis-tests: Make test drivers robust when database is locked
If multiple processes access the same database file concurrently, Limbo fails with:

```
LockingError("Failed locking file. File is locked by another process
```

Make test driver robust against that.
2025-06-19 10:14:18 +03:00
Pekka Enberg
627e7daa65 Limbo 0.0.22-pre.5 2025-06-19 09:49:24 +03:00
Pekka Enberg
e878c0a871 Merge 'cli: Remove extra binary' from Pekka Enberg
The `cargo-dist` tool attempts to find it but because we never build it,
packaging fails. Remove the extra binary. Probably better to work
towards making experimental indexes a runtime flag instead.

Closes #1779
2025-06-19 09:46:53 +03:00
Pekka Enberg
37566d29cc cli: Remove extra binary
The `cargo-dist` tool attempts to find it but because we never build it,
packaging fails. Remove the extra binary. Probably better to work
towards making experimental indexes a runtime flag instead.
2025-06-19 09:41:01 +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
Pekka Enberg
b07821374f Add Antithesis to README.md 2025-06-18 21:26:23 +03:00
Pere Diaz Bou
65372994d4 op_transaction end_read_tx in case of begin_write_tx is busy
In case of starting a write txn, we always start by starting a read txn.
If we don't end_read_tx then it will never release locks.
2025-06-18 17:40:53 +02:00
Pere Diaz Bou
10d02525d6 introduce concurrent write test
The idea is quite simple: write with 4 concurrent writers and once all
are finsihed, check the count of rows written is correct.
2025-06-18 17:40:53 +02:00
Pekka Enberg
27a164bd04 Limbo 0.0.22-pre.4 2025-06-18 14:58:54 +03:00
Pekka Enberg
14da7defbf cli: Exclude experimental binary from dist package 2025-06-18 14:58:48 +03:00
Pere Diaz Bou
f264cdadb1 Merge 'disable constraints on stress test' from Pere Diaz Bou
without indexes constraints are useless
Fixes #1774

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

Closes #1776
2025-06-18 13:24:14 +02:00
Pekka Enberg
111d9ad79f Limbo 0.0.22-pre.3 2025-06-18 14:14:00 +03:00
Pekka Enberg
a108f146dd github: Disable compat tests with indexes on
...failing currently.
2025-06-18 13:52:14 +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
cf78479850 Merge 'github: Node 18 is EOL' from Pekka Enberg
Closes #1772
2025-06-18 13:38:50 +03:00
Pekka Enberg
55b660210c Limbo 0.0.22-pre.2 2025-06-18 08:45:39 +03:00
Pekka Enberg
581d143595 github: Disable TPC-H benchmarks from CI
With indexing disabled, TPC-H benchmarks take forever to run. Disable
them for now.
2025-06-18 08:43:54 +03:00
Pekka Enberg
aee8ee6d3a Merge ' index_experimental flag to enable index usages ' from Pere Diaz Bou
Currently indexes are the bulk of the problem with `UPDATE` and
`DELETE`, while we work on fixing those it makes sense to disable
indexing since they are not stable. We want to try to make everything
else stable before we continue with indexing.
There is a small hack in Tcl tests where we check `if {[info exists
::env(SQLITE_EXEC)] && $::env(SQLITE_EXEC) eq "scripts/limbo-
sqlite3-index-experimental"} {`
to ensure we run those tests only with the script index-experimental.

Closes #1758
2025-06-18 08:42:28 +03:00
Pekka Enberg
5deaabb379 github: Node 18 is EOL 2025-06-18 08:38:04 +03:00
Pere Diaz Bou
871eee109f test_limbo_cli use SQLITE_EXEC if possible 2025-06-17 21:26:32 +02:00
Pekka Enberg
4b208f819e Merge 'antithesis: Build Python package from sources' from Pekka Enberg
Fixes #1630

Closes #1768
2025-06-17 22:14:54 +03:00
Pekka Enberg
4cbea9fcbb Add Blacksmith to README.md
Limbo's CI is powered by Blacksmith!
2025-06-17 22:14:11 +03:00
Pere Diaz Bou
34592b172c run index tests with flags instead of ignore 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
b86491c54f more integer pk in java tests 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
de1f29dadf core_tester index fuzz tests with flag 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
26eb63b09f use integer pk in java tests 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
4514bd5681 use integer primary key on test_in_memory_fetchone_select_all_users 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
814f68043d filter out sqlite3 executable too 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
e90996783b clippy 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
878e39eee0 skip python write tests without indexes 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
032337745b disable more tests without index 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
4b88d47aba disable last unique_insert tcl tests 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
48ae6766d7 fix comp errors 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
133827e9f2 fix delete test with primary key 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
f91d2c5e99 fix disable in write cases 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
b5f2f375b8 disable alter, delete, create index, insert and update for indexes 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
63b37ea6f2 re-enable tests that work with indexes 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
bcbce15d7b disable UNION deduplication 2025-06-17 19:33:23 +02:00
Pere Diaz Bou
dde93e8deb disable distinct without index_experimental
distinct uses indexes, therefore we need to disable them
2025-06-17 19:33:23 +02:00