Rebuild: phase 2's prober reads the probe queue
probe:run (compose service prober, PROBE_CONNECTIONS, default 6) claims waiting candidates of settled releases (lone, then par2, then archive), fetches each article with BODY over connections of its own (no compression) and inspects it: the yEnc name and size, the content type from the first bytes, a par2 set's files, a RAR volume's entries and whether they're encrypted. Results per release and kind in release_inspections (CHUNK_TABLESPACE, the HDD); on the release passworded, inner_name (the largest content name) and inspected_at. 430 = missing, not yEnc = error, both final; connection trouble puts the candidate back. Fetch and parse in one process: an article takes ~0.1 s per connection, parsing a few ms (no queue in between). Parsers from voyager 1 (lib/yenc, lib/rar, lib/par2, lib/content sniff) with their tests; XoverClient.body; yencode. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
d72fe2f13f
commit
8bd6d6aa5f
30 files changed
+1666
-7
No files matched your search
Generated
+12
-1
@@ -22,7 +22,8 @@
|
||||
"luxon": "^3.7.2",
|
||||
"pg": "^8.23.1",
|
||||
"reflect-metadata": "^0.2.2",
|
||||
"xmlbuilder2": "^4.0.3"
|
||||
"xmlbuilder2": "^4.0.3",
|
||||
"yencode": "^1.2.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@adonisjs/assembler": "^8.5.2",
|
||||
@@ -7364,6 +7365,16 @@
|
||||
"node": "^20.19.0 || ^22.12.0 || >=23"
|
||||
}
|
||||
},
|
||||
"node_modules/yencode": {
|
||||
"version": "1.2.4",
|
||||
"resolved": "https://registry.npmjs.org/yencode/-/yencode-1.2.4.tgz",
|
||||
"integrity": "sha512-AfQkwlxmgfoWq04ATRUaA6YSjpclGzHNRt2BP76DogqvuiNUtuIj1Fq/fAThQmOwEXWlbQ6sMc/qjdeFtyCScQ==",
|
||||
"hasInstallScript": true,
|
||||
"license": "CC0-1.0",
|
||||
"engines": {
|
||||
"node": ">=0.10"
|
||||
}
|
||||
},
|
||||
"node_modules/yocto-queue": {
|
||||
"version": "0.1.0",
|
||||
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
|
||||
|
||||
Reference in new issue
Block a user