Commit Graph

  • 86119b0dba Merge 'core/mvcc/cursor: implement prev and last ' from Pere Diaz Bou main Pere Diaz Bou 2025-11-20 18:41:41 +01:00
  • c205f41158 Merge 'core: Switch to parking_lot::Mutex' from Pekka Enberg Pekka Enberg 2025-11-20 11:17:12 +02:00
  • d808db6af9 core: Switch to parking_lot::Mutex Pekka Enberg 2025-11-20 09:51:01 +02:00
  • 430bd457e6 core/mvcc: fix tests with delete Pere Diaz Bou 2025-11-19 17:18:44 +01:00
  • bf1afb56cf core/mvcc: test with delete after checkpoint Pere Diaz Bou 2025-11-19 16:56:32 +01:00
  • b4c11705f3 core/mvcc: few suggestions from pr Pere Diaz Bou 2025-11-19 16:44:24 +01:00
  • 9a3cc2ac40 Merge 'Triggers: fix issues with ALTER TABLE' from Jussi Saurio Jussi Saurio 2025-11-19 15:00:07 +02:00
  • 32063334f9 fix operator precedence bug Jussi Saurio 2025-11-19 14:28:05 +02:00
  • fddcea788b refactor Jussi Saurio 2025-11-19 14:20:18 +02:00
  • 5d9a0b15f8 Handle qualified column references in triggers wrt ALTER TABLE Jussi Saurio 2025-11-19 13:21:29 +02:00
  • dbdf60a628 extract common functionality Jussi Saurio 2025-11-19 13:10:23 +02:00
  • 745cdc3aa2 Align trigger sql rewrite behavior with sqlite Jussi Saurio 2025-11-19 12:55:25 +02:00
  • 5b1c69a9d0 fix ai slop with more ai slop Jussi Saurio 2025-11-19 12:33:13 +02:00
  • a0a1bd6637 Triggers: fix issues with ALTER TABLE Jussi Saurio 2025-11-19 10:43:39 +02:00
  • fb31fd56ba Merge 'Simulator: refactor and simplify InteractionPlan' from Pedro Muniz Jussi Saurio 2025-11-19 11:10:51 +02:00
  • 687d9faf37 Turso 0.4.0-pre.2 Pekka Enberg 2025-11-19 09:40:08 +02:00
  • 92f47dffb0 Merge 'Trigger support' from Jussi Saurio Jussi Saurio 2025-11-19 08:42:41 +02:00
  • ca30756dfd core/mvcc/cursor: implement prev and last Pere Diaz Bou 2025-11-18 19:49:13 +01:00
  • b38e69b515 core/mvcc: add get_row_id_for_table_in_direction(forward/backwards) Pere Diaz Bou 2025-11-18 19:48:54 +01:00
  • b19762a812 core/mvcc/cursor: get_new_position_from_mvcc_and_btree backwards and last fix Pere Diaz Bou 2025-11-17 16:32:38 +01:00
  • 73d9f0016c core/mvcc: test order by desc with mvcc Pere Diaz Bou 2025-11-17 16:21:38 +01:00
  • 72bf195f4b Merge 'core/mvcc/cursor: rowid don't seek first rowid' from Pere Diaz Bou Pere Diaz Bou 2025-11-18 19:51:19 +01:00
  • ad753281b6 Remove unneeded too_many_arguments annotation Jussi Saurio 2025-11-18 18:41:45 +02:00
  • 129ee8c82b Remove more AI-generated unnecessary code Jussi Saurio 2025-11-18 17:24:10 +02:00
  • 2cbc83a01c triggers: add ParamMap abstraction to reduce code noise a bit Jussi Saurio 2025-11-18 17:08:22 +02:00
  • 11528cff12 Remove weird AI-innovated negative index hack Jussi Saurio 2025-11-18 16:56:27 +02:00
  • 2674145937 Avoid allocation when no triggers exist Jussi Saurio 2025-11-18 15:40:06 +02:00
  • d33c294380 remove unhelpful comment Jussi Saurio 2025-11-18 15:39:53 +02:00
  • 5c1ebbd011 Use VecDeque for trigger storage for similar reasons as indexes do Jussi Saurio 2025-11-18 15:06:13 +02:00
  • e1dee4a072 triggers: add a lot of different kinds of tests Jussi Saurio 2025-11-18 13:08:39 +02:00
  • 9aa09d5ccf Add EXPLAIN support for trigger subprograms Jussi Saurio 2025-11-18 13:08:00 +02:00
  • 423a1444d1 Don't crash if table cursor is already opened Jussi Saurio 2025-11-18 13:06:04 +02:00
  • 7f536506c3 Clear deferred_seeks for cursor when it is closed Jussi Saurio 2025-11-18 13:03:48 +02:00
  • d398f12471 triggers: subprograms shouldnt commit or use the transaction opcode Jussi Saurio 2025-11-18 13:03:14 +02:00
  • be6f8ab8b3 state.end_statement() should not be called separately in cases where abort() already does it Jussi Saurio 2025-11-18 13:02:19 +02:00
  • 7a12e184a8 Only reset FK violation counter if stmt was rolled back Jussi Saurio 2025-11-18 12:56:50 +02:00
  • 770c6eef9f triggers: subprograms dont use transactions Jussi Saurio 2025-11-18 12:54:42 +02:00
  • 70267f8710 triggers: add translation logic for INSERT triggers Jussi Saurio 2025-11-18 12:50:41 +02:00
  • e28301dc2e triggers: add translation logic for UPDATE triggers Jussi Saurio 2025-11-18 12:49:51 +02:00
  • 516dae5b6a triggers: add translation logic for DELETE triggers Jussi Saurio 2025-11-18 12:48:34 +02:00
  • 5b037b0f75 resolve labels for RowSetRead insn Jussi Saurio 2025-11-18 12:45:24 +02:00
  • 7d1543fcc5 triggers: take triggers into account in optimizer decision Jussi Saurio 2025-11-18 12:43:56 +02:00
  • 78ce3c8658 triggers: add capability for DeletePlan to write the write set into a RowSet first Jussi Saurio 2025-11-18 12:42:24 +02:00
  • e60e37da7d triggers: add execution plumbing to translation and vdbe layers Jussi Saurio 2025-11-18 12:35:46 +02:00
  • 3d00686f48 triggers: translation functions for DDL Jussi Saurio 2025-11-18 12:18:07 +02:00
  • d4b487eebc triggers: add in-memory schema entries Jussi Saurio 2025-11-18 12:14:27 +02:00
  • e61234d522 Merge 'translate/insert: Implement INSERT OR REPLACE' from Preston Thorpe Preston Thorpe 2025-11-17 18:50:15 -05:00
  • 56f35ad4cd cargo fmt PThorpe92 2025-11-17 12:22:55 -05:00
  • c3185d0b8c Properly handle foreign keys for INSERT OR REPLACE PThorpe92 2025-11-17 12:19:33 -05:00
  • 8848775a71 core/mvcc/cursor: rowid don't seek first rowid Pere Diaz Bou 2025-11-17 13:40:09 +01:00
  • c2be60b007 add pragma to shrinking pedrocarlo 2025-11-01 17:44:44 -03:00
  • f09b73c768 remove Span, as interaction ID is enough to determine membership of a property pedrocarlo 2025-11-01 14:13:47 -03:00
  • 2aab33b714 find_interactions_range only check for interaction id to determine membership pedrocarlo 2025-11-01 12:11:30 -03:00
  • 4fd0896538 remove extension queries from other types of properties pedrocarlo 2025-10-18 19:41:46 -03:00
  • 9d439556ca if table changed names, add its previous names to depending tables when shrinking pedrocarlo 2025-10-18 17:32:18 -03:00
  • af31e74d9f add depending tables to assertions to delete them if needed in shrinking pedrocarlo 2025-10-18 16:32:12 -03:00
  • 087d5f59a1 fix execution ticks not ticking enough pedrocarlo 2025-10-18 14:03:35 -03:00
  • 836d115853 create interaction plan correct in main.rs pedrocarlo 2025-10-18 13:51:26 -03:00
  • 2c8754985b refactor shrinking to use utilities in the InteractionPlan to iterate over properties, instead of handrolling property iteration pedrocarlo 2025-10-18 12:14:25 -03:00
  • a21f7675dd - update interaction stats on demand instead of reading the entire plan to calculate metrics per generation step - simplify generation as we now only store Interaction. So now we can funnel most of the logic for interaction generation, metric update, and Interaction append in the PlanGenerator::next. pedrocarlo 2025-10-18 12:14:25 -03:00
  • 157a5cf10a - add Interaction Builder to simplify code for building an interaction. Modify generation/property.rs to use the Builder - add additional metadata to Interaction to give more context for shrinking and iterating over interactions that originated from the same interaction. - add Iterator like utilities for InteractionPlan to facilitate iterating over interactions that came from the same property: pedrocarlo 2025-10-18 12:14:25 -03:00
  • c088a653e6 move interaction stats to metrics pedrocarlo 2025-10-18 12:14:25 -03:00
  • 2fe39d40bb add Span and PropertyMetadata structs pedrocarlo 2025-10-18 12:13:49 -03:00
  • a4f0f2364d disable Watch Mode until we can properly serialize interaction plan pedrocarlo 2025-10-18 12:10:52 -03:00
  • 4f143f385a - modify bugbase to not save interaction plan in a plan.json. As we will track Interaction instead of Interactions in the Plan, this change will impossibilitate the serialization of the InteractionPlan with Serde Json. - make --load just load the previous cli args pedrocarlo 2025-10-18 11:55:19 -03:00
  • 8f50154db2 separate struct defining code from struct generation code. Also move Remaining to a metrics file pedrocarlo 2025-10-18 11:16:44 -03:00
  • 8cd33f3ec9 Add comment for or replace behavior require seek in translate/insert PThorpe92 2025-11-17 08:41:22 -05:00
  • 0ce5f81008 Cleanup translate/insert fix clippy warnings PThorpe92 2025-11-16 16:23:22 -05:00
  • f8e78b73a8 Fix handling of partial indexes when deleting rows in ON REPLACE for insert PThorpe92 2025-11-16 16:11:59 -05:00
  • 0bc56d3f28 Sprinkle some OR REPLACE into INSERT statements in fuzzing PThorpe92 2025-11-16 15:20:02 -05:00
  • b83921d838 Add TCL tests for insert or replace handling PThorpe92 2025-11-16 15:17:29 -05:00
  • 634af4d6f6 Handle NOT NULL behavior for INSERT OR REPLACE PThorpe92 2025-11-16 15:17:08 -05:00
  • 5bff10c56e Implement INSERT OR REPLACE translation/emission PThorpe92 2025-11-15 20:51:23 -05:00
  • 693eaeb851 Merge 'Add ColDef struct to make schema::Column creation more ergonomic' from Preston Thorpe Jussi Saurio 2025-11-17 09:17:56 +02:00
  • 3b0d4f3214 Merge 'Enable nested self-inserts in simulator' from Mikaël Francoeur Jussi Saurio 2025-11-17 08:34:18 +02:00
  • 29f30c5c35 Merge 'allow null for unique columns and don't validate fkeys on parent' from Pavan Nambi Preston Thorpe 2025-11-16 19:59:59 -05:00
  • ced5aec2c7 Add ColDef arguments to Column::new in collate.rs PThorpe92 2025-11-16 19:19:24 -05:00
  • ca783ccdff Add ColDef struct to make schema::Column creation more ergonomic PThorpe92 2025-11-16 18:59:46 -05:00
  • 22810f1186 Merge 'correct order in column creation in join tests' from Pavan Nambi Preston Thorpe 2025-11-16 19:09:59 -05:00
  • 134f898952 correct order in column creation tests Pavan-Nambi 2025-11-16 18:36:10 +05:30
  • 3de37d3f64 dont validate fkey on parent add tests Pavan-Nambi 2025-11-16 08:54:15 +05:30
  • 8edea305f6 allow null for unique columns Pavan-Nambi 2025-11-16 08:35:09 +05:30
  • d309e6ddb3 generate self-inserts with nested subqueries Mikaël Francoeur 2025-11-10 19:27:58 -05:00
  • 23d6080531 make FromClause recursive Mikaël Francoeur 2025-11-10 19:20:55 -05:00
  • 156693ce95 enable self-inserts Mikaël Francoeur 2025-11-10 17:06:24 -05:00
  • 8ea038c00b fix join Mikaël Francoeur 2025-11-10 17:08:44 -05:00
  • ec149865f1 Merge 'Support DELETE ... RETURNING' from Jussi Saurio Jussi Saurio 2025-11-14 13:53:57 +02:00
  • 3f970d5d95 Merge 'Return parse error if NULLS LAST used in ORDER BY' from Jussi Saurio Jussi Saurio 2025-11-14 13:36:34 +02:00
  • 46440ad58d Merge 'don't overwrite col mappings' from Pavan Nambi Jussi Saurio 2025-11-14 13:36:07 +02:00
  • b9b9a5ecab AI-generated tests for DELETE RETURNING Jussi Saurio 2025-11-13 11:16:01 +02:00
  • 272dadc4bc Support DELETE ... RETURNING Jussi Saurio 2025-11-13 11:15:08 +02:00
  • fca32737e7 Merge 'Refactor RETURNING to support arbitrary expressions' from Jussi Saurio Jussi Saurio 2025-11-14 13:34:53 +02:00
  • a1e1e41ec2 Merge 'bindings/java: implement JDBC4 InputStream binding methods (ASCII/Binary, no-length and long overloads)' from Orange banana Pekka Enberg 2025-11-14 12:19:51 +02:00
  • dae9e7990e Merge 'Create README.md for Turso Python bindings' from Pekka Enberg 2025-11-14 12:18:51 +02:00
  • 8d2b06e6bf remove stupid files,clippy and tcl-syntax Pavan-Nambi 2025-11-14 07:44:39 +05:30
  • eaa8edb6f7 don't overwrite col mappings Pavan-Nambi 2025-11-14 07:41:41 +05:30
  • b7bdbefe8b Create README.md for Turso Database Python bindings gigagrug 2025-11-13 20:19:50 -05:00
  • 82d7a6ff27 Merge 'Nyrkiö: Set all comment-on to false' from Henrik Ingo Pekka Enberg 2025-11-13 16:38:48 +02:00
  • 1f79fbc22c Merge 'Partial sync basic' from Nikita Sivukhin Pekka Enberg 2025-11-13 16:38:04 +02:00
  • 950184a2c6 Return parse error if NULLS LAST used in ORDER BY Jussi Saurio 2025-11-13 10:47:17 +02:00