Commit Graph

130 Commits

Author SHA1 Message Date
tomholford
0f5433c014 Merge branch 'master' into next/groups 2023-01-03 14:16:28 -08:00
Philip Monk
e1419d1787 contact-store: no-op if adding old contact
%contact-store is responsible for sending updates about contacts, eg
profile color.  When it hears an update, it fans that out to its
subsribers, unless that update is stale.  If you reguarly fan out stale
updates, then they reverberate across the network indefinitely -- we
call this "echoing".

To cut off this echoing, all edits have a timestamp, and we consider any
updates from before this timestamp to be stale.  Additions are separate
from edits, and for them we instead do a value comparison on the contact
-- if it didn't change, we consider the update stale.

The problem with this scheme is that if an addition and edit happen one
after the other in quick succession, you might have the following
sequence:

- add comes in with timestamp T1
- edit comes in with timestamp T2 after T1
- we hear an echo of the add, and that errantly applies because it
  passes our "did the contact actually change" check
- we hear an echo of the edit, which applies because T2 is after T1
- GOTO 3

Each time we apply the stale update, we fan that out to our subscribers,
and if any two hosts subscribe to each other, this will loop.  This may
even loop unconditionally because the ship that made the profile changes
seems like it might not recognize that those changes didn't come from
itself, so it sends them to all the groups it's in.  If so, that's an
important issue to fix.

Fixes tloncorp/landscape-issues#1442
2022-12-12 13:03:41 -07:00
Hunter Miller
cec4e11448
Merge pull request #6141 from urbit/hm/change-ota-source
migration: set official ota source
2022-12-09 12:22:50 -06:00
Hunter Miller
ff0231e761 migration: set official ota source 2022-12-09 12:22:04 -06:00
Hunter Miller
38919352c8 migration: adding crash fix 2022-12-09 11:07:51 -06:00
Liam Fitzgerald
4584067e7d Merge branch 'lf/gladio-2' 2022-12-09 15:23:18 +10:00
Liam Fitzgerald
cf2c73a0e1 group-store: make %migrate idempotent 2022-12-09 12:39:47 +10:00
Liam Fitzgerald
eedc50f9e4 group-store: add /wait endpoints 2022-12-09 12:22:22 +10:00
Liam Fitzgerald
1a1dec6268 group-store: handle alpha correctly 2022-12-09 09:34:56 +10:00
Hunter Miller
8ac999593a migration: update source 2022-12-08 10:55:03 -06:00
Hunter Miller
e4560339ec migration: fixing state versions 2022-12-08 07:53:00 -06:00
Liam Fitzgerald
d9a895c214 Merge remote-tracking branch 'origin/master' into lf/migration-prep 2022-12-07 08:32:05 +10:00
Liam Fitzgerald
e600ded69c migration: install %talk 2022-12-07 08:30:04 +10:00
Liam Fitzgerald
6841f726a7 metadata-pull-hook: disabling remove on nack 2022-12-05 13:09:30 +10:00
Liam Fitzgerald
e4827915d8 group-pull-hook: disabling remove on nack 2022-12-05 13:08:51 +10:00
Liam Fitzgerald
a4c597d281 graph-pull-hook: do not archive on nack 2022-12-05 11:07:40 +10:00
Hunter Miller
c3d4c538aa Revert "migration: correcting take-migrate ship"
This reverts commit ec23cc5318.
2022-11-30 20:13:42 -06:00
Hunter Miller
92c6ffa283 Revert "migration: fixing bad @tas"
This reverts commit 81419a8a03.
2022-11-30 20:13:23 -06:00
Hunter Miller
cae675f4d4 Revert "migration: correctly parsing ship"
This reverts commit 173b641df4.
2022-11-30 20:12:23 -06:00
Hunter Miller
feb305b59e Revert "migration: undoing ship/src.bowl change, adding logging to imports"
This reverts commit de1cdcefbb.
2022-11-30 20:12:17 -06:00
Hunter Miller
de1cdcefbb migration: undoing ship/src.bowl change, adding logging to imports 2022-11-30 16:46:47 -06:00
Hunter Miller
173b641df4 migration: correctly parsing ship 2022-11-30 15:31:56 -06:00
Hunter Miller
81419a8a03 migration: fixing bad @tas 2022-11-30 15:26:25 -06:00
Hunter Miller
ec23cc5318 migration: correcting take-migrate ship 2022-11-30 15:20:11 -06:00
Liam Fitzgerald
0a555981cc landscape: optionally disable memory mitigations in OTA 2022-11-29 13:25:15 +10:00
Liam Fitzgerald
37339bed31 group-store: cleanup sign handling 2022-11-29 13:17:28 +10:00
Liam Fitzgerald
06a2fe5b69 landscape: crash the event if migration fails 2022-11-29 13:12:10 +10:00
Liam Fitzgerald
ce1332565e graph-store: drop signatures 2022-11-25 18:14:53 +10:00
Liam Fitzgerald
8f6366d1c9 landscape: remove testing cruft 2022-11-25 12:32:13 +10:00
Liam Fitzgerald
0f7f4d554d graph-store: use standard archive format 2022-11-24 15:16:17 +10:00
Liam Fitzgerald
d9ae7c307b graph-store: standardise archive format 2022-11-24 14:55:02 +10:00
Liam Fitzgerald
ab578c7018 graph-store: nuke groups desk and uninstall 2022-11-24 14:52:03 +10:00
Liam Fitzgerald
a64881ccb2 graph-store: drop archives and backup 2022-11-24 14:41:07 +10:00
Liam Fitzgerald
e41e589367 landscape: add backups to groups 2 migration 2022-11-24 14:21:17 +10:00
Liam Fitzgerald
bc787310d9 landscape: fix wire consistency in migration 2022-11-23 12:43:11 +10:00
Liam Fitzgerald
d5f3374756 landscape: sketch of staggered deployment 2022-11-22 16:09:40 +10:00
Patrick O'Sullivan
0254997533 Groups/Garden: Add S3 region to s3 settings 2022-11-04 16:04:22 -05:00
Philip Monk
8ba63236d8 Merge remote-tracking branch 'origin/jb/gall-mass' into philip/agent-clay 2022-10-13 22:17:24 -07:00
tacryt-socryp
238a2b8d6b
Merge pull request #5749 from rabsef-bicrym/patch-4
Solve #5706 - Create vase at each branch of `t.t.t.t.path`
2022-06-30 15:27:53 -05:00
rabsef-bicrym
a7c5104f46
Solve #5706 - Create vase at each branch of t.t.t.t.path
#5706 describes an issue with using `!>` higher up in `graph-store` where multiple types are potentially included in the vase's construction, resulting in a type of `?((unit time) update-log:store)` when scrying the internals - no fun!
2022-05-06 13:42:11 -07:00
Hunter Miller
62c316225e
Merge pull request #5723 from urbit/lf/fix-group-chats
landscape: fix automatically watching group chats
2022-05-02 09:59:18 -05:00
Liam Fitzgerald
b5296efbe9 landscape: fix automatically watching group chats
Adds functionality in %group-view and -group-create to automatically
watch group chats when created. This appears to have gotten lost around
the time of the hark-graph-hook and group-view rewrite
2022-04-15 15:33:23 -05:00
Liam Fitzgerald
a47d4b21d1 Merge remote-tracking branch 'origin/next/groups' 2022-04-13 16:04:55 -05:00
Liam Fitzgerald
ba50914615
Merge pull request #5661 from urbit/lf/graph-drop-logs
graph-store: drop unnecessary logs
2022-04-13 14:05:28 -05:00
Hunter Miller
649b127414 Merge branch 'master' of github.com:urbit/urbit 2022-04-12 13:40:17 -05:00
Hunter Miller
59e90a0dd1
Merge pull request #5587 from rabsef-bicrym/patch-1
%depth-first has pattern-matching issue
2022-04-07 12:58:54 -05:00
Liam Fitzgerald
be722a246b dm-hook: fix missing notification on DM invite
Fixes urbit/landscape#1117
2022-03-28 14:33:18 -06:00
Liam Fitzgerald
d4658089a9 hark-graph-hook: revive unread counts for group feed
Fixes urbit/landscape#1258
2022-03-28 13:53:22 -06:00
Liam Fitzgerald
0cdd048903 graph-store: subscribers always keep minimal logs
Transposes the change in 1a2a9ee899 so
that subscribers always keep the minimum possible logs.
2022-03-25 13:35:44 -06:00
Liam Fitzgerald
1a2a9ee899 graph-store: drop unnecessary logs
Drops unnecessary logs for subscribers, to reduce memory usage. In local
testing, this incurred a 20% improvement in graph-store memory usage.
Note that publishers still retain the entire history, for backlog and
resubscribe purposes. Subscribers still retain a handful of updates so
that they can resubscribe upon kick correctly.
2022-03-24 13:31:15 -06:00