Commit Graph

398 Commits

Author SHA1 Message Date
fang
292a65f64c
Merge branch 'next/arvo' into yu/content-dist-merged
Includes patched versions of ames' and clay's +load arms.

In clay, we do a dumb ;; hack to get the state to adapt properly. This
shouldn't be needed ($case had an extra... case added to it, old ones
should still nest), and so we should revisit the logic there to make it
cleaner/better before release.
2022-06-30 16:27:02 +02:00
yosoyubik
20ad05eabc clay: update scry retry/timeout 2022-06-24 09:33:29 +02:00
fang
7a110db60d
clay: render syntax errors at end of file
Previously, if the pointer for a syntax error pointed to the end of the file
(and the file ended in a newline) the code snippet rendering would try to
display a line _beyond_ the end of the file, causing a crash.

Here, we detect that case, and display `<<end of file>>` instead.
2022-05-30 16:08:59 +02:00
Ted Blackman
f159f38f16 ames: (debug build) fix yawn 2022-05-27 15:54:38 -05:00
fang
6eba8053f8
various: further tweaks and assets for testnet 2022-05-24 23:55:32 +02:00
Philip Monk
b914fbaedc clay: add logging commands 2022-05-20 17:01:50 -07:00
fang
a0f7891f50
Merge branch 'philip/tomb' into lf/content-dist-rc
Beware, the ames conflict was particularly nasty. State migrations as of
yet untested.

Includes patched-up fine tests.
2022-05-19 17:07:35 +02:00
Philip Monk
7f63f548f5 clay: don't add lobe to wire to avoid flow leak 2022-05-18 20:54:10 -07:00
fang
c1ce8bcec0
clay: don't clear busy flag unnecessarily
Not every +foreign-update call means we got a backfill response. Only
+take-backfill does, and that already clears the busy flag.
2022-05-18 16:17:19 +02:00
fang
055f31dada
clay: set saner scry timeout & retry timers 2022-05-18 15:24:02 +02:00
fang
2e6a7cfec8
clay: track pending (scry) requests better
Instead of having a separate "busy" flag and pending scry request state,
we now have a single "busy" unit that, if there is a pending request,
contains details about the pending request. In the ames case, this is
simply %ames. But in the scry case, it contains all the details we need
to cancel the request, timer, or both when needed.

Additionally, we now make sure to always cancel the scry timeout timer
whenever we get a scry response.
2022-05-18 15:21:26 +02:00
Philip Monk
201cb7290f clay: add tomb scry 2022-05-18 02:12:35 -07:00
Philip Monk
6cae525464 clay: make trim clear ford cache 2022-05-18 00:35:23 -07:00
Philip Monk
61c1e19db5 clay: progress download when receiving tombstone 2022-05-18 00:11:16 -07:00
Philip Monk
4051d182ee clay: fetch entire latest foreign commit 2022-05-17 22:07:53 -07:00
Philip Monk
9548f8333a clay: don't require head of foreign desks 2022-05-17 17:06:03 -07:00
Philip Monk
9f0e8294db clay: fixes 2022-05-17 16:02:15 -07:00
fang
4848d58410
clay: properly resume work when +retry-with-ames
Previously, when the scry timeout fired and we retried the request with
ames, we would always start over from the very first request (ie,
fetching the ""manifest"" containing the files we need to download).
This behavior is not correct in the case where we had already received
that initial response, and were now fetching individual files. So here,
if that's the case, we simply call into +work after marking this peer as
having known-broken scry, which will resume work as appropriate.

(The actual bug here that broke the fallback behavior entirely was the
busy flag not getting unset. We now clean it up properly.)

We also move setting of the sad timer into +retry-with-ames, instead of
doing it at each individual callsite. (In fact, one of the callsites was
missing this behavior.)
2022-05-18 00:30:31 +02:00
Philip Monk
c440a333d3 clay: tweaks from walkthrough 2022-05-17 14:17:53 -07:00
Philip Monk
9c7c776fd8 clay: fix stack while building directories 2022-05-15 02:27:49 -07:00
Philip Monk
d25194c7a3 arvo: reduce priority of lifecycle printfs 2022-05-14 23:59:21 -07:00
Philip Monk
c091ec92eb various: make all files build correctly 2022-05-14 22:49:10 -07:00
fang
0251b127e1
clay: request files over scry by tako, not aeon 2022-05-12 17:14:55 +02:00
fang
70aeb2a7c1
clay: treat %d scry on empty desk specially
Similar to how %x on the empty desk was already treated specially. We
continue supporting %d on non-empty desks, but do add a print marking it
as deprecated.
2022-05-12 00:41:58 +02:00
fang
9286fc93b1
clay: give tako 0v0 for aeon 0
The previous commit already started treating the 0v0 commit as
equivalent to the 0 aeon (that is, never-real root), so we should give
the 0v0 commit for all 0 aeons.
2022-05-12 00:39:02 +02:00
fang
5549071649
clay: do reads by tako, not by aeon
This corresponds more closely to how clay actually works/stores data.
2022-05-11 20:58:24 +02:00
fang
bb7e74c1e9
arvo: add %uv hash case to scry paths
Clay desparately wants something like this. It helps answer questions
around hash-based content fetching.
2022-05-11 16:16:03 +02:00
Philip Monk
32ff1417a7 clay: only maintain mime cache if mounted 2022-05-10 20:33:01 -07:00
Philip Monk
3b0c2dac9c clay: validate files in separate roads 2022-05-10 20:32:11 -07:00
Philip Monk
7f573cb357 clay: tweak |mass output 2022-05-10 03:24:58 -07:00
fang
80958c70a0
Revert "clay: scry for files by lobe"
This reverts commit d5dca99ba8.
2022-05-09 17:20:02 +02:00
fang
d5dca99ba8
clay: scry for files by lobe
Instead of scrying for revisions of files at paths in desks, we now scry
for data corresponding to a given lobe. This removes concerns of aeons,
paths, and other such frivolities, and lets us ask for the specific data
we need regardless of where it may live.

How we're supposed to answer permissioning questions around data this
way remains to be seen.
2022-05-05 16:59:09 +02:00
fang
8bef14d0a7
Merge branch 'philip/tomb' into lf/content-dist-rc 2022-05-05 00:33:37 +02:00
Philip Monk
591bdf458c Merge branch 'next/arvo' into philip/tomb 2022-05-04 00:45:57 -07:00
Philip Monk
4760e4e158 clay: fix |pick 2022-05-04 00:22:00 -07:00
Philip Monk
c995f04474 clay: comment 2022-05-03 22:09:36 -07:00
Philip Monk
53353cde11 clay: add %sweep scry to verify refcounts 2022-05-03 21:59:56 -07:00
Philip Monk
d59fb3a82b clay: address review comments 2022-05-03 19:17:39 -07:00
Philip Monk
a3a2934d53 clay: add dependencies to stack on sprig hit 2022-05-03 16:47:48 -07:00
Philip Monk
c96e5bbf09 clay: reduce printfs 2022-05-03 16:20:36 -07:00
Philip Monk
7e17ae25fb clay: rename poor->mist 2022-05-03 16:17:28 -07:00
fang
b42833a568
Merge branch 'm/scry-vane-next' into lf/content-dist-rc 2022-05-03 15:29:16 +02:00
Philip Monk
53a417dc43 clay: add sprig cache 2022-05-03 01:32:40 -07:00
Philip Monk
21cc132884 clay: rename ford-cache->flow 2022-05-03 00:17:30 -07:00
Philip Monk
8bab16d448 clay: remove -k arms 2022-05-01 17:03:17 -07:00
Philip Monk
0b72164740 clay: remove +build-leak 2022-05-01 16:36:45 -07:00
Philip Monk
c2754662b8 clay: new ford cache 2022-05-01 03:54:03 -07:00
Philip Monk
7219b7e58f clay: collapse version 12 into 11 2022-04-29 20:44:42 -07:00
Philip Monk
5a5de05518 clay: enable mounting revisions of desks 2022-04-29 18:50:30 -07:00
Philip Monk
a7eaddfdc7 clay: remove ankh
ankh was a cache of the current validated blobs, which is no longer
necessary
2022-04-29 17:29:50 -07:00