The goal here is to reduce network traffic to the main cache nodes.
This will also affect the size of the objects in the cache which could
make things better by fitting more things in cache, or make things worse
by oversubscribing specific slabs. We should watch network traffic on
the cache nodes, hit rates, and eviction rates in the period after
rolling this out. Additionally, this will increase the amount of
gzipping app servers deal with, so response times and CPU should be
monitored as well.
I chose 1400 bytes to be a fudge-factor smaller than the MTU; since the
goal here is network efficiency and not cache memory space, going
smaller than a single packet isn't terribly important.
Performing a row delete (even if some columns are left behind due to higher
timestamps) might have better tombstone performance than deleting specific
columns from that row.
`urllib2` by default doesn't handle protocol-relative urls, nor can it without
access to the context in which the url was created. This has been causing
problems with scraping thumbnails from pages where the `og:image` attribute
uses a protocol-relative url, as reported in reddit/reddit#1069 and
[/r/bugs](http://redd.it/2q62g2).
Now we coerce any protocol-relative urls we extract from the page into the same
protocol as the page itself.
Voting should not be available when a page is in read only or heavy load mode.
This prevents a blank modal from appearing when voting on a post or comment.
This helps with some cache poisoning where we'd end up with www.
links on beta. and vice versa. This also retains existing behaviour
where something like "en.www." == "en.", "en.en." == "en.", and
"json." == ""
Thanks to Nathanael A. Hoyle for the report! Some of these may have
been exploitable due to pointer arithmetic before reads / writes.
Just bail out if we can't allocate.
When the new promo form went from being a normal ajax call to a multipart form, it
stopped using the 'post_pseudo_form' method. That method ignored inputs with the
'gray' class applied, which was being used for displaying the 'optional' placeholder
string. This was probably created before there was widespread support for the
placeholder html attribute.
+ Add horizontal padding to gold-highlighted comments
+ Restore blockquote indent
+ Darken blockquote and del element text
+ Darken blockquote border and hr element
+ Increase font size of reply textarea to match comment font size
+ Fix alignment of messages
+ Restore green text to sent modmail
+ Fix code elements having a much smaller font size in Chrome
+ Increase left spacing on lists to prevent ol list numbers from being cropped.
+ Make code blocks have white background when on non-white backgrounds.
Conflicts:
r2/r2/public/static/css/markdown.less
Add the POST_create_promo endpoint and validator for posting a multipart form. The
form is posted to a hidden iframe on the page, which then relays the jquery response
back to the parent frame.
Currently, if you navigate to the second page of links then change the sort type, you'll
get no results back. This is because it is carrying over the 'after' query param. This
drops the query params for all of the sort options _except_ the one you are currently
on, so that changing it will always kick you back to page 1.
from Dylan:
We haven't used "bids" for 18 months or so, can probably substitute "Spend History" and
"Spend" in place of the two instances of bid. Doesn't really matter for people that are
familiar with the system, but as we bring new people on it may be confusing.
es5-shim only adds polyfills for es5 methods whose behavior can be faithfully
emulated in legacy javascript engines. es5-sham adds stubs and partial support
for additional es5 methods (e.g. Object.freeze) with the goal of preventing
runtime errors.
react-with-addons.js uses some of these methods, and as such breaks on old IE.
The 'shams' work perfectly fine for it.