Opened 4 months ago

Closed 2 months ago

#2575 closed defect (fixed)

Orchid fails to download descriptors when useMicrodescriptors=false

Reported by: Reportage Owned by: zzz
Priority: minor Milestone: undecided
Component: apps/plugins Version: 0.9.41
Keywords: orchid, descriptors Cc:
Parent Tickets: Sensitive: no

Description (last modified by Reportage)

When useMicrodescriptors set to false, Orchid will repeatedly fail to download descriptors and will be unable to build circuits.

WARN […k worker-96] …toryDownloadTask: [Orchid] Failed to download router descriptors: Failed to parse response from Directory: Too many arguments for keyword 'extra-info-digest' expected 1 and got 2

Appears to be a modification to the spec that breaks Orchid.

More info:

Spec update:

Subtickets

Change History (6)

comment:1 Changed 4 months ago by Reportage

Description: modified (diff)

comment:2 Changed 4 months ago by zzz

Priority: majorminor

Then don't set the value? Why would you do that? We don't provide any UI to change settings, so nobody's going to stumble into this. Arbitrary settings aren't guaranteed to work.

comment:3 Changed 4 months ago by Reportage

Full descriptors are required to enable various functions listed in src/java/com/subgraph/orchid/Router.java

Specifically, I want to be able to expose router uptime, bandwidth, and platform information in the UI.

In terms of the size of the consensus files vs the microdesc-consensus, the difference is negligible, 2.2MB vs 2MB, so enabling their use shouldn't noticeably impact performance.

comment:4 Changed 4 months ago by Reportage

Description: modified (diff)

comment:5 Changed 4 months ago by Reportage

Workaround:

@@ public class DocumentFieldParserImpl imp
 
 			// Is this the correct thing to do, or should just be a warning?
-			throw new TorParsingException("Too many arguments for keyword '"+ keyword +"' expected "+ expectedMax +" and got "+ argumentCount);
+			logger.warning("Too many arguments for keyword '" + keyword + "'; expected " + expectedMax + " and got " + argumentCount);
+//			throw new TorParsingException("Too many arguments for keyword '" + keyword + "'; expected " + expectedMax + " and got " + argumentCount);
Last edited 4 months ago by Reportage (previous) (diff)

comment:6 Changed 2 months ago by Reportage

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.