Showing posts with label transaction. Show all posts
Showing posts with label transaction. Show all posts

Friday, March 30, 2012

pros and cons of using transaction replication doing initialization from database backups

I am using transaction replication between a transaction and reporting database server. When I use a snapshot to initialize my subscribers, I currently get a lot of deadlocks during the snapshot creation. I am considering using a database backup instead. Can anyone tells me how to reduce the table locks that I am getting during snapshot creation or advice on using database backups?

Hi,

Transactional replication provides several different sync method to help alleviate locking issue on publication DB. You can take a look at @.sync_method in sp_addpublication (http://msdn2.microsoft.com/en-us/library/ms188738.aspx).

You can try with concurrent/concurrent_c. And if you are using SQL 2005 SP2 and you are using enterprise edition, you can also use "database snapshot/database snapshot character". Snapshot agent creates a DB snapshot on the publication DB and then generates replication snapshot based on the DB snapshot. So it significantly reduces the possiblities of deadlocking on the publication DB.

Peng

Wednesday, March 7, 2012

Programmatically checking whether Integration service is running or not

I am building an application that uses .NET 2.0 transaction feature. Since .NET 2.0 transaction model uses SQL Server 2005 Integration services for its operation, I want to check from my application (.NET 2.0 code) whether the Integration service is running on SQL box or not? Is there a way in which we can accomplish this task?

Prashant

You can query the SSIS service with the GetRunningPackages method to get the packages running on a server.

http://msdn2.microsoft.com/en-us/library/microsoft.sqlserver.dts.runtime.application.getrunningpackages.aspx
|||Using GetRunningPackages is perhaps not quite the same as saying is the windows service running, which seemed to be the original question. The fact that the service supports that method would probably allow you to infer that result, but maybe you would want to find out more about the service or control it, in which case have a look at the System.ServiceProcess.ServiceController class. The System.ServiceProcess namespace contains classes for manging Windows Services, not anything specific to SSIS.