Commit Graph

142 Commits

Author SHA1 Message Date
Logan Allen
8146a65f0a graph-store: last tweak to make firstborn fetch perfectly 2021-05-18 16:56:03 -05:00
Logan Allen
43a7c12ef7 graph-store: make firstborn scry work starting at any index, not just top-level 2021-05-18 15:42:29 -05:00
Logan Allen
bbdbfe662b graph-store: fix firstborn scry 2021-05-18 15:02:17 -05:00
Logan Allen
c56bf44708 graph-store: remove sigpam 2021-05-14 16:49:53 -05:00
Logan Allen
30df1345c2 graph-store: add index validation 2021-05-14 16:36:27 -05:00
Logan Allen
2d11c3658d graph-store: fix parsing of firstborn scry path 2021-05-14 15:11:50 -05:00
Logan Allen
6de7d5f683 graph-store: threading scry 2021-05-13 20:27:24 -05:00
Logan Allen
03039d9fc2 graph-store: properly take a deep tabulation 2021-05-11 14:27:08 -05:00
Logan Allen
fa343789cd graph-store: make it compile 2021-05-11 13:01:22 -05:00
Logan Allen
77eb265ce7 Merge branch 'master' into la/deep-graph 2021-05-11 12:41:48 -05:00
Logan Allen
2c79243194 Merge branch 'la/sys-fast-orm' into la/deep-graph 2021-05-11 12:37:52 -05:00
Logan Allen
b311087f6a Merge branch 'release/next-sys' into la/sys-fast-orm 2021-05-11 12:37:16 -05:00
Logan Allen
0691f4a765 graph: added comments 2021-05-10 18:23:42 -05:00
Logan Allen
8c03a5f182 graph-store: internally cache all scried daises 2021-05-10 12:09:47 -05:00
Logan Allen
3cf35bc369 graph-store: updated deep-node retrieval to use +tab 2021-05-05 17:25:13 -05:00
Logan Allen
01c5286319 graph-store: change scry name 2021-05-05 16:57:38 -05:00
Logan Allen
28a94d9b25 graph-store: add deep-subset scry that allows one to scry for an upper
bound of ordered items by time
2021-05-05 16:57:32 -05:00
Logan Allen
6e360a9746 graph-store: +on-load to %5 properly 2021-04-30 11:36:54 -05:00
Liam Fitzgerald
681641fe4c
graph-store: initialise update logs 2021-04-30 23:58:42 +10:00
Logan Allen
dd6eeccdae zuse: update names of +subset to +lot, +peek to +pry, remove unnecessary comments 2021-04-28 16:12:46 -05:00
Logan Allen
79fe01a434 graph-store/push-hook: remove old mark warming, organize 2021-04-26 13:28:13 -05:00
Logan Allen
f44236b7a2 graph-store: make validation work properly with type change 2021-04-22 14:17:01 -05:00
Logan Allen
7a44015924 graph-store: update +tag-queries to be a (jug term uid) 2021-04-19 15:53:07 -05:00
Logan Allen
81dcab8aa0 apps: resolve style comments about ?- vs ?: 2021-04-16 16:54:30 -05:00
Logan Allen
90fbaf6650 graph-update mark upgrade from 1 -> 2 2021-04-14 15:51:37 -05:00
Logan Allen
45fb7e69f3 graph-store: use +lien instead of manual recursion 2021-04-14 15:39:34 -05:00
Logan Allen
b319928059 graph-store: rewrite %remove-nodes logic to be referentially transparent %remove-posts 2021-04-14 15:33:15 -05:00
Logan Allen
d144af2e5b graph-store: migration code moved into lib, graph-store compiles with stubbed out %remove-posts 2021-04-14 14:26:36 -05:00
Logan Allen
f3001e122f graph-store: clean up old migrations 2021-04-13 15:38:42 -05:00
Logan Allen
faf1f83e8f graph-store: remove obsoleted code necessary to keep graph marks warm 2021-04-06 17:21:09 -05:00
Liam Fitzgerald
417483c4de
Merge branch 'master' into release/next-userspace 2021-04-01 18:35:39 +10:00
Logan Allen
2791cd5d9a graph-store: scry only once during +validate-graph 2021-03-31 16:08:36 -05:00
Logan Allen
d34045f190 graph-store: fewer allocations in +validate-graph 2021-03-31 16:08:31 -05:00
Logan Allen
d939c91e78 graph-store: speed up +validate-graph by using +turn and no longer virtualizing 2021-03-31 16:08:23 -05:00
Liam Fitzgerald
c186bad1c1
graph-store: +on-load 2021-03-24 13:09:58 +10:00
Liam Fitzgerald
54b3982b42
graph-store: upgrade reference content
This commit changes the type of update:graph-store and as such, a new
mark has been created. graph-store now consumes and produces
%graph-update-1. This new mark type is backwards incompatible with the
previous mark.
2021-03-24 13:06:26 +10:00
Liam Fitzgerald
4b305b5450
graph-hooks: upgrade for versioning 2021-03-19 10:05:07 +10:00
Logan Allen
0f7ff055df graph-store: only calculate hash when necessary, only check signatures if necessary 2021-02-25 13:06:26 -06:00
Logan Allen
83edfd67ba graph-push-hook: fixed bunted bowl issue 2021-02-03 13:08:53 -06:00
Isaac Visintainer
59e070e46e graph-store: updated tree type in import flow 2021-01-26 14:32:38 -08:00
Liam Fitzgerald
69a5675a86
graph-store: log %add-graph
When a graph is joined, the subscriber receives an %add-graph update
that corresponds to the current state of the graph. This was not logged,
so if the graph did not recieve any updates before the subscription was
kicked, the whole graph would be have to be sent again. This would be
largely asymptomatic, however hark-store assumes that %add-graph will
only be emitted when a new graph is joined or created. As such, we log
this initial update, so that the push-hook can correctly ascertain the
backlog it needs to send and so %add-graph is only emitted once per
graph. This also opens the door for time-varying scries into
graph-store.

Fixes #4290
2021-01-20 10:52:19 +10:00
Liam Fitzgerald
9c7ac3773a
hark, graph-store: address L review 2021-01-12 08:15:14 +10:00
Liam Fitzgerald
1ed0477663
graph-store: emit affected descended nodes in %remove-nodes
When %remove-nodes is sent as an update, it may refer to a parent node,
in which case the deletion of all the parent's children is implied. If
we hold onto references to nodes outside of graph-store, we are unable
to tell which of our references were affected, other than iterating over
every reference to check if one of the deleted indices is a prefix of
the reference. This is obviously undesirable, so we emit all of the
nodes we deleted, including the nodes deleted implicitly.
2021-01-11 17:44:25 +10:00
Liam Fitzgerald
7e0af9cfca
graph-store: add node existence query 2021-01-11 17:44:25 +10:00
Liam Fitzgerald
44ac3130f8
graph-store: use +bap for update-log listification 2021-01-05 08:23:12 +10:00
Liam Fitzgerald
fa7c347870
graph-store: add TODO comment for backwards tap 2020-12-16 09:42:01 +10:00
Liam Fitzgerald
2c915af179
graph-store: run update log in correct order
tapping an ordered map returns a list with the smallest keys first.
However, graph-store's update-log is defined backwards, such that the
list will have the most recent updates in the front of the list. We
therefore flop the update log before iterating over it, in order to
process the updates in the order they occurred
2020-12-15 21:37:50 +10:00
Logan Allen
504e02a6c8 graph-store: turn back on noisy duplicates 2020-12-12 18:06:44 -06:00
Logan Allen
35c2ccd54c graph-store: silence duplicate message assertion temporarily 2020-12-12 14:46:59 -06:00
Logan Allen
386997475b graph-store: no need to iterate through whole list if we find a single duplicate 2020-12-11 18:13:47 -06:00