In TabActivityWatcher, a label_id_ of a tab is updated by:
label_id_ = label_id_ ? label_id_ + 1 : NewInt64ForLabelIdOrQueryId(); If a foregrounded event is logged, then label_id_ is set to 0 and a new one is assigned the next time by (++internal_id_for_logging) << kIdShiftBits; If no foregrounded event is logged between two discarding events, the label_id_ will increase by 1. So if it increases 8192 times, it will collide with another label_id_ generated with (++internal_id_for_logging) << kIdShiftBits; We have seen this occasionally in the logging, and the simplest way to fix this is increase kIdShiftBits a bit (from 13 to 16). Bug: 1049896 Change-Id: Ibbc56ee24ba502433283f53c38946b98a25ac37c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2041837Reviewed-by:Tony Yeoman <tby@chromium.org> Reviewed-by:
François Doray <fdoray@chromium.org> Reviewed-by:
Charles . <charleszhao@chromium.org> Commit-Queue: Charles . <charleszhao@chromium.org> Cr-Commit-Position: refs/heads/master@{#740096}
Showing
Please register or sign in to comment