Permalink
Commits on Dec 2, 2016
  1. Add utm query parameters onto links for comments/messages

    Link.tracking_link adds utm query parameters onto links inside reddit
    to track which button was clicked, what component type contains the button
    (e.g. post listing, inbox, post listing embedded on a comments page),
    what page type the user is visiting, and the page's subreddit.
    
    This feature is enabled via feature flag and disabled by admin mode.
    
    This commit affects programmatically-generated links to comments and messages.
    andytuba committed Nov 4, 2016
Commits on Dec 1, 2016
  1. Search: Fix restrict_sr for domains listings and AllMinus

    For domains listings, it was possible to have results from the wrong domain be included.  Switching to a phrase search fixes that.  See https://redd.it/5ew4ve for more info about, and caveats of, this method.
    
    For AllMinus, see https://redd.it/5eqiyy for the general context.  This does not need to be explicitly handled for ModMinus, as ModMinus excludes the filtered subreddits from its sr_ids property.  Additionally, ModMinus doesn't need special handling since it inherits the already-handled MultiReddit.
    Pokechu22 committed with bsimpson63 Nov 25, 2016
Commits on Nov 29, 2016
  1. Mention karma in CANT_CREATE_SR

    The most common, and I really mean it, the most common post in /r/help and related subreddits is when users question why they can't make a subreddit even though they have an old account. The error that users get only mentions account age and does not mention any kind of karma requirement. It's in the /r/help FAQ, but we all know no one reads that.
    
    Just lightly mentioning karma could reduce the traffic on /r/help as well as be more clear.
    allthefoxes committed with kjoconnor Oct 23, 2016
  2. Ads: Remove roadblocks functionality

    These were original to prevent users from buying ads when
    managed campaign page takeovers were in effect.  With auction this
    no longer matters since impressions are no longer guaranteed.
    
    More recently it seems roadblocks were used to prevent people from
    buying ads in places that were inappropriate.  We now have other
    ways of dealing with that (`subreddit.hide_sponsored_headlines and
    `subreddit.allow_ads`) so these pages are completely obsolete.
    dwick committed with wting Jun 13, 2016
Commits on Nov 28, 2016
  1. Remove unused imports.

    wting committed Nov 2, 2016
  2. Remove unused Cassandra Counter.

    wting committed Nov 2, 2016
Commits on Nov 22, 2016
Commits on Nov 14, 2016
  1. Process updates in non-fastlane queue when a link is fastlaned

    Previously the messages in the non-fastlane queue were dropped so some
    older comments would not be added to the CommentTree. There may be some
    lock contention with multiple queue consumers processing updates for the
    fastlaned links, but it shouldn't last very long.
    bsimpson63 committed Aug 9, 2016
  2. Remove live config "precomputed_comment_sort_read_chance"

    This was used to gradually ramp up reads of the precomputed comment
    orders. We've been running for a while with this set to always read,
    so the setting can be removed.
    bsimpson63 committed Aug 8, 2016
  3. _get_qa_comment_scores: Take cid_tree as input

    Previously it wasn't clear that the CommentTree would be looked up and
    that there might be some consistency concerns.
    bsimpson63 committed Jun 28, 2016
  4. write_comment_orders: Add counters to track writes vs. noops

    This will let us get a sense of how much work is actually done. I'm looking
    at splitting the CommentOrderer update out into a separate queue and need
    to understand how many writes actually happen.
    bsimpson63 committed Nov 9, 2016
  5. add_comments: Remove warning about writing scores first

    This warning was no longer true--any missing scores are automatically
    calculated and updated.
    
    We actually have the opposite issue--the CommentTree must be updated
    before writing scores because the QA score reads it.
    bsimpson63 committed Jun 28, 2016
  6. voting: Don't update comment scores on automatic initial vote

    Score updates are processed through commentstree_q. When a new comment
    is created an automatic initial vote (by the comment's author) is created.
    This results in two messages in commentstree_q: one from the vote and one
    from queries.new_comments. Don't create the message from the vote because it
    is redundant. This will let us reduce the volume of messages in commentstree_q
    which is currently very high.
    bsimpson63 committed Nov 10, 2016
  7. feature: Fix race condition when live_config is updated

    Instead of checking _featurestate_cache for a key's existence and then
    retrieving it, just get it and then check for a miss. Doing the two step
    process can result in a KeyError if _featurestate_cache is cleared between
    the existence check and the retrieval.
    bsimpson63 committed Nov 8, 2016
  8. db_manager: Don't setup a connection for some dbs on startup

    "email", "authorize", "hc", and "traffic" databases aren't used that
    often and maybe we can reduce the number of connections to pg-05 by
    waiting to establish a connection until it's actually needed.
    bsimpson63 committed Nov 8, 2016
Commits on Nov 3, 2016
  1. voting: Don't use fastlane vote processor

    The fastlane processor was meant to handle votes on both Links and Comments,
    but it can't do that easily anymore now that the vote processing has been
    split. It's not a big deal now because Link vote processing is much faster
    now that the query updating has been separated and sharded. The Comment vote
    consumer/queue was getting some benefit from the fastlane and it can be
    resurrected if we run into problems.
    bsimpson63 committed Nov 3, 2016
  2. Don't error on unicode in the votestream.

    Change the error from a 500 to a line in the error log with more info about what/why it failed.
    This seems to be the result of someone's crappy votebot.
    KeyserSosa committed with bsimpson63 May 25, 2016
Commits on Nov 1, 2016
  1. Add ability for all oauth tokens to be invalidated on password change

    Add 'revoke_sessions' method to 'POST_update_password'
    KTAtkinson committed Nov 1, 2016
Commits on Oct 26, 2016
  1. link votes: Use a queue to update links by domain queries

    The queue can be sharded by domain to minimize lock contention
    and the consumer will batch updates to the same links (e.g. several
    votes for the same link) and to the same domain (e.g. votes for different
    links to a single domain).
    bsimpson63 committed Oct 17, 2016
  2. link votes: Use a queue to update links by subreddit queries

    The queue can be sharded by subreddit id to minimize lock contention
    and the consumer will batch updates to the same links (e.g. several
    votes for the same link) and to the same subreddit (e.g. votes for different
    links submitted to a single subreddit).
    bsimpson63 committed Oct 17, 2016
  3. link votes: Use a queue to update links by author queries

    The queue can be sharded by author id to minimize lock contention
    and the consumer will batch updates to the same links (e.g. several
    votes for the same link) and to the same author (e.g. votes for different
    links submitted by a single author).
    bsimpson63 committed Oct 17, 2016
  4. Unshard vote_link_q

    bsimpson63 committed Oct 17, 2016
  5. voting: Use separate methods for updating cached queries

    This makes the individual tasks of the consumer more readable.
    bsimpson63 committed Oct 17, 2016
  6. Inline vote processor work

    bsimpson63 committed Oct 12, 2016
  7. Add timings in Link vote processor

    This will help us understand which parts are most time consuming
    and whether we can benefit by breaking up the updates into multiple
    queues.
    bsimpson63 committed Oct 11, 2016