Ticket #81 (new defect)

Opened 6 months ago

Last modified 4 months ago

fix the WEIRD log message in Tub.connectorFinished

Reported by: warner Assigned to:
Priority: major Milestone: 0.3.3
Component: unknown Version: 0.2.5
Keywords: Cc:

Description (Last modified by warner)

source:foolscap/pb.py@5d5860ccef21#L568 is a WEIRD-level log event that I see happening all the time. Because it's at the WEIRD level, it triggers Incidents, so I'd like to nail down why it is happening and fix it.

Change History

07/07/08 19:43:26 changed by warner

  • description changed.
  • milestone changed from undecided to 0.3.0.

09/02/08 21:10:17 changed by warner

it looks like this is happening when two parallel connections are made to separate connection hints of the same remote target (one to 127.0.0.1, the other to an external IP address), and the 127.0.0.1 connection wins, and the other not-yet-established connection is abandoned.

This suggests that TubConnector.connect has not been called yet, which seems unlikely because the only place a TubConnector is created is in Tub.getBrokerForTubRef, which calls connect() just after the constructor.

09/02/08 21:27:04 changed by warner

  • milestone changed from 0.3.1 to 0.3.2.

Or, more likely, connectorFinished() is being called twice for the same connector. checkForIdle() is called from several different points, so that's the most likely culprit.

I've added some more logging to this, just to record which tubconnector is being dropped. The next time this happens in my tahoe tests, I should be able to track down the double-call.