Make it faster!!!! Improve Performance!!!
Oog, each commit is like five minutes. Neither standard commits of source code (same SVN server) nor redgate SQL Compare actions (same local database server) take that long!
Keywords: Performance, Speed, Fast
Improve the speed and reliability. Use the same engine as your compare tools, which are very fast. TFS integration is very slow. Your last version was faster too. The new and fancy animation on the logo is nice, but I would trade it for a rollback.
Calculating changes for large databases is very slow
600+ tables (270+ static) and 2600+ procs means that "Determining latest version" takes longer than allowable to resolve. I literally let this run and went for a 15 minute walk and it did not finish. Please work on scalability for large databases or I cannot recommend this for purchase.
We have been doing a lot of work on SQL Source Control lately. We’ve recently improved performance when you link a database, go to the commit and get latest tabs (especially subsequent visits where we can rely on data being cached), and when selecting/deselecting all on the commit and get latest tabs.
If you are still experiencing performance problems, please make a new suggestion that is very specific to what you would like us to work on. Is it a specific step in the commit process that is taking a long time? Is it viewing history that is taking a long time?
We’ve also started to work on this suggestion, Don’t refresh the commit/get latest automatically, https://redgate.uservoice.com/forums/39019-sql-source-control/suggestions/462220-don-t-refresh-the-commit-get-latest-automatically, which will also help with performance.
Contact firstname.lastname@example.org if you can share your database schema with us for performance testing purposes.
If you are experiencing problems with server load, please see http://documentation.red-gate.com/display/SOC33/Changing+or+disabling+the+database+polling+interval. Contact email@example.com if you have any questions about this.
SQL Source Control Product Manager
Dathan Liblik commented
We love this product theoretically, but the performance is spectacularly bad in not one, but all of: speed (5-6 minutes per sync), memory consumption (GBs), TFS traffic (high), reliability (crashes SSMS all the time), data integrity (at least once a month we have to manually do a file-based check-in to rectify some confusion in the sync that then leaves the product unusable until the check-in is manually resolved).
I don't want to be negative, but this is such an outlier to normal red gate quality, and your premium prices mean you should have a stellar tool with maybe an occasional bug. This is two years running now. What could be more important?
Red gate - get on this. It's a major blemish to your otherwise excellent standards. Please.
In order to improve performance, you need to change the base algorithm. If you stick with current logic and compare everything every time - this product will never work as expected and will even be unusable on db's with fair amount of objects. You should compare only what is changed since the last sync. modify_date in sys.objects is your friend!
Ben Sproat commented
How about an update on this? 3.1 is out and the product is still unusable for one of our primary databases. The commit tab takes upwards of 20 minutes to come up if it doesn't time out first. It only ever works once or twice and only if that is the only database we have linked. After the 1st or second refresh we run out of memory. If i have to work in that database i load it up on a separate machine click the commit tab and go do something else for a while on my normal machine and hope it actually gives me results. If it fails reboot and try again.
We find that after installing and using SQL Source Control, latest version, we routinely get out of memory exceptions in management studio. The only solution is to close and re-open management studio.
Also, I get very high tempdb usage for my sessions on the db side when I'm using SQL Source Control. The usage can be as high as 8 GB. It is quite ridiculous. This stays in use until I close and re-open management studio.
As for performance, we have one db that is around 120 GB with hundreds of sprocs and hundreds of tables, and it is painfully slow in SSC. However, we have another db that is over 200 GB with an equally large number of tables and sprocs, and it is quite fast. The database server versions are the same, and the db compatibility level is the same.
Jason Kochel commented
Same issue. What I don't understand is that the object explorer tree shows the blue dots next to the changed objects (so it's tracking in the background) but when I go to 'Commit Changes' it takes a long time to offer the list of changed objects.
'Get Latest' is even worse. Perhaps it's because I'm using Mercurial? I'll 'hg update' to a particular branch (which updates the SSC-created .sql files on my local drive), but when I 'Get Latest', it seems like it's going back to Mercurial or maybe scanning the entire directory (~7500 objects) to see what's new.
Seems like a lot of Mercurial users on this site. Perhaps a more native integration is possible?
Same problem, performance is a problem. We do not have really big db, around 200 tables, ~90 sp and ~50 views. Takes more than 2 min just on "registering working database", then 2-3min more for 3st steps and then around 3-4min on the last "calculating changes. Doing this at least 3 times/day and with 4 developers so need to to updated and commits is annoying
We have about 7800 objects in our primary DB currently under source control. Right now I have a SSMS instance open with 40+ tabs open that is using about 65 MB of memory, I have a second instance of SSMS open exclusively to use SQL Source Control, while only sitting Idle, it is using 1.2 GIGABYTES of memory! Many times when I try to do a Commit, or on a Refresh of the SSC window, it will throw a Out of Memory Error. Not to mention being painfully slow (5-15 minutes, if it goes the distance without crashing) to Commit or Refresh. My initial impression was good, as it has many useful features. I even recommended initially that we purchase a 5 user license to our CTO. However, since there doesn't seem to be a solution or workaround for the excessive resource usage, the Out of Memory Errors, or a way to decrease the amount of time needed to do a commit or refresh, I am changing my recommendation pending a viable solution.
Ritesh Narain commented
We are just evaluating and the performance is a show stopper. Functionality looks great, I just hope it can improve before we make a purchasing decision
We have a relatively small database and it is painfully slow. As soon as I open management studio now I watch my memory usage go sky high. prior to installing Source Control it was not problem. I sent them our DB....had a few emails back and forth and now they won't even respond to my support ticket. I was such a cheerleader for these guys and now I get the cold shoulder. We bought Compare/Data Compare/Source Control. If the performance doesn't change I'll have to ask for a refund. What a bummer.
AdminDavid Atkinson (Admin, Red Gate) commented
Thanks for the feedback. Is it the refresh on the Commit tab that is slow for you? How slow is it exactly? We certainly hope to make improvements in this area. We're considering having the ability to do some of the work in the background, rather than forcing you to wait for the full duration.
We have 1300 stored procedures and 560 tables, and SQL Source control can be painfully slow sometimes. Sometimes it is extremely fast, so it is hard to diagnose what is happening. We have fast internet connection to SVN server (10 mbps minimum)
But its fast enough that we use it daily. Our machines are new Core i5 8GB ram machines so I don't know where the bottleneck is.
Rui Ferreira commented
with large databases SQL Source Control is slow. it needs to be improved...
I'm quite surprised that there are so few comments on this issue. Are people satisfied with the current performance of SSC? Even a relatively small database takes around 30 seconds to show / verify changes. A couple times per day and that's some serious time wasted over the course of the week for a group of developers.
WT Jones commented
Are there any updates on this? The polling frequency fix won't solve the real issue for us.
Could you add in a mode that uses DDL triggers to mark recently changed objects? In theory the commit screen would be blazing fast and scale with many objects.
Younes Abesi commented
It takes 10 minutes for me, it is unacceptable. I need to be able to unlink and link to that database in different folders fast.
We have db of 20 000 objects. Single object check-in takes about 4-5 minutes. That makes this product unusable for us.
Admins, please merge all the topics complaining about performance into one and sum their votes! Because we have like 5 topics about the same thing (slow commit), each on about 20th place because voices are scattered to topics that are dealing with the same thing: performance.
We hame database with ove 20 000 objects, moslty stored procedures. Commit of a single (one!) procedure takes about 4-5 minutes! Unfortunately, that makes SQL Compare unusable product for us.
It is imperative not to compare all objects when you just want to check-in one object. How to do that - that's another story, but it is very possible, not even too difficult.
Another thing, please merge all topics about performance: "1012201-make-it-faster-", "461789-performance-with-800-objects", "802985-use-sys-objects-create-modify-date-to-get-new-chan" and sum their votes, because they are all about the same thing.
Dear admins, please merge topics about slow performance: "1012201-make-it-faster-", "461789-performance-with-800-objects", "802985-use-sys-objects-create-modify-date-to-get-new-chan" and sum votes for all of them. Thanks!
Shrini Viswanathan commented
We have over 1612 procedures, over 250 tables, over 470 views and guess what, it takes over 15 to 30 minutes to check in one object in SQL. I really wish I can select a single object and simply verify/check-in against SVN. Even though I am requesting a simple action, it is comparing all the objects. It is lot faster for me to take the alter and manually check-in.
I am having the same problems with my large db.