Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ssssssssssssssssssssslllllllllllloooooooooooooowwwwwwwwwwww #22

Closed
mdruiter opened this issue May 25, 2021 · 4 comments
Closed

Ssssssssssssssssssssslllllllllllloooooooooooooowwwwwwwwwwww #22

mdruiter opened this issue May 25, 2021 · 4 comments

Comments

@mdruiter
Copy link

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!

@nicholas-ross
Copy link
Owner

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.

@mdruiter
Copy link
Author

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!

@nicholas-ross
Copy link
Owner

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.

@mdruiter
Copy link
Author

Thanks. It takes a while but it does work. I might play a bit!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants