fang
108c6253d3
Merge branch 'philip/nuke' into next/arvo
2022-09-06 22:25:19 +02:00
Philip Monk
8884e7dfbc
kiln: make compile
2022-09-02 16:51:39 -08:00
Philip Monk
093f0ae9de
Merge branch 'philip/inline-thread' into philip/agent-clay-wip
2022-09-01 19:03:17 -08:00
Philip Monk
1ce53d06ba
gall: don't add duplicate nonce in +ap-nuke
...
This gets added in +ap-handle-peers. This caused outgoing subscriptions
to not get cleaned up properly.
Issue introduced in c2d77a5d
.
2022-08-25 13:29:51 -08:00
fang
ab75e83398
gall: don't enqueue %cork as outstanding
...
Ames will no longer send acks. Consider it completed immediately, and
clean up the outstanding queue whenever it's empty.
2022-08-25 18:14:40 +02:00
fang
8108595b2b
gall: don't inject potentially-fake acks
...
We shouldn't be hitting this case anymore. Injecting events into agents
which they might not expect, and might not even be real, is bad.
2022-08-19 21:39:44 +02:00
fang
59f0556e3b
Merge pull request #5958 from urbit/ted/rake
...
gall: %rake task to clean up dead %leave's
2022-08-19 21:29:08 +02:00
fang
a9a8619daa
Merge pull request #5947 from urbit/ted/staying-alive-rebase
...
gall: revive %hood and %dojo on keypress
2022-08-19 21:22:28 +02:00
fang
cfa18b1f1f
gall: when kicked, register %cork as outstanding
...
When ames notifies us that our subscription has been kicked, we enqueue
a cork to clean up the flow. Unlike the %leave case, however, we were
not registering the cork in the queue of outstanding comms. We would
eventually get an ack, but not know what for, and erroneously inject
%poke-acks and %watch-acks.
Here we simply add a %cork entry to the queue before sending it.
2022-08-19 16:04:36 +02:00
fang
c8a163fedb
gall: clean up big wire construction
2022-08-18 22:46:58 +02:00
fang
a5335f5851
gall: improve match detection in +ap-rake
...
Making sure to stringify the nonce and including all the target details in the
wire, and excluding flows that are already closing.
2022-08-18 22:39:54 +02:00
Ted Blackman
d8df2787a0
gall: %rake task to clean up dead %leave's
2022-08-18 20:34:42 +03:00
fang
18019d6d83
gall: re-enable doff, only for old-style subs
...
This is sufficient to bring the normal (non-prerelease-bugged) cases
into the new world.
For the prerelease ships that ran a buggier version of the new gall
subscription logic, we note that the conditional may trigger for the
nonce=1 case where it had already triggered for their
(shouldn't-be-possible) nonce=0 case. This results in a %leave on a wire
that wasn't in use. This no-ops on the publisher side though, and the
flow gets corked right away, so this is considered harmless.
2022-08-16 23:02:59 +02:00
Ted Blackman
c972c0fbe2
gall: roundtrip through arvo to revive %hood and %dojo
2022-08-16 01:37:35 +03:00
Ted Blackman
95580f7e83
gall: revive %hood and %dojo on poke
2022-08-16 00:40:38 +03:00
Ted Blackman
a70c2ffe1a
gall: now restarts %hood, but not %dojo yet
2022-08-16 00:40:38 +03:00
Ted Blackman
ac072729c2
gall: force load %hood and %dojo on poke
2022-08-16 00:40:38 +03:00
fang
81f18d13ad
gall: remove outdated fixme comment
...
This is part of the %doff work, which is getting integrated elsewhere.
2022-08-15 12:24:18 +02:00
Ted Blackman
1898483a45
gall: disable %doff for now
2022-08-12 00:55:19 +03:00
Ted Blackman
b1bab79f58
gall: add %f scry for sub-nonce's
2022-08-11 22:33:57 +03:00
fang
350f33d6ba
Merge branch 'next/arvo' into ted/doff-6
2022-08-11 21:06:30 +02:00
fang
5b4a964cdf
gall: fix the %doff conditional
...
No comment.
2022-08-11 19:48:27 +02:00
fang
06b7f52755
gall: print less during %doff
2022-08-11 17:04:44 +02:00
fang
cd0ea06ad4
gall: use a fully-formed wire when sending %cork
...
In response to clog notification from remote ames, we were sending a
%cork to clean up the flow. However, the wire we were using had the /sys
prefix already stripped off. Here, we put it back in.
2022-08-11 16:53:45 +02:00
fang
39cd895a55
gall: in +ap-doff, process oldest subs first
...
Start by killing subscription nonce 0, then work our way up instead of
down. We enhance the printf with a "total nonces" indicator so we can
still easily see the progress being made.
2022-08-10 22:51:38 +02:00
fang
2fe27bd8d7
gall: simplify +ap-doff filter conditional
2022-08-10 22:25:01 +02:00
fang
04b7b86cae
gall: support %doff-ing specific apps and/or ships
...
This gives us more control over exactly which subscriptions get culled,
which is useful in debugging and targetted recovery scenarios.
2022-08-10 20:33:07 +02:00
Ted Blackman
9e47490c95
gall: fix %doff handling
...
Previous +ap-doff kicked the agent repeatedly. We needed to kick
it only once. Now publisher agents clear their incoming subscription
state without the subscriber making lots of new subscriptions because
of repeated kicking.
2022-08-10 19:48:39 +03:00
Ted Blackman
ef09595788
gall: update comment
2022-08-10 19:13:32 +03:00
Ted Blackman
543efac183
gall: kill old subscriptions on %doff (still has bug)
...
Squashed commit of the following:
commit 1e31ab96c14e7506d5cb746d90153cb5658df6e0
Author: Ted Blackman <ted@tlon.io>
Date: Wed Aug 10 19:08:39 2022 +0300
ames: revert prints on bad memos
commit c47f9c6053
Author: Ted Blackman <ted@tlon.io>
Date: Wed Aug 10 18:44:56 2022 +0300
Merge fix to +ap-kill-down and use that pattern in +mo-doff.
This doesn't seem to work properly, but I'm not sure why so far.
commit e696816b8d
Merge: 4edb247cd7
a5f08643ff
Author: Ted Blackman <ted@tlon.io>
Date: Wed Aug 10 18:29:42 2022 +0300
Merge branch 'next/arvo' into ted/doff-revival
commit 4edb247cd7
Author: Ted Blackman <ted@tlon.io>
Date: Sat Aug 6 00:09:04 2022 +0300
ames,gall: fix lopsided bitt/boar state from old doffs
commit b21ffd9cfa
Merge: 7d532afaf8
8eb8a1da29
Author: Ted Blackman <ted@tlon.io>
Date: Fri Aug 5 17:53:15 2022 +0300
Merge branch 'next/arvo' into ted/kill-subs
commit 7d532afaf8
Author: Ted Blackman <ted@tlon.io>
Date: Fri Aug 5 17:52:16 2022 +0300
gall: add subscription nonce to %doff
commit f750de9aac
Merge: 38540658b5
aad5fa6fae
Author: Ted Blackman <ted@tlon.io>
Date: Fri Aug 5 11:24:55 2022 +0300
Merge branch 'next/arvo' into ted/kill-subs
commit 38540658b5
Author: fang <git@fang.io>
Date: Thu Jul 28 21:10:57 2022 +0200
gall: account for renaming of subscription state
commit c015dc8446
Merge: 7c222e4c60
731e27d5a1
Author: Zach Alberico <git@zalberico.com>
Date: Thu Jul 28 10:14:24 2022 -0700
Merge branch 'next/arvo' into ted/kill-subs
commit 7c222e4c60
Author: Ted Blackman <ted@tlon.io>
Date: Thu Jul 28 14:01:00 2022 +0200
hood: |doff generator
commit 8d00cf1bd1
Author: Ted Blackman <ted@tlon.io>
Date: Thu Jul 28 13:21:45 2022 +0200
gall: fix compile errors
commit 6a1fd360ff
Author: Ted Blackman <ted@tlon.io>
Date: Thu Jul 28 13:01:16 2022 +0200
gall: add %doff task to kill subscriptions
2022-08-10 19:09:47 +03:00
fang
682dde904c
Merge pull request #5931 from urbit/m/gall-kill-down-accurately
...
gall: handle nonces in wires correctly
2022-08-10 00:04:10 +02:00
fang
db1e8d1b92
gall: explain reason for strange conditional
2022-08-09 21:36:08 +02:00
fang
52d8ef6a99
gall: initialize sub-nonce as 1 during upgrade
...
This matches the bunt of 1 for the new ship case. A nonce of 0 is
semantically mapped to old-style subscriptions.
2022-08-09 21:22:40 +02:00
fang
c2d77a5d47
gall: in/exclude the nonce from the wire as needed
...
+ap-nuke was not including the nonce, but should.
+ap-handle-peers was potentially including a zero nonce.
(The latter shouldn't have been possible, but there's a bug in +load
where sub-nonce.yoke gets initialized as 0 instead of 1.)
2022-08-09 21:21:10 +02:00
fang
0a3f542fcc
gall: refactor sub-wire-with-nonce construction
...
Into +ap-nonce-wire.
2022-08-09 21:20:24 +02:00
fang
1f30dccddf
gall: use correct wires in +ap-kill-down
...
For potentially-outgoing moves, we need to make sure the nonce is in the
wire so that it gets associated with the right instance of the
subscription.
2022-08-09 20:53:43 +02:00
fang
e396ddcdaa
gall: cork a subscription's ames flow on-kick
...
Gall tells ames to %cork flows for subscriptions it has closed.
Receiving a kick also closes a subscription, but gall wasn't issuing a
%cork in that case. We correct that here.
Inlines +mo-handle-ames-response's logic at its only callsite.
2022-08-08 22:21:34 +02:00
yosoyubik
c69af12a6d
gall: make spore-tag a @ud
...
TODO: still getting kiln: %base not installed
2022-07-18 13:49:16 +02:00
yosoyubik
8712804d7f
gall: comment subscription kill
2022-07-14 07:23:39 +02:00
yosoyubik
d17fd7521a
gall: use spore tag for +molt subscription killing
...
WIP: kiln crashes after upgrade with a ! kiln: %base not installed
2022-07-13 15:52:15 +02:00
Ted Blackman
1cb2aaabbc
gall: fix +molt initialization
2022-07-13 15:52:07 +02:00
Ted Blackman
5f8378e1b7
gall: kill subscriptions after agents reload
2022-07-13 15:52:02 +02:00
yosoyubik
d9b7643b79
gall: fix condition to run +ap-kill-down
2022-07-13 15:51:46 +02:00
yosoyubik
4c8a4ecb0e
gall: run +ap-kill-down only once
2022-07-13 15:51:38 +02:00
yosoyubik
354a914c82
gall: run +ap-kill-down on +molt
2022-07-13 15:51:28 +02:00
Philip Monk
1bc0d0cd8e
gall: don't reload if code is unchanged
2022-07-07 00:12:27 -07:00
yosoyubik
608aba2a87
gall: handle subscriber-side %cork
...
this also enables increasing sub-nonces for every new subscription
TODO: create one global cork timer for all peers
2022-07-06 14:44:20 +02:00
Ted Blackman
1cda56673f
gall: idle agents not in %load move
2022-07-06 12:37:17 +01:00
Philip Monk
d4f02e0a57
clay: add global %goad logic
2022-07-06 03:32:15 -07:00
yosoyubik
f3a60aef14
gall: don't send %cork when leaving a subscription
...
This is a temporary fix, and first part of the gall-request-queue-fix
release in two stages. This gives a publisher ship the ability to
understand a %cork and handle it properly, but no subscriber will
be sending %corks at this stage when leaving a subscription.
We still add a nonce to all subscription wires but it doesn't
increment it when resubscribing, allowing flows to be reused.
Tested locally with toy pub/sub agents and Group join/leaving
2022-07-06 10:59:08 +02:00
Philip Monk
6d321c60cb
clay, gall: move agent build management to clay
2022-07-06 00:51:11 -07:00
yosoyubik
850de0bfd3
Revert "gall: run +ap-kill-down on +molt"
...
This reverts commit 2107240962
.
2022-07-06 09:12:30 +02:00
yosoyubik
675cf45171
Revert "gall: run +ap-kill-down only once"
...
This reverts commit cb5893ac05
.
2022-07-06 09:12:10 +02:00
yosoyubik
3560f6b7e3
Revert "gall: fix condition to run +ap-kill-down"
...
This reverts commit e5c86886e4
.
2022-07-06 09:11:22 +02:00
yosoyubik
e5c86886e4
gall: fix condition to run +ap-kill-down
2022-06-30 17:44:11 +02:00
yosoyubik
cb5893ac05
gall: run +ap-kill-down only once
2022-06-30 17:06:22 +02:00
yosoyubik
2107240962
gall: run +ap-kill-down on +molt
2022-06-30 15:57:02 +02:00
yosoyubik
2e92331a0b
Merge branch 'next/arvo' into yu/gall-rq-wire-ames-flow-kill
2022-06-16 08:54:24 +02:00
yosoyubik
fe412b1ca7
gall: remove $watches from egg/yoke
...
Also renames $beat to $boar so it signifies more its closeness to $boat
2022-05-18 15:27:17 +02:00
yosoyubik
c8f50ff2e6
gall: increment nonce after leaving pre-nonce subs
2022-05-17 15:37:33 +02:00
yosoyubik
7166e4c7cf
gall: skip nonce in pre-nonce subs wires
2022-05-17 14:29:13 +02:00
yosoyubik
586fecef10
gall: add %gn to scry the nonce of a subscription
2022-05-16 10:27:36 +02:00
yosoyubik
83356f02ca
gall: add $beat map for subscription nonces
...
Previously we stored the nonce in $boat, which changed the $bowl of each
agent. This compiles and all agents reload, but more testing is needed.
It also renames inbound/outbound watches to $bitt/$boat.
2022-05-16 09:13:40 +02:00
yosoyubik
a1dcc5a8cd
gall: print trace logs by agent
...
This uses the same patterns found in %ames. We add an %odd flag
for logs related to the gall-rq PR, and leave it open for other flags
2022-05-15 17:16:18 +02:00
yosoyubik
3f7f4dbd5a
gall: handle %kicks for nonexistent subscriptions
2022-05-03 12:49:10 +02:00
yosoyubik
c380cf3f42
gall: add %cork to remote-request action
2022-05-03 12:49:10 +02:00
yosoyubik
0a96d69785
gall: include sub-nonce in unsubscribe wire
2022-05-03 12:49:10 +02:00
yosoyubik
674c9e95a0
gall: style indentation
2022-05-03 12:49:09 +02:00
h5gq3
c95cce4404
style fixes
2022-05-03 12:49:09 +02:00
h5gq3
5583fc1320
ames-flow-kill
2022-05-03 12:49:09 +02:00
Ted Blackman
fdd2067e75
gall: review cleanups
2022-05-03 12:49:09 +02:00
Ted Blackman
edf5ec9123
gall: upgrades almost smoothly
2022-05-03 12:49:09 +02:00
Ted Blackman
a4ae79e794
gall: compiles with nonce in wire
2022-05-03 12:49:08 +02:00
yosoyubik
0252d71553
gall: WIP added sub-nonce to state and wire
2022-05-03 12:49:08 +02:00
Philip Monk
60950ade08
clay: cleanup
2022-04-29 15:05:53 -07:00
Joe Bryan
9c93068835
gall: adds verbose arg to agent scry implementation
2022-02-23 00:15:37 -05:00
Joe Bryan
92779d8179
gall: updates agent /whey scry to produce %mass mark
2022-02-23 00:14:44 -05:00
Joe Bryan
20c4645727
gall: adds optional agent integration with |mass
2022-02-22 13:07:01 -05:00
fang
2c5510db64
Merge branch 'jb/next-gen-term' into next/dill
...
Resolves a good number of conflicts. Most notably, re-propagates removal
of gall's %onto, confirms new /app/herm behavior, coerces hood/drum
state adapters back into place, and updates webterm to use the latest
api.
2022-01-24 14:50:16 +01:00
Philip Monk
3c658b17fa
Revert "gall: don't crash on suspended agent build failures"
...
This reverts commit d446418d53
.
2021-09-29 18:30:01 -05:00
Ted Blackman
d446418d53
gall: don't crash on suspended agent build failures
2021-09-29 18:49:20 -04:00
Ted Blackman
7e5feb4cb4
gall: implement pupal +stay
2021-09-29 16:24:12 -04:00
Ted Blackman
fd54c96a3f
gall: %jolt restart agent from new desk
2021-09-29 16:03:14 -04:00
Ted Blackman
9560fa43b2
gall,clay: fix migration file build dates; add %home as parent desk in jams
2021-09-29 15:00:42 -04:00
Fang
f6bb541269
gall: also watch changes to /sys/kelvin
2021-09-29 22:13:39 +04:00
Fang
27fcc9b4c3
various: %home -> %base
2021-09-29 22:13:08 +04:00
ryjm
47a6aa2753
spider garden: remove sigpams and move glob mark
2021-09-27 21:23:46 -04:00
ryjm
c630b560ee
gall: don't verify spider marks
2021-09-27 21:23:46 -04:00
Fang
18bad9c423
gall: give correct %gu results
...
Give false for suspended agents, instead of always giving true if the
agent exists.
2021-09-28 00:22:52 +04:00
Philip Monk
a94e17915f
clay: fix failure to load apps
...
When you loaded an app with an error, then fixed the error, it would
create the main gall %mult subscription at a time in the past. Then,
clay would never fill the subscription since it couldn't get the old %a
entries for the apps.
This fixes the issue in two ways: first, don't subscribe in the past.
Second, if clay can't get the old versions, just fire the subscription
anyway.
2021-09-26 00:26:37 -04:00
Joe Bryan
5385889ebd
Revert "Revert "Merge pull request #4463 from urbit/m/next-gen-term""
...
This reverts commit 3fba32185d
.
2021-09-24 23:14:55 -04:00
Joe Bryan
3fba32185d
Revert "Merge pull request #4463 from urbit/m/next-gen-term"
...
This reverts commit 39667fc071
, reversing
changes made to 698fd6f66f
.
2021-09-24 16:33:15 -04:00
Ted Blackman
16abd02a66
gall: set %hood to %base during dist upgrade
2021-09-22 23:11:41 -04:00
Fang
6812d15480
gall, kiln: better migration logic
2021-09-22 22:34:20 +02:00
Liam Fitzgerald
1ac0465da7
gall: ignore reload for dead agents
...
Fixes a bug where even if an agent was dead, if its source was modified,
then gall would still attempt a scry for its cage.
2021-09-13 08:43:57 +10:00
Ted Blackman
91714f5579
lull,dill,gall,kiln: move %pyre to :agent:gall
2021-08-27 18:06:53 +03:00
Fang
da85ee2e38
Merge branch 'master' into m/next-gen-term
2021-08-12 15:15:36 +02:00
Ted Blackman
616ab66f26
merge master; loosen :hood's updates
2021-08-11 19:23:36 +03:00
Ted Blackman
891a295366
gall: fix /clear-huck handling
2021-07-21 11:55:21 +03:00
Ted Blackman
88c15bcca2
gall: make %jolt idempotent, remove dead +mo-reboot
2021-07-20 17:59:20 +03:00