• tonyg@chromium.org's avatar
    Fix sharded perf test host forwarder sharing · 47833e5d
    tonyg@chromium.org authored
    This code is subtle. Since killing the host forwarder is a global operation, it
    keeps a temp file with the shared pid and process start time so that it knows
    whether the forwarder is the correct one that should be shared or a stray one
    that should be killed.
    
    This failed because not all of the sharded perf test processes had the same
    parent pid. This caused the sharded tests to stomp on the global forwarder.
    
    We didn't notice this previously because we only had narrow sharding, and 3
    retries so the flake was papered over. When we added 8-way sharding on
    chromium.perf, the flake rose to the level where it appeared every run.
    
    This patch fixes it by using the process group instead of using the parent
    process ID as a proxy.
    
    BUG=163503
    
    Review URL: https://codereview.chromium.org/391383005
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283683 0039d316-1c4b-4281-b951-d872f2087c98
    47833e5d
forwarder.py 13.3 KB