Hacker News new | ask | show | jobs
by notfunk 4514 days ago
interestingly enough, here's the original commit that defaulted `validate=True`:

https://github.com/boto/boto/commit/95939debc3813468264159d5...

EDIT: Looks like the original committer is an Amazon employee.

6 comments

The commit added another parameter so it is possible to skip the expensive get_all_keys call.

It is defaulted to true so that old code that called get_bucket() won't break. (Since old code would have used get_bucket with only one parameter.)

It was always true before that commit.

Therefore, in essence, an Amazon employee made it possible to save 90% of your S3 bills.

Before you jump on the conspiracy train, most Boto contributors are Amazon employees.
Agreed, I doubt Amazon had any evil intentions with this change.

I wonder more if this was a product of Amazon developers using S3 (i.e. dogfooding) and not noticing the cost side effect because I'm assuming they don't get billed?

The change is the opposite of what you're implying, it adds the option to turn it off. Before this commit it was on by default. My guess is, when the option was added, it defaulted to validate=True to maintain backward compatibility.
We actually do get billed, but we don't have to pay. I always check my bill to make sure that I am not using any resources that I don't need.

I also pay for my own personal EC2 instance and about 350 GB of S3 storage. Begin a genuine user and customer of AWS helps me to be a better employee.

Jeff,

You may want to check LIST request statistics over the next few weeks. Between this thread, an Issue for boto, etc. I'm curious if you see a noticeable decline in LIST requests with the attention this has brought. I'm just curious from a data standpoint.

Ahh cool! I completely agree that using your own products from a customer point of makes a better employee. Thanks for the input =)
Mitch just started working for AWS ~1.5 years ago or so I think? That code was written long before he worked for Amazon.
Yeah don't hate on em, Boto folks are pretty helpful.
So the committer added an option to avoid the expensive behavior and that's a sign of evil?
> interestingly enough, here's the original commit that defaulted `validate=True`:

It's a commit which specifically added validate to allow skipping validation. If you read the diff, the call originally unconditionally performed the validation call.

That's a change by the original author of boto. I don't think he was an Amazon employee that far back...
This is a bit easier to read if you ignore whitespace (add ?ws=1 to the end):

https://github.com/boto/boto/commit/95939debc3813468264159d5...