I was trying to update a dependency in my project. For the third time already! Previous attempts over the couple of months were not successful, as I tried to upgrade too many libraries at once (sometimes it works, ok?). I won't bother you with the details of the previous attempts, short story is that it was breaking transaction isolation in the tests that we achieved via nested transactions. This…
We've got an alert that disk space on a server with a production database is running low. We have a separate partition (and separate physical SSDs) that stores PostgreSQL data ( /var/lib/postgres/ ), so that nothing can interfere with PG, and this partition was running low on free space. Database size was pretty stable at 3.5 TB, but WALs were accumulating and we already had 2+ terabytes of them.…
Despite your expectations I’m going to support that cheesy header with a real talk! Fraudsters will hate you. We have this site with classified ads in Ukraine, OLX and it is completely plagued with spam and fraud. I create an ad to sell something I don’t need anymore, and within a couple of hours I have some stupid fraud in my inbox. What baffles me is that it’s very easy and simple to fix, and…
Some people are not satisfied with a webcam from their notebook or an old webcam they bought many years ago. My brother decided he wants to try streaming. Some people can just do a thing and other people want to research all the bits and pieces beforehand. Our chat history is comparable in length to all my other chats combined, so I learned a lot of it as well. The craft is full with small details…
Because there is a significant shortage of experienced developers on the market and has been for quite some time, you rarely have a queue of great candidates for a newly opened position. It’s common for engineers to groan about irrelevant spammy requests from clueless recruiters on LinkedIn with “We think you can be a great fit for our job opening. You’ll develop our front-end in KubeScript and…
For a long time PostgreSQL supports JSON fields and can even index them. This functionality was added in versions 9.2 and 9.4 that are unsupported now. It's older than the oldest JavaScript frameworks that are still actively used, we can even call it ancient by current standards. I perfectly remember the world where PostgreSQL had no JSON support because 9.2 was released in 2012, and before that,…
I recently wrote on Twitter that we've upgraded our database from PostgreSQL 11 to 12. For context, the size of the database itself is 1.5 TB, biggest table has more than one billion rows and weighs 300+ GB alone, without indexes. Many other tables have 100M+ rows too. The main benefit that I was expecting from new version is REINDEX CONCURRENTLY . We have a couple of places where we do it…
This is a rant mainly about ORM-based migration tools for SQL. Why SQL exactly? I haven't touched MongoDB world for almost a decade now (what a relief). Cassandra never really crossed my way. Any sane team has its own Elasticsearch migration tool that's called "create all indices from scratch", nothing interesting to say here. The only other database I've ever touched is Datomic, and they have…