When I run queries that takes a long time I like to begin writing the next query before the previous one is done.
Normally, when writing e.g. "SELECT my_table." you get a list of columns in that table to make it easier to find the correct one. This is very helpful, but if a query is already running when writing this, the program freeze until the first query is done. I guess this is because it only have one connection and have to wait in line to run the query for the autocomplete.
To un-freeze, you either have to wait for the first query to finish, or kill the first query from another instance or console. When killing the query, HeidiSQL resumes and just gives you an error message. If you wait for the query to finish, it either resumes as normal, gives you an error message or crash. I have not been able to determine what decides what happens, but it may have something to do with how long the query runs.
Not sure how hard this is to fix, but I would be satisfied if the program just didn't try to fetch column names while another query is running.