Commit Graph

  • 3b53f48400 Look up table root page from schema Pekka Enberg 2023-08-27 21:11:49 +03:00
  • 2615cdce2c Schema in-memory data structures Pekka Enberg 2023-08-27 20:40:12 +03:00
  • 6a2d36f4c1 Buffer pool Pekka Enberg 2023-08-27 11:05:12 +03:00
  • fb72f9688b Initial commit Pekka Enberg 2023-08-26 12:20:52 +03:00
  • 1392734609 Merge pull request #62 from tpisto/main Piotr Sarna 2023-07-12 10:11:08 +02:00
  • 5d240e731f Fixed bench build Tommi Pisto 2023-07-11 18:03:05 +03:00
  • 0a251b3b76 Merge pull request #61 from penberg/fix59 Piotr Sarna 2023-07-09 17:42:08 +02:00
  • 6d2a4150aa database: fix an unwrap() in tx_commit Piotr Sarna 2023-07-09 11:15:48 +02:00
  • b42cbe52d0 Added 'static bounds to T Tommi Pisto 2023-07-08 12:28:27 +03:00
  • ce6a6ceba2 Row<T> Tommi Pisto 2023-07-07 18:14:31 +03:00
  • 4888a0639c Mention libsql with MVCC Pekka Enberg 2023-06-19 11:15:20 +03:00
  • 31ee26d037 Merge pull request #58 from penberg/rename-project Pekka Enberg 2023-06-18 11:45:24 +03:00
  • 9bb09d005f Rename project to Tihku Pekka Enberg 2023-06-18 11:17:01 +03:00
  • 6daaa79f63 database: actually implement upserts Piotr Sarna 2023-06-13 19:32:38 +02:00
  • a8af11a553 Merge pull request #55 from penberg/upsert_tests Pekka Enberg 2023-06-13 16:55:44 +03:00
  • 0338e14814 database: change insert to upsert in concurrency tests Piotr Sarna 2023-06-13 13:47:38 +02:00
  • 46e3f7e3c4 Merge pull request #54 from penberg/concurrency_no_shuttle Pekka Enberg 2023-06-13 14:49:48 +03:00
  • 36d989babb database: properly compare row versions Piotr Sarna 2023-06-13 12:51:46 +02:00
  • 1a50e12102 tests: make concurrency test run 4 threads Piotr Sarna 2023-06-13 11:33:23 +02:00
  • 7a6ca27986 database: make sure row versions are inserted in a sorted order Piotr Sarna 2023-06-13 11:24:19 +02:00
  • 95ed29e6cb database: fix the locking order in transactions Piotr Sarna 2023-06-12 15:48:31 +02:00
  • 57249f2c94 concurrency test: port to OS threads Piotr Sarna 2023-06-12 13:33:29 +02:00
  • 3841adf482 Merge pull request #53 from penberg/atomicstate Piotr Sarna 2023-06-12 14:00:44 +02:00
  • a93fcdcbcf database: make transaction state atomic Piotr Sarna 2023-06-12 13:01:21 +02:00
  • 3d804ece2a Merge pull request #52 from penberg/lockfree Pekka Enberg 2023-06-12 13:09:12 +03:00
  • 983544dbfd database: implement missing cases for is_version_visible + tests Piotr Sarna 2023-06-07 13:58:34 +02:00
  • b4932340f4 database: add a juicy comment about serializability Piotr Sarna 2023-06-07 11:20:00 +02:00
  • 6d82973359 database: restore a CRUCIAL comment about dropping a tx Piotr Sarna 2023-06-06 15:31:56 +02:00
  • ddbcd9be79 database: bring back dropping unused row versions Piotr Sarna 2023-06-06 12:47:40 +02:00
  • 625394000e unignore test_dirty_read_deleted Piotr Sarna 2023-06-06 11:34:34 +02:00
  • 47eb149214 database: drop the mutex Piotr Sarna 2023-06-06 11:21:10 +02:00
  • 57b2e031fb Merge pull request #51 from penberg/moreskipmap Piotr Sarna 2023-06-06 09:58:37 +02:00
  • a8faffa9f5 database: migrate txs to SkipMap Piotr Sarna 2023-06-05 14:25:31 +02:00
  • fdfc4fd5b4 database: drop RefCell from SkipMap Piotr Sarna 2023-06-05 13:58:24 +02:00
  • 74a7628a0a mvcc-rs: move database tests to a separate file Piotr Sarna 2023-06-05 12:50:35 +02:00
  • 77e88d3f04 fix clippy Piotr Sarna 2023-06-05 11:47:53 +02:00
  • 51f33919d3 Switch to concurrent SkipMap for row versions (#49) Pekka Enberg 2023-05-17 16:31:16 +03:00
  • 3b9e235d09 Merge pull request #47 from penberg/resync Pekka Enberg 2023-05-17 13:59:46 +03:00
  • ae4cc872b6 treewide: overhaul the API to be sync again Piotr Sarna 2023-05-17 12:39:08 +02:00
  • 09a16d33f3 Merge pull request #45 from penberg/s3stor Pekka Enberg 2023-05-16 16:59:24 +03:00
  • a28c41f919 bindings: run recovery on MVCCDatabaseOpen Piotr Sarna 2023-05-16 14:54:35 +02:00
  • 34d21b0eb7 storage: add S3 storage Piotr Sarna 2023-05-16 11:59:28 +02:00
  • d34f19fa9c Merge pull request #44 from penberg/splittx Pekka Enberg 2023-05-15 15:48:34 +03:00
  • 5da87739fa bindings: split transcation begin from insert/read Piotr Sarna 2023-05-15 14:32:22 +02:00
  • 57568981a4 Merge pull request #43 from penberg/detrait_storage Pekka Enberg 2023-05-15 12:29:55 +03:00
  • 8b1ef20c08 treewide: drop storage trait Piotr Sarna 2023-05-15 10:50:47 +02:00
  • 7772c65f8d Switch to Tokio's mutex (#40) Pekka Enberg 2023-05-12 20:25:08 +03:00
  • df42771c63 Merge pull request #38 from penberg/tableid Pekka Enberg 2023-05-12 14:20:16 +03:00
  • 3236421f77 mvcc: switch to (table_id, row_id) for row ids Piotr Sarna 2023-05-12 12:00:44 +02:00
  • a782ae5a0a cursor: add is_empty Piotr Sarna 2023-05-12 10:09:18 +02:00
  • d5eec5d528 cursor: add MVCCScanCursorPosition Piotr Sarna 2023-05-11 14:11:10 +02:00
  • 582bf14934 database: keep rows in BTreeMap Piotr Sarna 2023-05-11 13:38:38 +02:00
  • e8bdfc8e7a cursor, read: update pointers to *mut u8 Piotr Sarna 2023-05-11 13:35:19 +02:00
  • 54ee330912 cursor: add closing cursor Piotr Sarna 2023-05-11 12:13:27 +02:00
  • 5bdcfc9924 cursor: handle current() graciously when there's no data Piotr Sarna 2023-05-11 11:08:43 +02:00
  • fb5217959f Merge pull request #37 from penberg/scan_cursor Pekka Enberg 2023-05-10 18:36:55 +03:00
  • ef097362ff mvcc, bindings: expose a scan cursor Piotr Sarna 2023-05-10 14:42:13 +02:00
  • 57b5919637 Merge pull request #35 from penberg/recovery Pekka Enberg 2023-05-10 13:28:16 +03:00
  • 0cf7b787fd Merge pull request #36 from penberg/readimpl Pekka Enberg 2023-05-10 13:22:57 +03:00
  • d047a24a32 bindings: expose reading from the database Piotr Sarna 2023-05-10 12:09:06 +02:00
  • 08adf2118c Rename mutations.png to transactions.png Pekka Enberg 2023-05-10 13:01:33 +03:00
  • ec336d5578 Initial support for recovery Pekka Enberg 2023-05-10 12:48:05 +03:00
  • 55bee1dcae Merge pull request #34 from penberg/log-records Pekka Enberg 2023-05-10 12:18:50 +03:00
  • 8c56b381c0 Rename mutations to log records Pekka Enberg 2023-05-09 21:28:42 +03:00
  • 3944a4e987 Merge pull request #31 from penberg/fix-insert Pekka Enberg 2023-05-09 16:15:10 +03:00
  • cf31de5d41 Fix MVCCDatabaseInsert() type signature Pekka Enberg 2023-05-09 14:42:07 +03:00
  • a3ac3272eb Merge pull request #29 from penberg/stdint Pekka Enberg 2023-05-09 13:54:45 +03:00
  • 3d0c8a415e Add stdint.h include to mvcc.h Pekka Enberg 2023-05-09 13:49:14 +03:00
  • 86fa4c5662 Merge pull request #28 from penberg/staticlib Pekka Enberg 2023-05-09 11:30:52 +03:00
  • d4da54b10b mvcc: build static library for C bindings Piotr Sarna 2023-05-09 10:28:26 +02:00
  • f47eea1a72 Move DESIGN.md to docs Pekka Enberg 2023-05-09 10:59:43 +03:00
  • 19ea5c287b Merge pull request #27 from penberg/core Pekka Enberg 2023-05-09 10:59:19 +03:00
  • b9575c4375 Rename database directory to mvcc-rs Pekka Enberg 2023-05-09 10:53:11 +03:00
  • cc4db340ee Merge pull request #26 from penberg/c-bindings Pekka Enberg 2023-05-09 10:51:39 +03:00
  • 41bed41544 Improve logging Pekka Enberg 2023-05-09 10:51:14 +03:00
  • 5ce2bc41f9 cargo fmt Pekka Enberg 2023-05-09 10:47:43 +03:00
  • b2f46e156b Improve C binding error reporting Pekka Enberg 2023-05-09 10:46:56 +03:00
  • 3ecb0fb2a9 Mark MVCCDatabaseOpen() as unsafe Pekka Enberg 2023-05-09 10:44:06 +03:00
  • db1e313aca Silence clippy Pekka Enberg 2023-05-09 10:43:42 +03:00
  • 1fc99181f1 Update README.md Pekka Enberg 2023-05-09 10:42:05 +03:00
  • c94561a646 Add mvcc.h to the tree Pekka Enberg 2023-05-09 10:41:33 +03:00
  • 779ad3066a Add error codes to C bindings Pekka Enberg 2023-05-09 10:41:13 +03:00
  • 34a4f1a269 Improve generated C bindings Pekka Enberg 2023-05-09 10:21:45 +03:00
  • 124446f17c Generate C header file on cargo build Pekka Enberg 2023-05-09 10:04:14 +03:00
  • d5b96d5edf Move C bindings to separate crate Pekka Enberg 2023-05-09 09:53:03 +03:00
  • 69cee068ce Merge pull request #25 from penberg/mvcc_write_cursor Pekka Enberg 2023-05-08 15:59:07 +03:00
  • 488201cab2 add c_bindings feature for exposing functions to C Piotr Sarna 2023-05-08 14:16:41 +02:00
  • aac835fce9 Document persistent storage design (#24) Pekka Enberg 2023-05-06 21:15:08 +03:00
  • eb52f3e1cd Merge pull request #23 from psarna/compact_rowversions Pekka Enberg 2023-04-25 18:56:44 +03:00
  • fb6ce70993 database: add dropping unused row versions Piotr Sarna 2023-04-20 15:34:17 +02:00
  • 2a018ea9a3 fixup: move DatabaseError under a feature Piotr Sarna 2023-04-20 15:46:58 +02:00
  • 851871d24b Merge pull request #22 from psarna/storfixup Pekka Enberg 2023-04-20 16:03:51 +03:00
  • b6b36a0d94 fixup: implement Stream for JsonOnDiskStream under a feature Piotr Sarna 2023-04-20 14:46:14 +02:00
  • a94ee8666d Merge pull request #19 from psarna/storage_v1 Pekka Enberg 2023-04-17 17:50:18 +03:00
  • 04a78f73fb treewide: add persistent storage trait Piotr Sarna 2023-04-17 12:52:42 +02:00
  • 7ca68b3d96 errors: Add I/O error class Piotr Sarna 2023-04-17 12:06:34 +02:00
  • db71c7e4e3 database: make transactions (de)serializable Piotr Sarna 2023-04-17 10:45:25 +02:00
  • 028fb0cf0c Merge pull request #17 from penberg/tx-gc Pekka Enberg 2023-04-15 20:48:18 +03:00
  • 74a4d2d11a Garbage collect transactions Pekka Enberg 2023-04-15 09:51:26 +03:00
  • 43544c9fb6 Update README.md Pekka Enberg 2023-04-14 21:32:31 +03:00