Commit graph

477 commits

Author SHA1 Message Date
Ewout Stortenbeker
78bc6040ca Fix schema validation of update on higher path 2023-04-24 22:51:19 +02:00
Ewout Stortenbeker
5d5536f9f9 Fix cluster IPC breaking browser build #215 2023-04-17 10:15:04 +02:00
Ewout Stortenbeker
9110f474c5 Transaction logging fixes:
- use IPC settings
- catch `getMutations` node not found error if there are no mutations
2023-04-11 20:42:25 +02:00
Ewout Stortenbeker
a4f5400cb6
Merge pull request #213 from appy-one/feature/socket-ipc-service
New feature: socket IPC service
2023-04-10 13:01:15 +02:00
Ewout Stortenbeker
fcfb57d517
Merge pull request #212 from appy-one/fix/inline-unicode-keys
Fix writing inline keys with unicode chars
2023-04-10 13:00:44 +02:00
Ewout Stortenbeker
aaf6a41833
Merge pull request #211 from appy-one/fix/ipc-index-issues
Fix IPC index issues
2023-04-10 13:00:10 +02:00
Ewout Stortenbeker
b29793fe65 use 'socket' IPC method for tests 2023-04-03 16:40:02 +02:00
Ewout Stortenbeker
59685ffd6e increase worker db existence polling timeout 2023-04-03 16:39:45 +02:00
Ewout Stortenbeker
e64d5de8b0 Add new 'socket' IPC mode
This approach automatically starts a service ("daemon") for the target database in a separate process. The service will take on the master/primary role, all connecting clients will take on the worker role.
2023-04-03 16:36:58 +02:00
Ewout Stortenbeker
3d6a46c49e Fix writing inline keys with unicode chars 2023-04-03 16:23:04 +02:00
Ewout Stortenbeker
8ac23ac91d conform to new acebase-core types 2023-04-03 16:14:43 +02:00
Ewout Stortenbeker
f1d3b07c7f more verbose logging 2023-04-03 16:13:17 +02:00
Ewout Stortenbeker
a4496f11d0 invalidate index cache upon relevant path changes 2023-04-03 16:12:35 +02:00
Ewout Stortenbeker
6dbd204372 include filePath in ipc 'index.update' requests 2023-04-03 16:08:51 +02:00
Ewout Stortenbeker
0139ee5306 prevent existing index being added again 2023-04-03 16:06:35 +02:00
Ewout Stortenbeker
0c84c97a92 fix IPC worker error after index creation 2023-04-03 16:05:49 +02:00
Ewout Stortenbeker
7d786eacc3 type fix 2023-04-03 15:58:18 +02:00
Ewout Stortenbeker
6324629a6c use renamed export 2023-04-03 15:56:29 +02:00
Ewout Stortenbeker
14ef3b135a using updated acebase-core types 2023-04-03 15:55:04 +02:00
Ewout Stortenbeker
d74130e798 allow wildcard path queries w/given filter values 2023-04-03 14:45:48 +02:00
Ewout Stortenbeker
4a69f0b657 lint fixes 2022-12-19 12:11:23 +01:00
Ewout Stortenbeker
556558afe9
Merge pull request #192 from appy-one/improvement/localstorage-async-storage-methods
LocalStorage custom storage: `async` methods
2022-12-19 11:27:53 +01:00
Ewout Stortenbeker
142fd3c7f2 Promises to async 2022-12-19 10:46:06 +01:00
Ewout Stortenbeker
162674954b add empty keys unit tests 2022-12-19 10:29:47 +01:00
Ewout Stortenbeker
e4ab033456 pre-check if empty keys are written 2022-12-19 10:28:16 +01:00
Ewout Stortenbeker
46d4df5179
Merge pull request #186 from appy-one/fix/broken-b+trees
Fix broken B+Trees
2022-12-05 17:02:02 +01:00
Ewout Stortenbeker
ba4bc4c991 new repairNodeTree recovery method 2022-12-05 16:45:18 +01:00
Ewout Stortenbeker
9f4bc3deb5 cleanup 2022-12-05 16:45:03 +01:00
Ewout Stortenbeker
d35977e61f prevent tree allocation issue #183:
isolated key tree rebuild into own function,
new repairNodeTree method,
use new BinaryBPlusTree constructor
2022-12-05 16:34:37 +01:00
Ewout Stortenbeker
3d067279ac pass DebugLogger 2022-12-05 16:28:54 +01:00
Ewout Stortenbeker
39e6f4ee80 use new BinaryBPlusTree constructor 2022-12-05 16:28:41 +01:00
Ewout Stortenbeker
326d0e0418 updated debug comments 2022-12-05 14:08:37 +01:00
Ewout Stortenbeker
1d1b1ab523 simpler sort 2022-12-05 14:08:03 +01:00
Ewout Stortenbeker
04c4e3c8f9 Repair binary B+Trees:
- implemented `repairMode` param of `leaf.getNext`
- added `setAllocationBytes` to allow in-memory tree growth
- use DebugLogger to allow console logging
2022-12-05 14:07:42 +01:00
Ewout Stortenbeker
db85791750 add repairMode param to getNext 2022-12-05 13:54:52 +01:00
Ewout Stortenbeker
cb40d89353 cleanup 2022-12-05 13:54:14 +01:00
Ewout Stortenbeker
ecf9e4a3e6 reflect: rethrow err if not NodeNotFoundError 2022-12-05 13:47:59 +01:00
Ewout Stortenbeker
39264d2a3f Replace console.assert with custom assert function 2022-12-05 13:06:08 +01:00
Ewout Stortenbeker
80bb22c6cd Helps investigate reading "ghost records" #183 2022-11-30 20:59:42 +01:00
Ewout Stortenbeker
9647f12550 ESM/CommonJS safe unicode module import 2022-11-21 17:44:47 +01:00
Ewout Stortenbeker
203ea22632 import datasets without require/import 2022-11-21 17:43:58 +01:00
Ewout Stortenbeker
7c9faa270c moved datasets out of src 2022-11-21 17:41:00 +01:00
Ewout Stortenbeker
a3de81e03f
Merge branch 'master' into improvement/typescript-cjs-esm-tests 2022-11-21 15:51:40 +01:00
Ewout Stortenbeker
09c25f00d5 fix AsyncTaskBatch constructor and JSDoc 2022-11-21 13:35:10 +01:00
Ewout Stortenbeker
c1f85969cc Ported tests to TypeScript, moved into src 2022-11-21 13:29:56 +01:00
Ewout Stortenbeker
9204385dcd ESM/CommonJS bundle fixes 2022-11-14 13:00:07 +01:00
Ewout Stortenbeker
6db2ff04b7 remove old module.exports from sqlite storage 2022-11-07 14:46:14 +01:00
Ewout Stortenbeker
1b1e239870 export throwing browser classes 2022-11-07 11:51:38 +01:00
Ewout Stortenbeker
898ff05d64 type improvements 2022-10-31 22:47:34 +01:00
Ewout Stortenbeker
66b5979d51 Moved generated files to dist, ts to src 2022-10-31 10:51:42 +01:00