New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 702909 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug



Sign in to add a comment

QuicSession not cleaned up in QuicStreamFactory::all_sessions_ map

Project Member Reported by zhongyi@chromium.org, Mar 18 2017

Issue description

Chrome Version: 59.0.3045.0 (Official Build) canary (64-bit)
OS: Mac OS X

Was in the middle of investigating the other issue. Happen to notice that QuicChromiumClientSession received PUBLIC RESET from the server, got removed from active_sessions_. However, it seems never gets deleted from the all_sessions_ map. 

Although this shouldn't happen in the code:
QuicChromiumClientSession::OnConnectionClosed was called (as we have the NetLogEvent:QUIC_SESSION_CLOSED). The session called factory to process its going away, which removed the session from active_sessions_ map NotifyFactoryOfSessionGoingAway; and post a task to notify the factory to delete it from all_sessions_ map in NotifyFactoryOfSessionClosed. For some reason, the last step is not happening. 
 
net-internals-quic-session-cleanup.json
12.6 MB View Download

Comment 1 Deleted

This might NOT be directly related to this bug, I also grabbed a NetLog with my local build Chrome which has more NetLogs for debugging.

Reading logs from ID 21504 to 21510, the QuicStreamFactory::Job is deleted in the callback(QuicStreamFactory::OnJobComplete) run, which should be in QuicChromiumClientSession::OnConnectionClosed. 

This indicate we have a STATE: that a server will have entry in active_sessions_, active_jobs_, and all_sessions_. 
net-internals-log (2).json
8.8 MB View Download
I took it back, the session are removed. It's the NetLog not closed properly. 


Comment 4 by rch@chromium.org, Mar 20 2017

*whew* Good sleuthing! Shall we WONTFIX this?
Status: WontFix (was: Untriaged)
Project Member

Comment 6 by bugdroid1@chromium.org, Mar 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/27f1087519767c5ba6e57fae028435f4063f1bbe

commit 27f1087519767c5ba6e57fae028435f4063f1bbe
Author: zhongyi <zhongyi@chromium.org>
Date: Tue Mar 21 02:36:14 2017

Fix the NetLog to add end event for QUIC_SESSION in
QuicChromiumClientSession destructor so that QUIC_SESSION will not be
marked as active when the session is deleted.

BUG= 702909 

Review-Url: https://codereview.chromium.org/2761053002
Cr-Commit-Position: refs/heads/master@{#458284}

[modify] https://crrev.com/27f1087519767c5ba6e57fae028435f4063f1bbe/net/quic/chromium/quic_chromium_client_session.cc

Sign in to add a comment