Jussi Saurio
a48b6d049a
Another post-rebase clippy round with 1.88.0
2025-07-12 19:10:56 +03:00
Nils Koch
1a91966c7e
fix clippy errors for rust 1.88.0 (manual fix)
2025-07-12 18:58:55 +03:00
Nils Koch
828d4f5016
fix clippy errors for rust 1.88.0 (auto fix)
2025-07-12 18:58:41 +03:00
pedrocarlo
d21a629cd9
rollback simulator table when we encounter a Rollback query
2025-07-07 13:37:51 -03:00
pedrocarlo
7c8737e292
do not shadow + continue the assertion on injected fault error
2025-07-07 11:53:45 -03:00
Pere Diaz Bou
897f13c173
add interactive transaction to property insert-values-select
2025-07-04 15:50:46 +02:00
pedrocarlo
ac34928d53
fix delete shadowing + build result rows from fsync query
2025-06-29 12:44:13 -03:00
Pekka Enberg
725c3e4ddc
Rename limbo_sqlite3_parser crate to turso_sqlite3_parser
2025-06-29 12:34:46 +03:00
Pekka Enberg
53ba3ff926
Rename limbo_core crate to turso_core
2025-06-29 09:59:17 +03:00
Jussi Saurio
cff96964df
Fix singlequote escaping and unescaping
2025-06-24 14:58:25 +03:00
Nils Koch
2827b86917
chore: fix clippy warnings
2025-06-23 19:52:13 +01:00
pedrocarlo
edc1c6fbc6
force predicate in SelectSelectOptimizer to evaluate to a boolean value
2025-06-11 11:32:45 -03:00
pedrocarlo
b2fd5b9cd1
change CompoundPredicate to generate a true_clause for a single row and not for column_values + tests
2025-06-11 11:32:45 -03:00
pedrocarlo
c82f4fa0bb
adjust creation of columns to avoid name collision
2025-06-11 11:32:18 -03:00
pedrocarlo
1410aaa0be
mostly fix binary predicate generation
2025-06-11 11:32:18 -03:00
pedrocarlo
b60037255b
small fix to binary true predicate + fuzz test for true_binary_predicate. More tests to come
2025-06-11 11:32:18 -03:00
pedrocarlo
3068c3398e
add more operators execution for binary
2025-06-11 11:32:18 -03:00
pedrocarlo
3e1a4bed8b
namespace exec_like to Value + complete the test logic for Unary Operators
2025-06-11 11:32:18 -03:00
pedrocarlo
6b58c4a33f
migrate to using limbo_core::Value inside Simulator
2025-06-11 11:32:18 -03:00
pedrocarlo
2424b1b1c9
add unary to expr_to_value
2025-06-11 11:32:18 -03:00
pedrocarlo
7385ac96ec
clippy
2025-06-11 11:32:18 -03:00
pedrocarlo
62e7b1f64c
fix generation for string literal in a different place + simplify test assertion
2025-06-11 11:32:17 -03:00
pedrocarlo
470093ca03
fix generation for string literal
2025-06-11 11:32:17 -03:00
pedrocarlo
fac4b4e6fb
fix generation and expr evaluation
2025-06-11 11:32:17 -03:00
pedrocarlo
9f2608bded
remove previous predicate struct and rewrite generation with the new the struct
2025-06-11 11:32:17 -03:00
pedrocarlo
3e369b9dde
drop in replacement for predicate that uses ast::Expr under the hood
2025-06-11 11:32:17 -03:00
pedrocarlo
f535ff1398
add optional serde implementations for parser ast
2025-06-11 11:32:17 -03:00
pedrocarlo
63cf648e2e
filter for the tables that the failing query depended on + second pass after query clear
2025-06-11 02:52:26 -03:00
Jussi Saurio
5680326881
sim: add CREATE INDEX to interactions
2025-06-04 09:21:59 +03:00
Pere Diaz Bou
8ec7e616b4
simulator: switch to tracing, run io.run_once and add update queries
...
* Without tracing crate we cannot log anything that happens in
limbo_core
* IO never ran in step loop inside simulator.
* Added update queries (which currently loop forever for some reason I'm
debugging).
2025-05-30 10:57:13 +02:00
alpaylan
747b6d15e3
add NoREC optimizer testing property
2025-02-10 15:42:49 -05:00
alpaylan
47420db16f
- implement DROP TABLE support, toggled off from generation for now
...
- clean up the query generation/printing by separating it into different files and removing duplications
2025-02-09 09:28:33 -05:00
alpaylan
9c339cb8e1
wip: add delete support to the simulator
2025-02-07 08:19:00 -05:00
alpaylan
8490184644
add LIKE generation for supporting clauses
2025-02-01 12:34:31 -05:00
alpaylan
48d091e112
add insert into <table> <select> generation
2025-02-01 10:40:07 -05:00
alpaylan
f5139f086e
add select-limit property
2025-01-27 01:24:20 +03:00
alpaylan
e476b9f697
implement watch mode
...
- add `--watch` flag
- start saving seeds in persistent storage
- make a separate version of execution functions that use `vector of interaction` instead of `InteractionPlan`
2025-01-18 23:54:03 +03:00
alpaylan
28cde537a8
this commit;
...
- makes interaction plans serializable
- fixes the shadowing bug where non-created tables were assumed to be created in the shadow tables map
- makes small changes to make clippy happy
- reorganizes simulation running flow to remove unnecessary plan regenerations while shrinking and double checking
2025-01-17 01:30:46 +03:00
alpaylan
13442808dd
update properties to add extensional interactions between them
2025-01-13 14:35:42 +03:00
alpaylan
82fcc27a58
this commit fixes query generation;
...
- previous query generation method was faulty, producing wrong assertions
- this commit adds a new arbitrary_from implementation for predicates
- new implementation takes a table and a row, and produces a predicate that would evaluate to true for the row
this commit makes small changes to the main for increasing readability
2025-01-13 02:31:19 +03:00
alpaylan
191b586f05
this commit restructures the interaction generation in order to have
...
better counterexample minimization.
- it separates interaction plans from their state of execution
- it removes closures from the property definitions, encoding properties as an enum variant, and deriving the closures from the variants.
- it adds some naive counterexample minimization capabilities to the Limbo simulator and reduces the plan sizes considerably.
- it makes small changes to various points of the simulator for better error reporting, enhancing code readability, small fixes to handle previously missed cases
2025-01-11 02:20:22 +03:00
alpaylan
8e2a1e4289
Merge remote-tracking branch 'turso/main'
2024-12-29 16:08:35 -05:00
PThorpe92
f6cd707544
Add clippy CI, fix or ignore warnings where appropriate
2024-12-29 10:25:41 -05:00
adamnemecek
97647ff056
Clean up code to use Self
...
Closes #556
2024-12-29 10:07:38 +02:00
alpaylan
003ad6cc64
allow failure assertions in the simulator, add creating the same table two times to the list of checked properties as a failure property example
2024-12-26 15:10:03 -05:00
jussisaurio
fa5ca68eec
Add multi-row insert to simulator
2024-12-25 21:14:55 +02:00
Pekka Enberg
13f229020e
simulator: Use "mod.rs" for module top-level files
...
Let's use "mod.rs" for the module top-level file as we do in the rest of
the Limbo codebase for consistency.
2024-12-21 09:50:23 +02:00
alpaylan
cb20ca7e40
fix formatting
2024-12-18 17:10:18 -05:00
alpaylan
39b5dbed55
change gen.range based queries into frequency and one_of calls
2024-12-18 17:09:44 -05:00
alpaylan
7d4d803a13
implement interaction plans
2024-12-17 18:24:39 -05:00