Skip to content

Releases: longlodw/thunderdb

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 08 Feb 06:23

Changelog

  • b6f3ad6 add more join benchmark
  • 54575a2 cache single value store
  • 18f9d7f closure api with less storage
  • 3cf74c7 fix ordering of marshaled tuple
  • 4ffa564 new closure and merge join
  • dbdd087 refactor closure wip
  • 1903fc5 refactor datalog query to become closure
  • f34d8b1 refactor join code to make it cleaner and faster
  • ee149c2 refactored index, where, join conditions
  • fe51555 refactored joinedquerynode propagatetoparents
  • 2ee046f update documentations and tests to use newer api
  • 8396795 update readme to reflect refactor
  • 64d9472 use newer api and undo merge sort implementation

v0.4.2

Choose a tag to compare

@github-actions github-actions released this 31 Jan 18:18

Changelog

  • 8f0790b add documentation and example for snapshot
  • 3de0e0b backup implementation

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 26 Jan 01:31

Changelog

  • 06dff5e expose statistics
  • e9f68c1 remove more debug print comment
  • ec24611 remove unhelpful comment and rename internal head to datalog for internal functions and change field not found error

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 25 Jan 23:42

Changelog

  • 6e9970b Enable recursion benchmarks with NewDatalogQuery and reduced chain length
  • 8a5ae02 Update benchmarks to use new transaction API and fix compilation/runtime errors
  • 436ef17 add error checks
  • 48bcbb7 add recursive test
  • 233541a add unit tests for fields outside of columns and fix performance degrade in joining
  • ed871fa additional test for multi index and conditon types
  • 5390fed agents.md
  • a47c404 allows columnspec to be passed up when projecting and joining
  • f97ef7e clean up code and make sure conflicting equals when joining is skipped
  • fd3eba3 clean up tests and add error handling
  • 4f3177e clean up tests and reduce allocation
  • 10b9d07 complete untested implementation
  • 5e8d2b9 ensure ranges are properly assigned to join
  • f039d9e fatal on error
  • 9b01262 fix build error when iterating with iterator
  • 17894ea initial update implementatino
  • 1b55c8e modernize store
  • d90d4f0 modernize with maps.Copy
  • fef79e8 more optimized conditions
  • e3228b2 mutual recursion test
  • 71ecab5 optimize allocation
  • e84b17a partial working implementation
  • 791061a refactor errors
  • 9dd6f8a refactor storage to reduce duplicated code
  • fe67f13 refactor wip
  • e51e642 remove fields and limits tests
  • ecf2c54 remove old recursive tests>
  • d2d7b65 remove old update test
  • e47243f remove redundant unmarshal and marshal with tokey and tokeyfromcolumns
  • 3b7de09 remove unneeded seek
  • f28d472 removed redundant code
  • 6bc3741 rename head to datalog for clarity
  • 230af9d rename storage query to be more explicit
  • 164eb20 rename storageMetadata to Metadata
  • e7b2cf3 reuse maps when possible
  • b2e8351 separate transactions for each benchmark in deeply nested large rows
  • 2b5d08d small optimizations
  • 3876739 tests for crud and fix open range ignore all values
  • f2a77c1 untested refactor
  • 854e85e update documentations and rename headquery to datalog query for clarity
  • 85ceaef update nested and cycle test
  • ea7cac8 updated batch tests to use the newer api
  • edd9c74 updated concurency tests to use the newer api
  • 8f4afb0 updated query init test
  • e2c39e9 use custom marshaler instead
  • 6828d71 use more ergonomic api and add examples
  • 9e974cb use more ergonomic public api
  • 25810d9 wip selectEval
  • 0d7a7fd working update implementation

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 05 Jan 01:24

Changelog

  • f4ff060 Add concurrency tests and benchmarks for persistent storage
  • 9db7e9b Move concurrent benchmark to benchmark_test.go
  • 9652286 Optimize Recursive Query Engine with Dynamic Join Reordering
  • d02d3c4 Rewrite TestConcurrentReadWrite to use 200 writers/100 readers and valid upsert logic
  • b99d1f5 Update benchmark with new concurrency test structure
  • 5775dd7 add manual transaction management documentation
  • 2122731 batch benchmark and test
  • 787b4b8 can change batch and alloc options
  • a016f45 fix benchmark and test for concurrency
  • ad85a01 fix bug and update tests/benchmark
  • 9ec460f fix update same old value fail nad add unit test
  • 4e9eba3 fix(recursion): push down query filters to recursive join steps to prevent traversing noise rows
  • 27c510b improved recursion and fixed benchmark
  • f094abb lazy create temp db
  • 13a6517 new ranges api
  • f8a67df optimize indexStorage.get by using raw byte comparisons and avoiding unnecessary allocations
  • dea324b optimize: improve recursive query performance by optimizing index scans
  • 56c7553 optimize: improve recursive query performance by optimizing index scans
  • 9b5b61f optimize: reuse buffers for range encoding
  • be94bab recursion limit and unit tests
  • e76f2f0 ref ranges wip
  • 694d903 remove op api
  • df67d6f remove the refrange api
  • 6c2b2af revert: undo index optimization changes that caused performance regression
  • 7d406ea test(recursion): add unit tests for mutual recursion and long join chains
  • 4e0daa1 update documentation for managed transaction
  • 98f742f update functionality
  • 53f7a5f use row api
  • 120f827 view, update, and batch function on db
  • 5141740 wip investigate performance for recursion with more unit tests
  • 3c1f12c wip performance investigation for recursion
  • e688ad8 woring fixed point semantic
  • ec3e62d working recursive engine

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 28 Dec 05:47

Changelog

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 27 Dec 17:57

Changelog

  • e800b33 add benchmark and avoid recomputing distance for ranges
  • 48ae792 add documentation about composite index/uniques
  • a7ab949 benchmark for large rows
  • a76dd08 complete refactoring of api and imporve recursive performance
  • b90754b remove old files
  • 543e8be rename recursive to recursion
  • f7bd17b update readme to reflect refactor
  • 620cf24 wip refactored

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Dec 05:26

Changelog

  • 530b0a9 Create LICENSE
  • 222a0ef Implement basic Query selection and joins with tests
  • 0bed522 README
  • 21f3fa2 add more tests and change op constructor
  • 238fe91 add unit tests and change how comparison is done
  • a113215 benchmark
  • ceb67d1 change interface name
  • dbebcea clone columns
  • ef730c0 db and transaction
  • 01ec6c3 exploration is not needed when the query is non recursive
  • 8892bcd fix index iteration and add unit test for index
  • 503b8a7 fix matching on composite key ranges
  • 812794a fix: update operator constructors and fix index range scan logic
  • e5b7d8b flatten project and add unit test
  • e6c08c4 initial commit
  • faf6863 make sure transactions are cleaned up
  • 8eafbde only explore first body part of the body
  • b84772d projection
  • eea4831 query can handle recursion and unique contraint supported
  • 2dfbe68 query unit tests and stop using backing for non recursive query
  • 59332b6 refactor error handling
  • 2d9d6c4 refactor: implement composite key indexes and remove reverse_index
  • 0f7a845 refactored persistent storage
  • 54237dd relations wip
  • 7de2fb7 removed bucket from idx
  • 0ce72b9 selectable
  • ae10fb7 store each columns separately
  • 35607ef unique contraint
  • 1accd5f update errors and examples
  • 451953d update persistent and projection
  • 84e8221 use different encoding for key marshalling
  • d2b9256 use range for get calls and pick best index only
  • c398857 use ranges for public functions instead of list of ops
  • 85e7bc4 wip query for cycle and recursion
  • 4e90585 wip removing bucket from idx