yosoyubik
34a7496720
ames: clean up nack flows after a cork
2022-07-08 07:29:04 +02:00
yosoyubik
ca1b586a46
ames: init cork timer on larval +take
2022-07-07 11:35:28 +02:00
yosoyubik
d4d443db13
ames: remove cork wire from state
2022-07-07 09:20:57 +02:00
yosoyubik
e366e55dbc
ames: add global daily timer for pending corks
...
WIP compiles and upgrades, and the timer gets properly reset
but untested for actual re-subscriptions with old publishers
2022-07-06 17:00:35 +02:00
yosoyubik
76919ce07c
ames: resend %cork after a naxplanation in one day
2022-07-06 10:52:19 +02:00
yosoyubik
ea4a31558f
ames: ack last fragment from closing bone
2022-07-01 09:59:24 +02:00
yosoyubik
a967b42c30
ames: print bone if "hear last in-progress"
2022-06-30 17:12:07 +02:00
yosoyubik
b0766c2f53
ames: remove misleading trace printf
2022-06-30 10:46:02 +02:00
yosoyubik
27ac0b601e
ames: use %$ as recipient vane for %corks
2022-06-30 10:18:37 +02:00
yosoyubik
17d52b8535
ames: handle bounce %cork from old publisher
...
Because the publisher will send the cork plea back to the subscriber on
the next bone, we are not able to know the bone for the original cork.
To handle it, we add the cork bone to the plea path
still wip: it keeps resending the cork plea faster than its ~h1 timer
2022-06-28 12:48:07 +02:00
yosoyubik
7de9c72f36
ames: add rift when inserting new peer state
2022-06-27 13:55:07 +02:00
yosoyubik
2e92331a0b
Merge branch 'next/arvo' into yu/gall-rq-wire-ames-flow-kill
2022-06-16 08:54:24 +02:00
fang
43dff9c279
ames: do not use old lanes during stateful forward
...
As 999f0e8
, but for the stateful code path in +send-blob.
2022-06-01 21:47:15 +02:00
fang
999f0e84e9
ames: do not produce stale forward lanes
...
Stale lanes may cause forwarding loops. Imagine the following:
1) Planet A is live. Galaxy B, its indirect sponsor, learns of its route.
2) A goes offline. Another ship, C, is started in its place, at the same route.
3) B receives a packet for A, forwards it to the known route.
4) C received the packet, forwards it to B.
5) Repeat from 3.
Here, we update the forward lane(s) scry used by the runtime to not produce a
peer's lane if they haven't communicated with us in the last hour. Everyone's
supposed to ping their sponsorship chain every 30 seconds. If those aren't
going through, you shouldn't expect to be reachable anyway.
We may or may not want to update +send-blob to match.
2022-06-01 17:17:37 +02:00
Philip Monk
5b773723b3
Merge remote-tracking branch 'origin/yu/ames-fixes' into next/arvo
2022-05-20 22:52:00 -07:00
Philip Monk
ac64f44538
clay: update tests
2022-05-20 20:03:34 -07:00
Philip Monk
f16abbd992
ames: fix comet communication with breached ship
2022-05-19 20:20:00 -07:00
yosoyubik
16920a894e
Merge branch 'yu/ames-fixes' into yu/gall-rq-wire-ames-flow-kill
2022-05-18 17:37:24 +02:00
yosoyubik
c2576cdc46
ames: handle +call moves if re-evolving from larva
2022-05-18 17:36:40 +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
Philip Monk
7e4ad62a51
Merge remote-tracking branch 'origin/yu/ames-fixes' into philip/tomb
2022-05-17 14:07:05 -07:00
yosoyubik
4dae3ae3e2
ames: indent
2022-05-17 07:49:15 +02:00
yosoyubik
f81061fe40
Merge branch 'yu/ames-fixes' into yu/gall-cork-wip
2022-05-17 07:47:58 +02:00
yosoyubik
2553573be0
ames: start drainage timer if regressed from adult
...
This accounts for a possible race condition where ames expects a
response, but regresses into the larval state. Upon receiving the
$sign on +take, we would remain stuck as a larva. Now we check
that we have enough information to re-evolve and then start a
/larval timer to begin draining the queue.
2022-05-17 07:11:09 +02:00
Philip Monk
d25194c7a3
arvo: reduce priority of lifecycle printfs
2022-05-14 23:59:21 -07:00
Philip Monk
8a2eac7c70
Merge remote-tracking branch 'origin/ted/ames-prod-2' into philip/tomb
2022-05-14 21:17:10 -07:00
Philip Monk
2e31f87068
Merge branch 'pr' into philip/tomb
2022-05-14 20:59:01 -07:00
yosoyubik
350636fe2a
ames: don't relay acks for naxplanations of %corks
...
This avoids closing a subscription prematurely, before the
server ames has had time to process the innitial %cork.
2022-05-14 10:52:45 +02:00
yosoyubik
76ddc359f5
ames: fixt 6-to-7 state update
2022-05-09 14:17:27 +02:00
yosoyubik
a2b771f704
Merge branch 'yu/ames-fixes' into yu/gall-cork-wip
2022-05-09 14:16:07 +02:00
yosoyubik
5d6b2d8997
ames: fix 4-to-5 state migration
2022-05-09 14:13:51 +02:00
yosoyubik
a278b63c66
ames: add tracing printf
2022-05-06 09:47:19 +02:00
yosoyubik
6318aa283b
ames: retry sending a %cork if publisher is behind
2022-05-05 14:04:18 +02:00
yosoyubik
06883b617e
ames: add new state version in +stay
2022-05-05 13:00:23 +02:00
yosoyubik
53e1c86833
Merge remote-tracking branch 'origin/yu/ames-fixes' into yu/gall-rq-wire-ames-flow-kill
2022-05-03 13:57:39 +02:00
yosoyubik
ec60399cdf
ames: restore previous +decode-shut-packet
2022-05-03 12:49:10 +02:00
yosoyubik
3f7f4dbd5a
gall: handle %kicks for nonexistent subscriptions
2022-05-03 12:49:10 +02:00
yosoyubik
a288d455c3
ames: remove %cork from |ack-meat
2022-05-03 12:49:10 +02:00
yosoyubik
8be9257164
ames: style indentation
2022-05-03 12:49:09 +02:00
yosoyubik
52ef6ba08e
ames: handles decoding old-format shut-packets
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
yosoyubik
02806f63a1
ames: hardcode rift for comets in state upgrade
2022-04-27 06:24:55 +02:00
yosoyubik
9cb425e0ef
ames: remove unused ames-to-ames %plea logic
...
This seems to have been used in the past for pinging the ship's
sponsor, but was later removed when the :ping app was introduced
2022-04-22 15:49:15 +02:00
yosoyubik
087f24e931
ames: use +trace to print logs
2022-04-22 12:29:16 +02:00
yosoyubik
e2f8e21529
ames: remove sigwut
2022-04-22 12:26:53 +02:00
yosoyubik
471b9be22d
ames: fix emit of parsing old wire log
2022-04-22 12:26:24 +02:00
yosoyubik
91435a92ca
ames: don't drop events with old wires
...
Previously we were dropping events that used old
wires that lacked a rift in them. This seems a
bad behavior because we don't want to destroy a
flow that has not been processed by both ends.
Note: pending a fix to test-old-ames-wire
2022-04-22 12:26:14 +02:00
yosoyubik
6cdebea1af
ames: address review
2022-04-22 12:26:08 +02:00
yosoyubik
60cc44e961
ames: fix cached state in larval upgrade
2022-04-22 12:26:02 +02:00
yosoyubik
1b01455fe5
ames: fix dangling-bone error
2022-04-22 12:25:55 +02:00
lukechampine
8399b7b96c
ames: add resend timer for attestation requests
2022-04-04 00:19:55 -04:00
lukechampine
53a0c87cdb
ames: add sendkeys-packet
2022-03-02 00:56:57 -05:00
lukechampine
df6318acd0
ames: fix comet self-attestation handling
2022-03-02 00:52:48 -05:00
lukechampine
1044d42a15
ames: don't enqueue blobs sent to unknown comets
2022-03-02 00:46:18 -05:00
yosoyubik
3d943ec201
ames: ignore missing peer-state on-publ-sponsor
2022-01-18 20:34:32 +01:00
Ted Blackman
bbc80f9d45
zuse,ames: ^^sein:title
2021-09-25 16:52:53 -04:00
Ted Blackman
bce8dfd477
ames: pop the next packet, not the first packet again
2021-08-28 23:01:15 +03:00
Ted Blackman
e2fd0b61e4
ames: |ames-prod to reset congestion control
2021-08-28 22:48:23 +03:00
Philip Monk
e2e4d28548
Merge pull request #4788 from urbit/la/sys-fast-orm
...
zuse: add +all, +any, +got, +has, +run, and +tab to ++ordered-map, jet hints, and reorganize alphabetically
2021-05-18 10:24:31 -07:00
Ted Blackman
4c94c7edd4
ames: expire direct lanes faster after inactivity
2021-05-03 17:33:56 -04: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
6b0dc98952
ames: reflect update of name +traverse -> +dip
2021-04-20 15:04:28 -05:00
Joe Bryan
19d5bd0de4
ames: gate "fragment crashed" printf on msg.veb
2021-03-18 17:04:08 -07:00
Philip Monk
6215137ed5
Merge remote-tracking branch 'origin/ted/ordered-map-fix' into release/next-sys
2021-03-03 18:20:33 -08:00
Philip Monk
6e3d1680a7
Merge remote-tracking branch 'origin/master' into release/next-sys
2021-03-03 17:54:57 -08:00
Philip Monk
413413b70c
zuse: traverse always delete
2021-02-26 21:03:20 -08:00
Philip Monk
5ac70ec974
ames: reset num-live to actual number of live packets
2021-02-26 20:53:27 -08:00
Ted Blackman
04ea4c78b2
ames: +on-hear-shut remove dead code
2021-02-26 16:55:26 +10:00
Ted Blackman
ccea39f865
ames: fix comet handshake
2021-02-26 16:55:24 +10:00
Ted Blackman
eb56fbd3f4
ames: shorten error printing; update pill
2021-02-19 11:54:34 -05:00
Ted Blackman
473a520b27
ames: more informative printing
2021-02-18 21:47:02 -05:00
Ted Blackman
6234b56ac1
ames: cache message +jam in +on-memo
2021-01-20 15:29:45 -05:00
Philip Monk
e5d4230f6b
ames: print on crashing %done
...
This is guaranteed to produce a stuck flow if the error isn't transient,
so this will be good info to get.
2020-12-11 16:49:55 -08:00
Philip Monk
175ce28bb7
ames: tag verb printfs
2020-12-11 16:45:13 -08:00
Philip Monk
595efabf6c
ames: recover from %strange-current
2020-12-11 16:43:13 -08:00
Joe Bryan
2b8d83e255
ames: remove "larva: drain" printf (too noisy)
2020-12-08 03:32:29 -08:00
Joe Bryan
aaf506ce8a
Merge branch 'jb/motion' into jb/motion-merge
...
* jb/motion:
pill: solid
zuse: remove %crud from vane-task
arvo: full vane names in $sign
aqua: build again (still broken)
arvo: reform of the scry reform
2020-12-07 18:52:51 -08:00
Joe Bryan
5dd3e148b8
zuse: remove %crud from vane-task
2020-12-07 18:01:48 -08:00
fang
d98c59e73a
zuse: lift moves out of +able
2020-12-08 01:47:06 +01:00
Joe Bryan
17736990ed
arvo: full vane names in $sign
2020-12-07 16:30:22 -08:00
Joe Bryan
98f2b8c6b3
arvo: reform of the scry reform
2020-12-07 13:52:12 -08:00
Joe Bryan
5a82f1d4c0
Merge branch 'na-release/candidate' into jb/motion
...
* na-release/candidate: (36 commits)
ames: don't crash on forward-lane scry
jael: cleanup per review
jael: don't signal breach if first hearing of ship
pill: update
vere: compile
lens: don't de-base64
vere: make import flow not use base64 encoding
version: strip trailing newline
pill: mainnet
Revert "zuse: change to ropsten"
chat-hook: fix another poke-import issue
chat-hook: fix poke-import issue
apps: reorder maps, sets, and jugs
apps: reorder maps, sets, and jugs
kiln: add base-hash and our scries
lens: fix change lost in merge
graph-store: leave try-rejoin wire when subscription succeeds
graphs: import-export
chat: import/export
invites: import/export
...
2020-12-07 00:27:58 -08:00
Joe Bryan
ff06ccd2b9
arvo: completes scry reform
2020-12-06 03:33:43 -08:00
Joe Bryan
5bc6d38437
arvo: updates vane interface
2020-12-06 03:33:43 -08:00
Philip Monk
4b8be294b2
ames: don't crash on forward-lane scry
2020-12-05 20:02:31 -08:00
Joe Bryan
958bb5acf7
arvo: removes +is and all references to it
2020-12-05 00:51:49 -08:00
Joe Bryan
5111831a03
ames: use +rep to assemble message fragments
2020-12-03 14:26:55 -08:00
Joe Bryan
9bb790e3e9
ames: updates +end, +lsh, and +rsh call sites
2020-12-03 14:25:31 -08:00
Ted Blackman
c7b8ffbf4e
ames: flat packet format
2020-12-01 09:51:14 -05:00
Joe Bryan
072e2c8101
Merge branch 'm/vane-unversion' into m/modern-hoon
...
* m/vane-unversion:
ames: remove old state versions & conversions
gall: rename fading styles
vanes: remove old load types and logic
gall: refresh clay subscription on fade
gall: add nonce to agent wires
gall: add %doze-style fade
gall: fade initial commit
2020-11-30 21:04:16 -08:00
fang
122123c11a
ames: remove old state versions & conversions
2020-11-27 13:55:21 +01:00
Joe Bryan
f95e1f48c2
arvo: scry reform
2020-11-25 16:02:10 -08:00
fang
7956adedee
vanes: remove old load types and logic
...
Maintains state version numbers to avoid tripping up migration tools.
2020-11-25 16:24:16 +01:00
Ted Blackman
56db7cdcda
ames/zuse: require >64-bit comet addresses
2020-10-27 17:28:07 -04:00
Ted Blackman
fcf9cfbcdb
ames/zuse: require >64-bit comet addresses
2020-10-27 17:20:25 -04:00
Joe Bryan
da928bed10
ames: updates forward-lane scry-handling to match +send-blob
2020-10-22 17:37:46 -07:00
Ted Blackman
f2be97d315
ames: print failed scrys
2020-09-18 16:06:13 -04:00
Philip Monk
1d0409c4c4
ames: fix lane discovery during some lane changes
...
We used to not accept new indirect lanes if we already have a direct
lane. This means that if Bob, with a publicly-accessible lane, changes
lanes (eg by restarting the process and getting a new port or changing
ip addresses), tries to talk to Alice, who is behind a NAT, then Bob
will try directly but fail (because Alice is behind a NAT), so he will
route the message through her galaxy. This is good -- the message gets
to Alice. However, Alice had a direct route to Bob's old lane, so she
will try to ack on that lane, which fails. She will not time out this
lane because she doesn't know that Bob isn't getting the acks (acks
don't have their own acks).
The solution is that if Alice receives an indirect lane for Bob when she
already has a direct lane, she shouldn't ignore it. If the lane is the
same as what she has, she shouldn't change anything (in particular, she
shouldn't mark it as indirect). But if it's a new lane, she should
discard her old direct lane and use the new indirect lane.
2020-07-24 20:41:48 -07:00
Fang
3955d1092b
ames: add scry endpoint for forward lanes
...
Finds the lane for that peer, or their galaxy. Intended for use in the
runtime, to enable stateless forwarding.
2020-07-22 16:33:34 +02:00