4 ms·
The issues talked about in the presentation aren't caught at compile time, testing, or canarying, by PostgreSQL. The database "failing" here, according to the p
by euyyn 10y ago
The issues talked about in the presentation aren't caught at compile time, testing, or canarying, by PostgreSQL. The database "failing" here, according to the presentation, meant outages for Uber.
- naasking 10y agoExcept these weren't DB failures, they were very clearly programmer failures. And the OP suggested addressing such programming failures by using more permissive tools. But you don't solve failures by making the systems involved more permissive, you solve problems by making them more strict. If the opposite were true, our most reliable systems would be written in bash or perl.
- euyyn 9y agoTake for example opening processes instead of threads. How would you make that more strict? Spin up a VM each time? Is MySQL wrong in using threads?
- naasking 9y agoStrict vs. permissive has little bearing on this question, but it still isn't a valid problem on Uber's part as it's trivially solved by connection pooling.
- euyyn 9y ago"Trivially solved by <doing some work> instead of not having to do anything if you used MySQL" is precisely the ¯\_(ツ)_/¯ answer that's just a snarky way to ignore constructive criticism.
- naasking 9y agoIs it constructive criticism? Doesn't seem like it to me. It's absurd to suggest that ~20 lines of code in a system of hundreds of thousands of lines amounts to a valid criticism. Only in a world in which all else was equal between Postgres and MySQL would this even remotely be plausible as a criticism. We don't live in that world.
- euyyn 9y agoWhat 20 lines of code, and what has the amount to do with whether the criticism is constructive or not, and valid or invalid? "Doing things this other way would serve us better, for this reason" is constructive criticism by definition. Non-constructive would be "doing things the way you do them is stupid". Responding with ¯\_(ツ)_/¯, with "don't write any bugs lol", or with "just do extra work" is ignoring feedback.