-
Notifications
You must be signed in to change notification settings - Fork 40
Conversation
b8f9f6b
to
a24a2af
Compare
a24a2af
to
856263e
Compare
Test flake analysisNo flakes detected 🎉
|
959058a
to
8edb673
Compare
Added explicit checks on existence of name records after syncing changes in tests, possibly clearing up a handful of intermittent failures. Windows builds are having an unrelated issue: #805 |
8edb673
to
40fae49
Compare
Added time out support, recreating the hanging worker thread and attempting to resubmit the job. Of note, the |
a6ca055
to
30c88a1
Compare
const JOB_RETRIES: usize = 1; | ||
/// How many seconds before a job is considered broken, | ||
/// and potentially restarted. | ||
const TIMEOUT_SECONDS: u64 = 180; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Syndicating large histories could be longer than this timeout, and notably, name records' publishing timeframe is currently 2 minutes.
8b2440e
to
c79d784
Compare
c79d784
to
5f120de
Compare
Rebasing on #815 |
IIRC we now syndicate full spheres at a time to IPFS, so it isn't necessary to track this. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The bones look excellent, but I have some light opinions about some of the flesh :)
Great work so far!
370d2fd
to
8cadcfc
Compare
Updates (commit):
|
8cadcfc
to
59fb09a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for the hard work on this!
59fb09a
to
1359c00
Compare
1359c00
to
b98fe6d
Compare
Decoupled Worker Tasks
Worker tasks are now abstracted such that routes now send jobs via a
JobClient
decoupled from where the work is performed. A standalonenoosphere_gateway::jobs::worker_queue
module provides the work distribution logic, with each processor receiving aGatewayJobContext
that provides access to sphere contexts, IPFS, and name resolvers when processing a job.LinkRecord
can propagate before blocks are available #606).Minimize external queries
GatewayManager
and routes were updated to minimize GM queries (#753).In addition to a single, cacheable baseline query for scope, unauthenticated routes now has one less external query, and authenticated routes also has one less external query, with another query moved behind authorization.
Ultimately handler logic should not be changed, other than moving Push handler's queueing of name record publishing behind IPFS syndication.
Caveats/Concerns/Enhancements
KuboClient
and the name resolver.Implement timeouts in worker queue.Timeouts now implemented