Solved

SQLVDI & max thread counts, limitation or issue w/SQL 2005 server native backups or ALL backups including image based?

Posted on 2010-09-18
10
621 Views
Last Modified: 2012-08-14
the issue is with an eventID 1, Source=SQLVDI.   it appears that the scheduled backups 'may' be the root cause of the SQL error "Limit on 'Max worker threads' reached" which prevents further client connections.
there are approx 129 databases on a 32bit win2003R2 SP2.

we are trying to determine if SQLVDI is used solely by the native SQL server backup, ntbackup or even any 3rd party backup that does not used a SQL agent ans is image based.

we also have received feedback with the following as possible solutions:

1. stagger the backups by splitting them up into multiple jobs. though this approach is not feasible as we ontinue to add databases to the Sql Server and the maintnance of the staggering process will be difficult to keep track of.
2. move to 64-bit Sql Server where we'l' have upwards of 500 worker threads depending on the configuration
3. increase max worker threads setting for the current configuration. each worker thread will need 0.5 MB for its thread stack and by increasing this number we will be reducing memory from the buffer pool.

ultimately the objective is to prevent further SQLVDI event IDs and prevent "Limit on 'Max worker threads' reached" errors.

unless there is a major draw back, we will also consider switching from native SQL backups to an image based only backup.

SQL Server ver 9.0.4035

thank you.
0
Comment
Question by:rastafaray
  • 5
  • 5
10 Comments
 
LVL 7

Expert Comment

by:wittyslogan
ID: 33746181
I know this is obscure but I once had problems with worker threads which came down to having exactly 613 jobs  on the server.  We cured this by adding a job so there were 614.  It is probably not this but just in case.
0
 

Author Comment

by:rastafaray
ID: 33749526
nice :)  TY for taking the time to respond wittyslogan
0
 
LVL 7

Expert Comment

by:wittyslogan
ID: 33752122
that problem with staggering.  You can set up a maintenance plan for a database.  At the end of the maintenenance plan you can then say "kick off another sql job"  It's a componenet on the maintenance plan gui.  
0
 

Author Comment

by:rastafaray
ID: 33756549
interesting TY wittyslogan.  may be the best workaround on this issue
0
 

Author Comment

by:rastafaray
ID: 33756562
the only problem is that we will need a wait time before the next SQL job is kicked off, will this be possible?
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 7

Expert Comment

by:wittyslogan
ID: 33768025
you could put a sql step which counts up to certain time.  

What would the delay be for?
0
 

Accepted Solution

by:
rastafaray earned 0 total points
ID: 33804110
just an update...

msft considers this as a known issue.  they are investigating possible solutions.

will keep you posted.

TY all
0
 
LVL 7

Expert Comment

by:wittyslogan
ID: 33805779
by the way if you need to delay use the waitfor syntax:

http://msdn.microsoft.com/en-us/library/ms187331(SQL.90).aspx

cheers
0
 

Author Comment

by:rastafaray
ID: 33944301
hi wittyslogan

not sure how waitfor can be applied to this Q.

ty for the feedback
0
 
LVL 7

Expert Comment

by:wittyslogan
ID: 33945766
Add a step to your job before the "start another sql job step" containing the wait for step.  That should do it.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Slowly Changing Dimension Transformation component in data task flow is very useful for us to manage and control how data changes in SSIS.
Ever wondered why sometimes your SQL Server is slow or unresponsive with connections spiking up but by the time you go in, all is well? The following article will show you how to install and configure a SQL job that will send you email alerts includ…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Using examples as well as descriptions, and references to Books Online, show the documentation available for datatypes, explain the available data types and show how data can be passed into and out of variables.

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now