• 
      

    Add a management command for finding large diffs.

    Review Request #12849 — Created Feb. 26, 2023 and submitted

    Information

    Review Board
    release-5.0.x

    Reviewers

    When diagnosing performance problems in production, we often need
    companies to run a script we provide to scan for large diffs, in order
    to determine if users are uploading massive diffs and slowing down the
    server due to excess repository checks or other issues.

    To simplify this process going forward, Review Board 5.0.3+ will ship
    with a new find-large-diffs management command. This is based on our
    existing script, with a few noticeable differences:

    1. It can scan back a given number of days, instead of or along with an
      ID range.

    2. It tracks the largest diffsets on a review request individually for
      file counts, diff sizes, and parent diff sizes.

    3. It outputs the results in CSV, easing processing. This output also
      includes user IDs, timestamps, and the max sizes and related diffset
      IDs for each category.

    Full documentation is provided in the management commands docs.

    Ran each combination of arguments locally, checking the results and
    comparing it to my database.

    Built the docs and read through them, checking for formatting issues,
    spelling errors, bad links, and build errors.

    Summary ID
    Add a management command for finding large diffs.
    When diagnosing performance problems in production, we often need companies to run a script we provide to scan for large diffs, in order to determine if users are uploading massive diffs and slowing down the server due to excess repository checks or other issues. To simplify this process going forward, Review Board 5.0.3+ will ship with a new `find-large-diffs` management command. This is based on our existing script, with a few noticeable differences: 1. It can scan back a given number of days, instead of or along with an ID range. 2. It tracks the largest diffsets on a review request individually for file counts, diff sizes, and parent diff sizes. 3. It outputs the results in CSV, easing processing. This output also includes user IDs, timestamps, and the max sizes and related diffset IDs for each category. Full documentation is provided in the management commands docs.
    761d9659484af2358ca17711128290bcc9134bc0
    Description From Last Updated

    'typing.Dict' imported but unused Column: 1 Error code: F401

    reviewbotreviewbot
    Checks run (1 failed, 1 succeeded)
    flake8 failed.
    JSHint passed.

    flake8

    david
    1. Once Review Bot is happy, I am too.

    2. 
        
    chipx86
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-5.0.x (f355c91)