Ssssssssssssssssssssslllllllllllloooooooooooooowwwwwwwwwwww
mdruiter opened this issue · 4 comments
I have an instance with lots of databases, one of which with 137 different schemas containing hundreds of tables each. Expanding Tables takes a loooooong time: I gave up after a few minutes. I had to kill SSMS as it just froze (Not Responding) after a while.
For databases where this does work it is of huge value!
Yeah. I have a database where it would take a few seconds so I have looked at the performance before. The larger a TreeView gets the slower it is to move Nodes around. I made the decision to use the faster method which makes the UI unresponsive. I didn't think about really large databases.
I've had another look at it and attached is a non blocking version. It is a bit slower but you can still use it while it takes a minute to move 40,000 tables. Don't forget to unblock the zip file before extracting.
SSMS Schema Folders.zip
I will merge it with some other changes and do a proper release later.
That helps, thanks!
Still really slow though. I would expect there's a way to move stuff in batch, without interface updates along the way. Maybe that could further speed things up.
Having over 130000 tables in one database is rare perhaps. But grouping by schema is extra useful then!
SSMS Schema Folders.zip This version has some options to control the performance.
Quick schema will save you about 1 second per 10,000 nodes. It looks for the first dot in the node text. If your schemas contain dots then it won't group correctly.
Node clear is faster but will freeze while it is running. To clear 40,000 nodes takes about 20 seconds, then to add the schema nodes only a few seconds.
The defaults for when both of these settings become enable is 20,000 nodes. You can change it to find what works best for you.
Thanks. It takes a while but it does work. I might play a bit!