Then we shipped a release which included a migration. The lock prevented the migration from happening and it took us 30 minutes (of downtime!) to figure out that it was my DBeaver client holding a table hostage. I closed the app and a few seconds later the migration was done and we were up.
Now, obviously this was noobness on my part, somehow, but iirc there was no clear indication in the UI that there was an uncommitted transaction going on or anything like that. I'm sure the problem was between keyboard and chair, but I never dared touch DBeaver after that.
In addition, I like that the main sidebar shows everything properly categorized and as a tree with collapsing nodes, i.e. servers > databases > schemas > tables, views, materialized views, functions, etc… > columns, constraints, foreign keys, indexes, triggers, partitions, dependencies, references, etc.
Finally, the support is great. I reported some bugs on GitHub and they all have been fixed on the next release, like 1 or 2 weeks after the report.
It was slow on my old Mac, but since I switched to a M1 I have no complaints.