Commit Graph

30361 Commits

Author SHA1 Message Date
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
0baad53fb4 ames: drop pleas on dead bones 2022-08-10 19:47:59 +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 c47f9c6053c05da0177f0c64210a88161e8adc98
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 e696816b8d3ab81534de6c2910d0fd4bebcfb68a
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 4edb247cd77ac988e5b11806d0d9b5e7cec4a39e
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 b21ffd9cfab0987297f3ae4cd16447ed0c3a467e
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 7d532afaf80b773139b66d787c4a446e3d6a9a33
Author: Ted Blackman <ted@tlon.io>
Date:   Fri Aug 5 17:52:16 2022 +0300

    gall: add subscription nonce to %doff

commit f750de9aacdb19f796bff527e220df9c10e41e71
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 38540658b59d703b0fa162af4f958948b7ee2031
Author: fang <git@fang.io>
Date:   Thu Jul 28 21:10:57 2022 +0200

    gall: account for renaming of subscription state

commit c015dc8446fc02729ad492e24635c9c521f09965
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 7c222e4c60d946042fd06d858086a883bf8a0f7b
Author: Ted Blackman <ted@tlon.io>
Date:   Thu Jul 28 14:01:00 2022 +0200

    hood: |doff generator

commit 8d00cf1bd1b304f30431614b68002827e498d97e
Author: Ted Blackman <ted@tlon.io>
Date:   Thu Jul 28 13:21:45 2022 +0200

    gall: fix compile errors

commit 6a1fd360ffc65d8c6f90e491bb21fa7799a98c31
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
a5f08643ff
Merge pull request #5932 from urbit/ted/ack-crash
ames: fix "ack crash"
2022-08-10 16:02:10 +02: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
Ted Blackman
ce9f692ecd ames: clean up %cork plea handling
+on-plea gets called in two very different ways:
1) handling request from local vane to send %plea to peer
2) handling %cork request from another ship, which our local ames has %pass'ed
   to ourselves

In the second case, we shouldn't print misleadingly, or bind a duct in the ossuary.
2022-08-10 00:47:38 +03:00
Ted Blackman
2dc7171dfa ames: no-op on acks on corked bones 2022-08-10 00:44:54 +03:00
fang
db1e8d1b92
gall: explain reason for strange conditional 2022-08-09 21:36:08 +02:00
fang
33d28ad79f
Merge pull request #5930 from urbit/m/gall-clog-cork
gall: cork a subscription's ames flow on-kick
2022-08-09 21:31:42 +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
fang
8eb8a1da29
Merge pull request #5923 from urbit/ted/recork-better
ames: recork better
2022-08-05 11:42:45 +02:00
Ted Blackman
da591a4078 ames: invert busted conditional in recork timer 2022-08-05 02:37:03 +03:00
Ted Blackman
56d4906a13 ames: try next recork on cork ack
Without this, a ship would send a cork on a max of one flow per
recork timer, which could take years to clear for some ships.
This starts a hot loop of trying the next cork once one gets
positively acked.
2022-08-05 01:35:34 +03:00
Ted Blackman
54cd1a5eca ames: simplify recork timer
The previous recork timer queued up %cork messages without sending them.
It also relied on making sure pump timers didn't get set for recork bones.
This was fragile.

The new design enqueues up to one new %cork message per ship during each
recork timer, based on the state of the flow.  If the flow is closing but
there are no outstanding messages in it, then it needs to be recorked.
Flows will be recorked in ascending numerical order by bone.
2022-08-05 01:13:21 +03:00
fang
aad5fa6fae
Merge pull request #5922 from urbit/ted/recork
ames: don't start pump timers on recork
2022-08-03 21:31:17 +02:00
fang
9433d3354d
ames: unsent-fragments is a list, not a tree
Measure accordingly.
2022-08-03 21:03:49 +02:00
fang
7af527e605
ames: correctly measure queue size 2022-08-03 20:52:03 +02:00
fang
e6453bae3c
ames: more detailed "future msg" trace
This additional information may come in handy when debugging this crash
we shouldn't be seeing.
2022-08-03 20:46:54 +02:00
fang
e16c499724
ames: make recork timer faster
This will aid visibility and debugging. We'll probably want to make this
slower again later.
2022-08-03 20:33:04 +02:00
fang
7c01ee9b35
ames: account for corked flows during %stir
Also patches the behn scry in %stir handling to be correct for latest behn.
2022-08-03 19:37:53 +02:00
fang
b860bef066
ames: correctly avoid setting pump timer
The condition got butchered during refactor: instead of avoiding the creation
of pump timers during recork wake, it was setting them _exclusively_ during
recork wake.
2022-08-02 23:23:48 +02:00
Ted Blackman
e5e4c8602d ames: properly set recork flag in +on-wake 2022-08-02 23:15:43 +03:00
Ted Blackman
67efb2ad7c ames: don't start pump timers on recork 2022-08-02 23:03:34 +03:00
fang
731e27d5a1
Merge pull request #5886 from urbit/yu/gall-rq-global-cork-timer
gall, ames: fix subscription desync (stage ii)
2022-07-28 17:46:45 +02:00
fang
7e71cbf61a
tests: temporarily disable ames comet flow test
This test started failing presumably somewhere during #5886. Testing
with a comet on the network, the test seems inaccurate: the comet can
communicate and be communicated to just fine.
2022-07-28 17:11:40 +02:00
fang
2915716191
pill: update
Again. Sorry.
2022-07-28 17:09:22 +02:00
fang
9860f62e1f
pill: update 2022-07-28 16:15:23 +02:00
fang
289fe5ef64
Merge branch 'next/arvo' into yu/gall-rq-global-cork-timer 2022-07-25 19:50:26 +02:00
fang
7ccfec6caf
Merge branch 'master' into next/arvo 2022-07-25 19:14:30 +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
a5aedaccc5 ames: delete naxplanation flows if bone is corked 2022-07-18 10:27:36 +02:00
yosoyubik
35c6ac416e ames: fix predicate for detecting %cork acks 2022-07-16 07:40:05 +02:00
fang
cd3dc4bdb9
Merge pull request #5830 from urbit/m/aqua-mark
aqua: add %aqua-effect mark file
2022-07-15 20:17:01 +02:00
yosoyubik
c599e60c5b ames: add recork set 2022-07-15 16:45:32 +02:00
yosoyubik
8712804d7f gall: comment subscription kill 2022-07-14 07:23:39 +02:00
fang
6d3d06251b urbit-os-v2.124
- Fixes an issue where behn would fail to report the next timer to vere
   correctly, resulting in timers only firing once every ten minutes.
 - Updates |rein to be additive instead of fully replacing existing
   configuration. Specifying a single agent to start will no longer stop
   other explicitly-started agents.
 - Various QoL improvements to dojo.
 - Updates DNS requests to go to ~deg instead of ~zod. The Foundation
   will take over DNS request handling.
 
 Contributions:
 
 David Farrell (5):
       dojo: have dojo check =dir exists before switching
       dojo: simplify dir not exist error message build
       dojo: setting eny/now/our shouldn't crash dojo
       dojo: say how to beat the %dy-edit-busy escape room
       dojo: remove unnecessary debug output
 
 Joe Bryan (8):
       behn: adds (failing) tests
       behn: unconditionally clear runtime timer state on %wake
       behn: don't compare pending timers to now
       behn: refactor to use +abet pattern
       behn: emit %doze on any rescheduling of the next timer
       behn: cleans up comments
       Merge pull request #5858 from urbit/jb/behn-fix2
       test: removes debugging comments from %behn unit tests
 
 Sidnym Ladrut (1):
       hood: fix issue w/ rein diff application
 
 Yaseen (1):
       eyre: Modify landing title from "OS1" to "Urbit"
 
 fang (16):
       clay: render syntax errors at end of file
       Merge pull request #5811 from ynx0/patch-1
       Merge pull request #5812 from urbit/m/eof-syntax-error
       Merge pull request #5837 from dnmfarrell/dnmfarrell/arvo-dy-edit-press-bksp-to-abort
       Merge pull request #5840 from dnmfarrell/dnmfarrell/arvo-dojo-check-dir-exists-before-switch
       Merge branch 'master' into next/arvo
       gall: exclude from traces
       Merge pull request #5841 from dnmfarrell/dnmfarrell/arvo-dojo-dont-crash-set-beak
       Merge pull request #5863 from sidnym-ladrut/sl/fix-rein-toggle-behaviori
       Merge pull request #5868 from urbit/pkova/dns
       Merge branch 'master' into next/arvo
       Merge pull request #5857 from urbit/jb/behn-fix1
       Merge pull request #5855 from urbit/m/gall-quieter
       hood: re-patch |rein
       Revert "clay: render syntax errors at end of file"
       Revert "gall: exclude from traces"
 
 pkova (1):
       dns: transfer ship.arvo.network domains from ~zod to ~deg
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEB0bRQARxix0iuhs56wNXYMG7qXIFAmLPF9wACgkQ6wNXYMG7
 qXLO5w/7BSc5aajTaA/o8ma4SoySX/PXH1dnnoJO9A2fiYR3sIpcdY12xNmnCA/e
 y0OyQeSqmRzO90bVJI3AVxN0qEDcz0fR9ZoC8YeYWRrAWy7xRTm808NRW1rovAEN
 LIlOemUpJODlqkkiD0x8hwxNSix9+tkcr6ehilzIuORaBcTI586rekT+FfXGuD9Z
 IURbKkKS443M3kIyL9MUXu8lopMpfwZg9VYwo3a8fnUvUmVRleHBpUI71GXd41w4
 eQv63197mcwMq/od9JUXBdX1yek/QyVV0SqZhPCksUOipdCbH0oJpzBmh/4i0CGb
 Ij2gyGlth4iErXx+TBBpHk0FKQysHoPQyBI3/ljtZG4xpVToKHyuw7hODHR4STUL
 hYV+iWbOJ+reh0Zkrk/SjZHZMYBKcuBonIXwNXDE5cC50q+dqqaj8+0oPOmdjhDy
 rbzN377Ijags+ivLagpra1KE+lVLtKbOae16FqzBZJqs7xuj9ZsoabG+OxoXDH7j
 i1oXIskYuIzHfbSbDk2eaCPKONFs19Oi8ULg5/zxaJsQLks9WMuckBPFr4paCrdo
 eBFe139f87xBi8WBZ7rzYyrUFtGhTLo1Bzapdbvh18WhYfK95sTo+PCUJNHB29+H
 qmkE3bMZ+v2VOPLFtRfrb1bolpsoR/m5Z6SWElMB2Ig2WKkDqvE=
 =CxGA
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEB0bRQARxix0iuhs56wNXYMG7qXIFAmLPJAQACgkQ6wNXYMG7
 qXLiyxAAmOlm72h+UC34dnmtiIKjRyuq+XXl8MdyPu0XZPKS1XzewFAP+iQE1uVG
 X5HJ04xl6SI/npa99p95K7f2T69OkXWvwax8fhu/+hhIVq8bQAOfzMIW5jk2Bfzl
 j1wMjcjzDZquqNVaYHsYAmnUZFl2Tp3mv3j3VgxsyUfdXFKQLz9g7lhBellIZ1F+
 HTfK8YBWGhzfUoJ/3pfXp7Q/6w60pW4AC/6dbfbmKW5rcZpyATWhIbYWullPsJWC
 pjf5KYjwiiOVQU/0cZ5alXZX0ofV4Tf9er5I4Np0fF3j/5O1vdmBJ9E4RGJXJMrR
 sQ6xt7yuX5wrpbUTqgvxA7sSjEB4+lk8sZJvC5KpLIvNF6s4o1aUnHYSODeIr0r3
 vkx7YYfhbDv84xHA3lIejh7vcM5182dq0cNhHD1uLGt81IeE+YCl0G1cvUV5QxrQ
 WGt3uLanIpBAJjseMc4N3mUcG343G0vs8058gZtwqsGXy7byF3tFKmt1kHPh2pjP
 W9HJ0+MN7VSGqNidMv74r4ZpsDPdERkUqdhzb30tvBBp6xraXflVjvUT5Ln+501p
 m2PO5aLbeVclIViwsC7wFLYooHDz5O7hZx5Sf1uUjNsaGYSPotPGH8UsXSiyKZ5/
 p067gSrcyqHuLRYR/7izDCe7xTHImpP3doL6xmW4br2gl5wKX1s=
 =BGu/
 -----END PGP SIGNATURE-----

Merge tag 'urbit-os-v2.124'

urbit-os-v2.124

- Fixes an issue where behn would fail to report the next timer to vere
  correctly, resulting in timers only firing once every ten minutes.
- Updates |rein to be additive instead of fully replacing existing
  configuration. Specifying a single agent to start will no longer stop
  other explicitly-started agents.
- Various QoL improvements to dojo.
- Updates DNS requests to go to ~deg instead of ~zod. The Foundation
  will take over DNS request handling.

Contributions:

David Farrell (5):
      dojo: have dojo check =dir exists before switching
      dojo: simplify dir not exist error message build
      dojo: setting eny/now/our shouldn't crash dojo
      dojo: say how to beat the %dy-edit-busy escape room
      dojo: remove unnecessary debug output

Joe Bryan (8):
      behn: adds (failing) tests
      behn: unconditionally clear runtime timer state on %wake
      behn: don't compare pending timers to now
      behn: refactor to use +abet pattern
      behn: emit %doze on any rescheduling of the next timer
      behn: cleans up comments
      Merge pull request #5858 from urbit/jb/behn-fix2
      test: removes debugging comments from %behn unit tests

Sidnym Ladrut (1):
      hood: fix issue w/ rein diff application

Yaseen (1):
      eyre: Modify landing title from "OS1" to "Urbit"

fang (16):
      clay: render syntax errors at end of file
      Merge pull request #5811 from ynx0/patch-1
      Merge pull request #5812 from urbit/m/eof-syntax-error
      Merge pull request #5837 from dnmfarrell/dnmfarrell/arvo-dy-edit-press-bksp-to-abort
      Merge pull request #5840 from dnmfarrell/dnmfarrell/arvo-dojo-check-dir-exists-before-switch
      Merge branch 'master' into next/arvo
      gall: exclude from traces
      Merge pull request #5841 from dnmfarrell/dnmfarrell/arvo-dojo-dont-crash-set-beak
      Merge pull request #5863 from sidnym-ladrut/sl/fix-rein-toggle-behaviori
      Merge pull request #5868 from urbit/pkova/dns
      Merge branch 'master' into next/arvo
      Merge pull request #5857 from urbit/jb/behn-fix1
      Merge pull request #5855 from urbit/m/gall-quieter
      hood: re-patch |rein
      Revert "clay: render syntax errors at end of file"
      Revert "gall: exclude from traces"

pkova (1):
      dns: transfer ship.arvo.network domains from ~zod to ~deg
2022-07-13 21:58:49 +02:00
Hunter Miller
e6ae2ba5dc meta: correcting version' 2022-07-13 12:23:29 -05:00
Hunter Miller
1ac97b2f69 meta: version bumps 2022-07-13 12:21:20 -05:00
Joe Bryan
0c81bc82b1 Merge branch 'master' into next/arvo
* master:
  groups: [skip actions] update glob (0v3.mtkm8.77bad.7j793.jtnl4.pi1mm)
  groups: correcting package lock yet again
  Solve #5706 - Create vase at each branch of `t.t.t.t.path`
2022-07-13 12:18:40 -04: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
Ted Blackman
78b1c521c7 treaty: fix case upgrade issue 2022-07-13 15:51:56 +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